Author: tfaber Date: Sat Feb 21 17:47:57 2015 New Revision: 66394
URL: http://svn.reactos.org/svn/reactos?rev=66394&view=rev Log: [DESK.CPL] - Load wallpapers using GDI+ and convert them to bitmap format as needed. We now support PNG and JPEG (and more) wallpapers! Patch by Ricardo Hanke, small modifications by me. CORE-8802 #resolve
Modified: trunk/reactos/dll/cpl/desk/CMakeLists.txt trunk/reactos/dll/cpl/desk/background.c trunk/reactos/dll/cpl/desk/desk.h trunk/reactos/dll/cpl/desk/dibitmap.c trunk/reactos/dll/cpl/desk/lang/bg-BG.rc trunk/reactos/dll/cpl/desk/lang/cs-CZ.rc trunk/reactos/dll/cpl/desk/lang/de-DE.rc trunk/reactos/dll/cpl/desk/lang/el-GR.rc trunk/reactos/dll/cpl/desk/lang/en-US.rc trunk/reactos/dll/cpl/desk/lang/es-ES.rc trunk/reactos/dll/cpl/desk/lang/fr-FR.rc trunk/reactos/dll/cpl/desk/lang/he-IL.rc trunk/reactos/dll/cpl/desk/lang/hu-HU.rc trunk/reactos/dll/cpl/desk/lang/id-ID.rc trunk/reactos/dll/cpl/desk/lang/it-IT.rc trunk/reactos/dll/cpl/desk/lang/ja-JP.rc trunk/reactos/dll/cpl/desk/lang/nl-NL.rc trunk/reactos/dll/cpl/desk/lang/no-NO.rc trunk/reactos/dll/cpl/desk/lang/pl-PL.rc trunk/reactos/dll/cpl/desk/lang/ro-RO.rc trunk/reactos/dll/cpl/desk/lang/ru-RU.rc trunk/reactos/dll/cpl/desk/lang/sk-SK.rc trunk/reactos/dll/cpl/desk/lang/sq-AL.rc trunk/reactos/dll/cpl/desk/lang/sv-SE.rc trunk/reactos/dll/cpl/desk/lang/tr-TR.rc trunk/reactos/dll/cpl/desk/lang/uk-UA.rc trunk/reactos/dll/cpl/desk/lang/zh-CN.rc trunk/reactos/dll/cpl/desk/resource.h
Modified: trunk/reactos/dll/cpl/desk/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/CMakeLists.txt... ============================================================================== --- trunk/reactos/dll/cpl/desk/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/CMakeLists.txt [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -30,6 +30,6 @@
set_module_type(desk cpl UNICODE) target_link_libraries(desk uuid) -add_importlibs(desk user32 advapi32 gdi32 comctl32 comdlg32 ole32 setupapi shell32 shlwapi uxtheme msvcrt kernel32 ntdll) +add_importlibs(desk user32 advapi32 gdi32 comctl32 comdlg32 ole32 setupapi shell32 shlwapi uxtheme gdiplus msvcrt kernel32 ntdll) add_pch(desk desk.h SOURCE) add_cd_file(TARGET desk DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/dll/cpl/desk/background.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/background.c?r... ============================================================================== --- trunk/reactos/dll/cpl/desk/background.c [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/background.c [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -58,9 +58,109 @@ HBITMAP hBitmap; int cxSource; int cySource; + + ULONG_PTR gdipToken; } DATA, *PDATA;
GLOBAL_DATA g_GlobalData; + + +HRESULT +GdipGetEncoderClsid(PCWSTR MimeType, CLSID *pClsid) +{ + UINT num; + UINT size; + UINT i; + ImageCodecInfo *codecInfo; + + if (GdipGetImageEncodersSize(&num, &size) != Ok || + size == 0) + { + return E_FAIL; + } + + codecInfo = HeapAlloc(GetProcessHeap(), 0, size); + if (!codecInfo) + { + return E_OUTOFMEMORY; + } + + if (GdipGetImageEncoders(num, size, codecInfo) != Ok) + { + HeapFree(GetProcessHeap(), 0, codecInfo); + return E_FAIL; + } + + for (i = 0; i < num; i++) + { + if (!_wcsicmp(codecInfo[i].MimeType, MimeType)) + { + *pClsid = codecInfo[i].Clsid; + HeapFree(GetProcessHeap(), 0, codecInfo); + return S_OK; + } + } + + HeapFree(GetProcessHeap(), 0, codecInfo); + return E_FAIL; +} + + +LPWSTR +GdipGetSupportedFileExtensions(VOID) +{ + ImageCodecInfo *codecInfo; + UINT num; + UINT size; + UINT i; + LPWSTR lpBuffer = NULL; + + if (GdipGetImageDecodersSize(&num, &size) != Ok || + size == 0) + { + return NULL; + } + + codecInfo = HeapAlloc(GetProcessHeap(), 0, size); + if (!codecInfo) + { + return NULL; + } + + if (GdipGetImageDecoders(num, size, codecInfo) != Ok) + { + HeapFree(GetProcessHeap(), 0, codecInfo); + return NULL; + } + + size = 0; + for (i = 0; i < num; ++i) + { + size = size + wcslen(codecInfo[i].FilenameExtension) + 1; + } + + size = (size + 1) * sizeof(WCHAR); + + lpBuffer = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, size); + if (!lpBuffer) + { + HeapFree(GetProcessHeap(), 0, codecInfo); + return NULL; + } + + for (i = 0; i < num; ++i) + { + StringCbCatW(lpBuffer, size, codecInfo[i].FilenameExtension); + if (i < (num - 1)) + { + StringCbCatW(lpBuffer, size, L";"); + } + } + + HeapFree(GetProcessHeap(), 0, codecInfo); + + return lpBuffer; +}
/* Add the images in the C:\ReactOS directory and the current wallpaper if any */ @@ -70,7 +170,7 @@ WIN32_FIND_DATA fd; HANDLE hFind; TCHAR szSearchPath[MAX_PATH]; - TCHAR szFileTypes[MAX_PATH]; + LPTSTR szFileTypes = NULL; LV_ITEM listItem; LV_COLUMN dummy; RECT clientRect; @@ -119,7 +219,7 @@ listItem.lParam = pData->listViewItemCount;
(void)ListView_InsertItem(hwndBackgroundList, &listItem); - ListView_SetItemState(hwndBackgroundList, + ListView_SetItemState(hwndBackgroundList, pData->listViewItemCount, LVIS_SELECTED, LVIS_SELECTED); @@ -224,19 +324,30 @@
/* Add all the images in the C:\ReactOS directory. */
- LoadString(hApplet, IDS_SUPPORTED_EXT, szFileTypes, sizeof(szFileTypes) / sizeof(TCHAR)); + szFileTypes = GdipGetSupportedFileExtensions(); + if (!szFileTypes) + { + return; + }
token = _tcstok(szFileTypes, separators); while (token != NULL) { GetWindowsDirectory(szSearchPath, MAX_PATH); - + hr = StringCbCat(szSearchPath, sizeof(szSearchPath), TEXT("\")); if (FAILED(hr)) + { + HeapFree(GetProcessHeap(), 0, szFileTypes); return; + } + hr = StringCbCat(szSearchPath, sizeof(szSearchPath), token); if (FAILED(hr)) + { + HeapFree(GetProcessHeap(), 0, szFileTypes); return; + }
hFind = FindFirstFile(szSearchPath, &fd); while (hFind != INVALID_HANDLE_VALUE) @@ -249,12 +360,14 @@ if (FAILED(hr)) { FindClose(hFind); + HeapFree(GetProcessHeap(), 0, szFileTypes); return; } hr = StringCbCat(filename, sizeof(filename), fd.cFileName); if (FAILED(hr)) { FindClose(hFind); + HeapFree(GetProcessHeap(), 0, szFileTypes); return; }
@@ -284,6 +397,7 @@ if (FAILED(hr)) { FindClose(hFind); + HeapFree(GetProcessHeap(), 0, szFileTypes); return; } p = _tcsrchr(backgroundItem->szDisplayName, _T('.')); @@ -293,6 +407,7 @@ if (FAILED(hr)) { FindClose(hFind); + HeapFree(GetProcessHeap(), 0, szFileTypes); return; }
@@ -316,6 +431,8 @@ token = _tcstok(NULL, separators); FindClose(hFind); } + + HeapFree(GetProcessHeap(), 0, szFileTypes); }
@@ -488,13 +605,19 @@ OPENFILENAME ofn; TCHAR filename[MAX_PATH]; TCHAR fileTitle[256]; - TCHAR filter[MAX_PATH]; + LPTSTR filter; + LPTSTR extensions; BackgroundItem *backgroundItem = NULL; SHFILEINFO sfi; LV_ITEM listItem; HWND hwndBackgroundList; TCHAR *p; HRESULT hr; + TCHAR filterdesc[MAX_PATH]; + TCHAR *c; + UINT sizeRemain; + DWORD buffersize; + BOOL success;
hwndBackgroundList = GetDlgItem(hwndDlg, IDC_BACKGROUND_LIST);
@@ -504,7 +627,44 @@ ofn.hwndOwner = hwndDlg; ofn.lpstrFile = filename;
- LoadString(hApplet, IDS_BACKGROUND_COMDLG_FILTER, filter, sizeof(filter) / sizeof(TCHAR)); + LoadString(hApplet, IDS_BACKGROUND_COMDLG_FILTER, filterdesc, sizeof(filterdesc) / sizeof(TCHAR)); + + extensions = GdipGetSupportedFileExtensions(); + if (!extensions) + { + return; + } + + buffersize = (_tcslen(extensions) * 2 + 6) * sizeof(TCHAR) + sizeof(filterdesc); + + filter = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, buffersize); + if (!filter) + { + HeapFree(GetProcessHeap(), 0, extensions); + return; + } + + sizeRemain = buffersize; + c = filter; + + if (FAILED(StringCbPrintfEx(c, sizeRemain, &c, &sizeRemain, 0, L"%ls (%ls)", filterdesc, extensions))) + { + HeapFree(GetProcessHeap(), 0, extensions); + HeapFree(GetProcessHeap(), 0, filter); + return; + } + + c++; + sizeRemain -= sizeof(*c); + + if (FAILED(StringCbPrintfEx(c, sizeRemain, &c, &sizeRemain, 0, L"%ls", extensions))) + { + HeapFree(GetProcessHeap(), 0, extensions); + HeapFree(GetProcessHeap(), 0, filter); + return; + } + + HeapFree(GetProcessHeap(), 0, extensions);
/* Set lpstrFile[0] to '\0' so that GetOpenFileName does not * use the contents of szFile to initialize itself */ @@ -517,7 +677,10 @@ ofn.lpstrInitialDir = NULL; ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
- if (GetOpenFileName(&ofn) == TRUE) + success = GetOpenFileName(&ofn); + HeapFree(GetProcessHeap(), 0, filter); + + if (success) { /* Check if there is already a entry that holds this filename */ if (CheckListViewFilenameExists(hwndBackgroundList, ofn.lpstrFileTitle) == TRUE) @@ -747,6 +910,22 @@ SetWallpaper(PDATA pData) { HKEY regKey; + TCHAR szWallpaper[MAX_PATH]; + GpImage *image; + CLSID encoderClsid; + size_t length = 0; + GpStatus status; + + + if (FAILED(SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, szWallpaper))) + { + return; + } + + if (FAILED(StringCbCat(szWallpaper, MAX_PATH, TEXT("\Wallpaper1.bmp")))) + { + return; + }
RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Control Panel\Desktop"), 0, KEY_ALL_ACCESS, ®Key);
@@ -768,19 +947,50 @@ RegSetValueEx(regKey, TEXT("WallpaperStyle"), 0, REG_SZ, (BYTE *)TEXT("2"), sizeof(TCHAR) * 2); }
+ if (pData->backgroundItems[pData->backgroundSelection].bWallpaper == TRUE) + { + GdipLoadImageFromFile(pData->backgroundItems[pData->backgroundSelection].szFilename, &image); + if (!image) + { + RegCloseKey(regKey); + return; + } + + if (FAILED(GdipGetEncoderClsid(L"image/bmp", &encoderClsid))) + { + GdipDisposeImage(image); + RegCloseKey(regKey); + return; + } + + status = GdipSaveImageToFile(image, szWallpaper, &encoderClsid, NULL); + + GdipDisposeImage(image); + + if (status != Ok) + { + RegCloseKey(regKey); + return; + } + + if (SUCCEEDED(StringCchLength(pData->backgroundItems[pData->backgroundSelection].szFilename, MAX_PATH, &length))) + { + RegSetValueEx(regKey, TEXT("ConvertedWallpaper"), 0, REG_SZ, (BYTE*)pData->backgroundItems[pData->backgroundSelection].szFilename, (length + 1) * sizeof(TCHAR)); + } + + if (SUCCEEDED(StringCchLength(szWallpaper, MAX_PATH, &length))) + { + RegSetValueEx(regKey, TEXT("OriginalWallpaper"), 0, REG_SZ, (BYTE *)szWallpaper, (length + 1) * sizeof(TCHAR)); + } + + SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, szWallpaper, SPIF_UPDATEINIFILE); + } + else + { + SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (void*) TEXT(""), SPIF_UPDATEINIFILE); + } + RegCloseKey(regKey); - - if (pData->backgroundItems[pData->backgroundSelection].bWallpaper == TRUE) - { - SystemParametersInfo(SPI_SETDESKWALLPAPER, - 0, - pData->backgroundItems[pData->backgroundSelection].szFilename, - SPIF_UPDATEINIFILE); - } - else - { - SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (void*) TEXT(""), SPIF_UPDATEINIFILE); - } }
@@ -821,6 +1031,7 @@ LPARAM lParam) { PDATA pData; + struct GdiplusStartupInput gdipStartup;
pData = (PDATA)GetWindowLongPtr(hwndDlg, DWLP_USER);
@@ -829,6 +1040,11 @@ case WM_INITDIALOG: pData = (DATA*) HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(DATA)); SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pData); + gdipStartup.GdiplusVersion = 1; + gdipStartup.DebugEventCallback = NULL; + gdipStartup.SuppressBackgroundThread = FALSE; + gdipStartup.SuppressExternalCodecs = FALSE; + GdiplusStartup(&pData->gdipToken, &gdipStartup, NULL); InitBackgroundDialog(hwndDlg, pData); break;
@@ -908,6 +1124,7 @@ DibFreeImage(pData->pWallpaperBitmap);
DeleteObject(pData->hBitmap); + GdiplusShutdown(pData->gdipToken); HeapFree(GetProcessHeap(), 0, pData); break; }
Modified: trunk/reactos/dll/cpl/desk/desk.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/desk.h?rev=663... ============================================================================== --- trunk/reactos/dll/cpl/desk/desk.h [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/desk.h [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -23,6 +23,7 @@ #include <regstr.h> #include <dll/desk/deskcplx.h> #include <strsafe.h> +#include <gdiplus.h>
#include "appearance.h" #include "preview.h" @@ -41,11 +42,10 @@
typedef struct _DIBITMAP { - BITMAPFILEHEADER *header; BITMAPINFO *info; BYTE *bits; - int width; - int height; + UINT width; + UINT height; } DIBITMAP, *PDIBITMAP;
extern HINSTANCE hApplet;
Modified: trunk/reactos/dll/cpl/desk/dibitmap.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/dibitmap.c?rev... ============================================================================== --- trunk/reactos/dll/cpl/desk/dibitmap.c [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/dibitmap.c [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -12,71 +12,75 @@ PDIBITMAP DibLoadImage(LPTSTR lpFilename) { - BOOL bSuccess; - DWORD dwFileSize, dwHighSize, dwBytesRead; - HANDLE hFile; PDIBITMAP lpBitmap; + GpBitmap *bitmap; + BitmapData lock;
- hFile = CreateFile(lpFilename, - GENERIC_READ, - FILE_SHARE_READ, - NULL, - OPEN_EXISTING, - FILE_FLAG_SEQUENTIAL_SCAN, - NULL); - if (hFile == INVALID_HANDLE_VALUE) - return NULL; - - dwFileSize = GetFileSize(hFile, &dwHighSize); - - if (dwHighSize) + if (GdipCreateBitmapFromFile(lpFilename, &bitmap) != Ok) { - CloseHandle(hFile); return NULL; }
lpBitmap = HeapAlloc(GetProcessHeap(), 0, sizeof(DIBITMAP)); if (lpBitmap == NULL) { - CloseHandle(hFile); + GdipDisposeImage((GpImage*)bitmap); return NULL; }
- lpBitmap->header = HeapAlloc(GetProcessHeap(), 0, dwFileSize); - if (lpBitmap->header == NULL) + lpBitmap->info = HeapAlloc(GetProcessHeap(), 0, sizeof(BITMAPINFO)); + if (lpBitmap->info == NULL) { HeapFree(GetProcessHeap(), 0, lpBitmap); - CloseHandle(hFile); + GdipDisposeImage((GpImage*)bitmap); return NULL; }
- bSuccess = ReadFile(hFile, lpBitmap->header, dwFileSize, &dwBytesRead, NULL); - CloseHandle(hFile); - - if (!bSuccess || - (dwBytesRead != dwFileSize) || - (lpBitmap->header->bfType != * (WORD *) "BM") || - (lpBitmap->header->bfSize != dwFileSize)) + if (GdipGetImageWidth((GpImage*)bitmap, &lpBitmap->width) != Ok || + GdipGetImageHeight((GpImage*)bitmap, &lpBitmap->height) != Ok) { - HeapFree(GetProcessHeap(), 0, lpBitmap->header); + HeapFree(GetProcessHeap(), 0, lpBitmap->info); HeapFree(GetProcessHeap(), 0, lpBitmap); + GdipDisposeImage((GpImage*)bitmap); return NULL; }
- lpBitmap->info = (BITMAPINFO *)(lpBitmap->header + 1); - lpBitmap->bits = (BYTE *)lpBitmap->header + lpBitmap->header->bfOffBits; + lpBitmap->bits = HeapAlloc(GetProcessHeap(), 0, lpBitmap->width * lpBitmap->height * 4); + if (!lpBitmap->bits) + { + HeapFree(GetProcessHeap(), 0, lpBitmap->info); + HeapFree(GetProcessHeap(), 0, lpBitmap); + GdipDisposeImage((GpImage*)bitmap); + return NULL; + }
- /* Get the DIB width and height */ - if (lpBitmap->info->bmiHeader.biSize == sizeof(BITMAPCOREHEADER)) + ZeroMemory(lpBitmap->info, sizeof(BITMAPINFO)); + lpBitmap->info->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); + lpBitmap->info->bmiHeader.biWidth = lpBitmap->width; + lpBitmap->info->bmiHeader.biHeight = -lpBitmap->height; + lpBitmap->info->bmiHeader.biPlanes = 1; + lpBitmap->info->bmiHeader.biBitCount = 32; + lpBitmap->info->bmiHeader.biCompression = BI_RGB; + lpBitmap->info->bmiHeader.biSizeImage = lpBitmap->width * lpBitmap->height * 4; + + lock.Width = lpBitmap->width; + lock.Height = lpBitmap->height; + lock.Stride = lpBitmap->width * 4; + lock.PixelFormat = PixelFormat32bppPARGB; + lock.Scan0 = lpBitmap->bits; + lock.Reserved = 0; + + if (GdipBitmapLockBits(bitmap, NULL, ImageLockModeRead | ImageLockModeUserInputBuf, PixelFormat32bppPARGB, &lock) != Ok) { - lpBitmap->width = ((BITMAPCOREHEADER *)lpBitmap->info)->bcWidth; - lpBitmap->height = ((BITMAPCOREHEADER *)lpBitmap->info)->bcHeight; + HeapFree(GetProcessHeap(), 0, lpBitmap->bits); + HeapFree(GetProcessHeap(), 0, lpBitmap->info); + HeapFree(GetProcessHeap(), 0, lpBitmap); + GdipDisposeImage((GpImage*)bitmap); + return NULL; } - else - { - lpBitmap->width = lpBitmap->info->bmiHeader.biWidth; - lpBitmap->height = abs(lpBitmap->info->bmiHeader.biHeight); - } + + GdipBitmapUnlockBits(bitmap, &lock); + GdipDisposeImage((GpImage*)bitmap);
return lpBitmap; } @@ -88,9 +92,13 @@ if (lpBitmap == NULL) return;
- /* Free the header */ - if (lpBitmap->header != NULL) - HeapFree(GetProcessHeap(), 0, lpBitmap->header); + /* Free the image data */ + if (lpBitmap->bits != NULL) + HeapFree(GetProcessHeap(), 0, lpBitmap->bits); + + /* Free the bitmap info */ + if (lpBitmap->info != NULL) + HeapFree(GetProcessHeap(), 0, lpBitmap->info);
/* Free the bitmap structure */ if (lpBitmap != NULL)
Modified: trunk/reactos/dll/cpl/desk/lang/bg-BG.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/bg-BG.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/bg-BG.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/bg-BG.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ÐзобÑÐ°Ð¶ÐµÐ½Ð¸Ñ (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ÐзобÑажениÑ" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/cs-CZ.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/cs-CZ.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/cs-CZ.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/cs-CZ.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -216,8 +216,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Obrázky (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Obrázky" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/de-DE.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/de-DE.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/de-DE.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/de-DE.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Bilddateien (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Bilddateien" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/el-GR.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/el-GR.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/el-GR.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/el-GR.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ÎικÏÎ½ÎµÏ (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ÎικÏνεÏ" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/en-US.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/en-US.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/en-US.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/en-US.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Pictures (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Pictures" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/es-ES.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/es-ES.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/es-ES.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/es-ES.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Imágenes (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Imágenes" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/fr-FR.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/fr-FR.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/fr-FR.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/fr-FR.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Images (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Images" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/he-IL.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/he-IL.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/he-IL.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/he-IL.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ת××× ×ת (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ת××× ×ת" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/hu-HU.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/hu-HU.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/hu-HU.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/hu-HU.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Képek (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Képek" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/id-ID.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/id-ID.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/id-ID.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/id-ID.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Gambar (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Gambar" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/it-IT.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/it-IT.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/it-IT.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/it-IT.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Immagini (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Immagini" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/ja-JP.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/ja-JP.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/ja-JP.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/ja-JP.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ç»å (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ç»å" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/nl-NL.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/nl-NL.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/nl-NL.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/nl-NL.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Pictures (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Pictures" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/no-NO.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/no-NO.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/no-NO.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/no-NO.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Bilder (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Bilder" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/pl-PL.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/pl-PL.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/pl-PL.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/pl-PL.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -219,8 +219,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Pliki tÅa (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Pliki tÅa" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/ro-RO.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/ro-RO.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/ro-RO.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/ro-RO.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -215,8 +215,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Imagini (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Imagini" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/ru-RU.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/ru-RU.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/ru-RU.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/ru-RU.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -210,8 +210,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ÐзобÑÐ°Ð¶ÐµÐ½Ð¸Ñ (*.bmp;*.dib)\000*.bmp;*.dib" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ÐзобÑажениÑ" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/sk-SK.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/sk-SK.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/sk-SK.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/sk-SK.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Obrázky (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Obrázky" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/sq-AL.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/sq-AL.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/sq-AL.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/sq-AL.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -214,8 +214,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Pictures (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Pictures" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/sv-SE.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/sv-SE.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/sv-SE.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/sv-SE.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Pictures (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Pictures" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/tr-TR.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/tr-TR.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/tr-TR.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/tr-TR.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -212,8 +212,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "Resimler (*.bmp, *.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "Resimler" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/uk-UA.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/uk-UA.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/uk-UA.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/uk-UA.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -218,8 +218,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ÐалÑнки (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ÐалÑнки" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/lang/zh-CN.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/lang/zh-CN.rc?... ============================================================================== --- trunk/reactos/dll/cpl/desk/lang/zh-CN.rc [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/lang/zh-CN.rc [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -217,8 +217,7 @@
STRINGTABLE BEGIN - IDS_BACKGROUND_COMDLG_FILTER "ä½å¾ (*.bmp;*.dib)\0*.bmp;*.dib\0" - IDS_SUPPORTED_EXT "*.bmp;*.dib" + IDS_BACKGROUND_COMDLG_FILTER "ä½å¾" END
STRINGTABLE
Modified: trunk/reactos/dll/cpl/desk/resource.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/resource.h?rev... ============================================================================== --- trunk/reactos/dll/cpl/desk/resource.h [iso-8859-1] (original) +++ trunk/reactos/dll/cpl/desk/resource.h [iso-8859-1] Sat Feb 21 17:47:57 2015 @@ -33,7 +33,6 @@ #define IDC_COLOR_BUTTON 1004 #define IDC_PLACEMENT_COMBO 1005 #define IDS_BACKGROUND_COMDLG_FILTER 1006 -#define IDS_SUPPORTED_EXT 1007
/* Screensaver Page */ #define IDC_SCREENS_PREVIEW 1010