ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
February 2021
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
30 participants
434 discussions
Start a n
N
ew thread
[reactos] 01/01: [WKSSVC][NETAPI32] Implement NetrWkstaGetInfo and get rid of the old NetWkstaGetInfo implementation
by Eric Kohl
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=87a4624e20b21d310b2f9…
commit 87a4624e20b21d310b2f9adcdb94970eea914676 Author: Eric Kohl <eric.kohl(a)reactos.org> AuthorDate: Sat Feb 13 23:19:29 2021 +0100 Commit: Eric Kohl <eric.kohl(a)reactos.org> CommitDate: Sat Feb 13 23:19:29 2021 +0100 [WKSSVC][NETAPI32] Implement NetrWkstaGetInfo and get rid of the old NetWkstaGetInfo implementation --- base/services/wkssvc/rpcserver.c | 140 ++++++++++++++++++++++++++++++++++++- dll/win32/netapi32/wksta.c | 84 ---------------------- dll/win32/netapi32/wksta_new.c | 4 +- sdk/include/reactos/idl/wkssvc.idl | 16 ++++- 4 files changed, 153 insertions(+), 91 deletions(-) diff --git a/base/services/wkssvc/rpcserver.c b/base/services/wkssvc/rpcserver.c index 79a062c8ecc..f80461c0608 100644 --- a/base/services/wkssvc/rpcserver.c +++ b/base/services/wkssvc/rpcserver.c @@ -83,11 +83,145 @@ __stdcall NetrWkstaGetInfo( WKSSVC_IDENTIFY_HANDLE ServerName, unsigned long Level, - LPWKSTA_INFO WkstaInfo) -{ + LPWKSTA_INFO *WkstaInfo) +{ + WCHAR szComputerName[MAX_COMPUTERNAME_LENGTH + 1]; + DWORD dwComputerNameLength; + LPCWSTR pszLanRoot = L""; + PWKSTA_INFO pWkstaInfo = NULL; + OSVERSIONINFOW VersionInfo; + LSA_OBJECT_ATTRIBUTES ObjectAttributes; + LSA_HANDLE PolicyHandle; + PPOLICY_PRIMARY_DOMAIN_INFO DomainInfo = NULL; + NTSTATUS NtStatus; + DWORD dwResult = NERR_Success; + TRACE("NetrWkstaGetInfo level %lu\n", Level); - return 0; + dwComputerNameLength = MAX_COMPUTERNAME_LENGTH + 1; + GetComputerNameW(szComputerName, &dwComputerNameLength); + dwComputerNameLength++; /* include NULL terminator */ + + VersionInfo.dwOSVersionInfoSize = sizeof(VersionInfo); + GetVersionExW(&VersionInfo); + + ZeroMemory(&ObjectAttributes, sizeof(ObjectAttributes)); + NtStatus = LsaOpenPolicy(NULL, + &ObjectAttributes, + POLICY_VIEW_LOCAL_INFORMATION, + &PolicyHandle); + if (NtStatus != STATUS_SUCCESS) + { + WARN("LsaOpenPolicy() failed (Status 0x%08lx)\n", NtStatus); + return LsaNtStatusToWinError(NtStatus); + } + + NtStatus = LsaQueryInformationPolicy(PolicyHandle, + PolicyPrimaryDomainInformation, + (PVOID*)&DomainInfo); + + LsaClose(PolicyHandle); + + if (NtStatus != STATUS_SUCCESS) + { + WARN("LsaQueryInformationPolicy() failed (Status 0x%08lx)\n", NtStatus); + return LsaNtStatusToWinError(NtStatus); + } + + switch (Level) + { + case 100: + pWkstaInfo = midl_user_allocate(sizeof(WKSTA_INFO_100)); + if (pWkstaInfo == NULL) + { + dwResult = ERROR_NOT_ENOUGH_MEMORY; + break; + } + + pWkstaInfo->WkstaInfo100.wki100_platform_id = PLATFORM_ID_NT; + + pWkstaInfo->WkstaInfo100.wki100_computername = midl_user_allocate(dwComputerNameLength * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo100.wki100_computername != NULL) + wcscpy(pWkstaInfo->WkstaInfo100.wki100_computername, szComputerName); + + pWkstaInfo->WkstaInfo100.wki100_langroup = midl_user_allocate((wcslen(DomainInfo->Name.Buffer) + 1) * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo100.wki100_langroup != NULL) + wcscpy(pWkstaInfo->WkstaInfo100.wki100_langroup, DomainInfo->Name.Buffer); + + pWkstaInfo->WkstaInfo100.wki100_ver_major = VersionInfo.dwMajorVersion; + pWkstaInfo->WkstaInfo100.wki100_ver_minor = VersionInfo.dwMinorVersion; + + *WkstaInfo = pWkstaInfo; + break; + + case 101: + pWkstaInfo = midl_user_allocate(sizeof(WKSTA_INFO_101)); + if (pWkstaInfo == NULL) + { + dwResult = ERROR_NOT_ENOUGH_MEMORY; + break; + } + + pWkstaInfo->WkstaInfo101.wki101_platform_id = PLATFORM_ID_NT; + + pWkstaInfo->WkstaInfo101.wki101_computername = midl_user_allocate(dwComputerNameLength * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo101.wki101_computername != NULL) + wcscpy(pWkstaInfo->WkstaInfo101.wki101_computername, szComputerName); + + pWkstaInfo->WkstaInfo101.wki101_langroup = midl_user_allocate((wcslen(DomainInfo->Name.Buffer) + 1) * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo101.wki101_langroup != NULL) + wcscpy(pWkstaInfo->WkstaInfo101.wki101_langroup, DomainInfo->Name.Buffer); + + pWkstaInfo->WkstaInfo101.wki101_ver_major = VersionInfo.dwMajorVersion; + pWkstaInfo->WkstaInfo101.wki101_ver_minor = VersionInfo.dwMinorVersion; + + pWkstaInfo->WkstaInfo101.wki101_lanroot = midl_user_allocate((wcslen(pszLanRoot) + 1) * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo101.wki101_lanroot != NULL) + wcscpy(pWkstaInfo->WkstaInfo101.wki101_lanroot, pszLanRoot); + + *WkstaInfo = pWkstaInfo; + break; + + case 102: + pWkstaInfo = midl_user_allocate(sizeof(WKSTA_INFO_102)); + if (pWkstaInfo == NULL) + { + dwResult = ERROR_NOT_ENOUGH_MEMORY; + break; + } + + pWkstaInfo->WkstaInfo102.wki102_platform_id = PLATFORM_ID_NT; + + pWkstaInfo->WkstaInfo102.wki102_computername = midl_user_allocate(dwComputerNameLength * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo102.wki102_computername != NULL) + wcscpy(pWkstaInfo->WkstaInfo102.wki102_computername, szComputerName); + + pWkstaInfo->WkstaInfo102.wki102_langroup = midl_user_allocate((wcslen(DomainInfo->Name.Buffer) + 1) * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo102.wki102_langroup != NULL) + wcscpy(pWkstaInfo->WkstaInfo102.wki102_langroup, DomainInfo->Name.Buffer); + + pWkstaInfo->WkstaInfo102.wki102_ver_major = VersionInfo.dwMajorVersion; + pWkstaInfo->WkstaInfo102.wki102_ver_minor = VersionInfo.dwMinorVersion; + + pWkstaInfo->WkstaInfo102.wki102_lanroot = midl_user_allocate((wcslen(pszLanRoot) + 1) * sizeof(WCHAR)); + if (pWkstaInfo->WkstaInfo102.wki102_lanroot != NULL) + wcscpy(pWkstaInfo->WkstaInfo102.wki102_lanroot, pszLanRoot); + + pWkstaInfo->WkstaInfo102.wki102_logged_on_users = 1; /* FIXME */ + + *WkstaInfo = pWkstaInfo; + break; + + default: + FIXME("Level %d unimplemented\n", Level); + dwResult = ERROR_INVALID_LEVEL; + break; + } + + if (DomainInfo != NULL) + LsaFreeMemory(DomainInfo); + + return dwResult; } diff --git a/dll/win32/netapi32/wksta.c b/dll/win32/netapi32/wksta.c index 9200b17aaa0..af835f20f3a 100644 --- a/dll/win32/netapi32/wksta.c +++ b/dll/win32/netapi32/wksta.c @@ -468,87 +468,3 @@ NET_API_STATUS WINAPI I_NetNameValidate(LPVOID p1, LPWSTR wkgrp, LPVOID p3, FIXME("(%p %s %p %p): stub\n", p1, debugstr_w(wkgrp), p3, p4); return ERROR_INVALID_PARAMETER; } - -NET_API_STATUS WINAPI NetWkstaGetInfo( LMSTR servername, DWORD level, - LPBYTE* bufptr) -{ - NET_API_STATUS ret; - - TRACE("%s %d %p\n", debugstr_w( servername ), level, bufptr ); - if (servername) - { - if (!NETAPI_IsLocalComputer(servername)) - { - FIXME("remote computers not supported\n"); - return ERROR_INVALID_LEVEL; - } - } - if (!bufptr) return ERROR_INVALID_PARAMETER; - - switch (level) - { - case 100: - case 101: - case 102: - { - static const WCHAR lanroot[] = {'c',':','\\','l','a','n','m','a','n',0}; /* FIXME */ - DWORD computerNameLen, domainNameLen, size; - WCHAR computerName[MAX_COMPUTERNAME_LENGTH + 1]; - LSA_OBJECT_ATTRIBUTES ObjectAttributes; - LSA_HANDLE PolicyHandle; - NTSTATUS NtStatus; - - computerNameLen = MAX_COMPUTERNAME_LENGTH + 1; - GetComputerNameW(computerName, &computerNameLen); - computerNameLen++; /* include NULL terminator */ - - ZeroMemory(&ObjectAttributes, sizeof(ObjectAttributes)); - NtStatus = LsaOpenPolicy(NULL, &ObjectAttributes, - POLICY_VIEW_LOCAL_INFORMATION, &PolicyHandle); - if (NtStatus != STATUS_SUCCESS) - ret = LsaNtStatusToWinError(NtStatus); - else - { - PPOLICY_PRIMARY_DOMAIN_INFO DomainInfo; - - LsaQueryInformationPolicy(PolicyHandle, - PolicyPrimaryDomainInformation, (PVOID*)&DomainInfo); - domainNameLen = lstrlenW(DomainInfo->Name.Buffer) + 1; - size = sizeof(WKSTA_INFO_102) + computerNameLen * sizeof(WCHAR) - + domainNameLen * sizeof(WCHAR) + sizeof(lanroot); - ret = NetApiBufferAllocate(size, (LPVOID *)bufptr); - if (ret == NERR_Success) - { - /* INFO_100 and INFO_101 structures are subsets of INFO_102 */ - PWKSTA_INFO_102 info = (PWKSTA_INFO_102)*bufptr; - OSVERSIONINFOW verInfo; - - info->wki102_platform_id = PLATFORM_ID_NT; - info->wki102_computername = (LMSTR)(*bufptr + - sizeof(WKSTA_INFO_102)); - memcpy(info->wki102_computername, computerName, - computerNameLen * sizeof(WCHAR)); - info->wki102_langroup = info->wki102_computername + computerNameLen; - memcpy(info->wki102_langroup, DomainInfo->Name.Buffer, - domainNameLen * sizeof(WCHAR)); - info->wki102_lanroot = info->wki102_langroup + domainNameLen; - memcpy(info->wki102_lanroot, lanroot, sizeof(lanroot)); - memset(&verInfo, 0, sizeof(verInfo)); - verInfo.dwOSVersionInfoSize = sizeof(verInfo); - GetVersionExW(&verInfo); - info->wki102_ver_major = verInfo.dwMajorVersion; - info->wki102_ver_minor = verInfo.dwMinorVersion; - info->wki102_logged_on_users = 1; - } - LsaFreeMemory(DomainInfo); - LsaClose(PolicyHandle); - } - break; - } - - default: - FIXME("level %d unimplemented\n", level); - ret = ERROR_INVALID_LEVEL; - } - return ret; -} diff --git a/dll/win32/netapi32/wksta_new.c b/dll/win32/netapi32/wksta_new.c index 4bc96d01dbd..0c84a23f20f 100644 --- a/dll/win32/netapi32/wksta_new.c +++ b/dll/win32/netapi32/wksta_new.c @@ -856,7 +856,6 @@ NetValidateName( } -#if 0 NET_API_STATUS WINAPI NetWkstaGetInfo( @@ -878,7 +877,7 @@ NetWkstaGetInfo( { status = NetrWkstaGetInfo(servername, level, - (LPWKSTA_INFO)bufptr); + (LPWKSTA_INFO*)bufptr); } RpcExcept(EXCEPTION_EXECUTE_HANDLER) { @@ -888,7 +887,6 @@ NetWkstaGetInfo( return status; } -#endif NET_API_STATUS diff --git a/sdk/include/reactos/idl/wkssvc.idl b/sdk/include/reactos/idl/wkssvc.idl index 3f960f63725..b4cac96edd3 100644 --- a/sdk/include/reactos/idl/wkssvc.idl +++ b/sdk/include/reactos/idl/wkssvc.idl @@ -198,6 +198,7 @@ typedef struct _WKSTA_TRANSPORT_INFO_0 unsigned long wkti0_wan_ish; } WKSTA_TRANSPORT_INFO_0, *PWKSTA_TRANSPORT_INFO_0, *LPWKSTA_TRANSPORT_INFO_0; +/* typedef [switch_type(unsigned long)] union _WKSTA_INFO { [case(100)] LPWKSTA_INFO_100 WkstaInfo100; @@ -209,6 +210,18 @@ typedef [switch_type(unsigned long)] union _WKSTA_INFO [case(1046)] LPWKSTA_INFO_1046 WkstaInfo1046; [default] ; } WKSTA_INFO, *PWKSTA_INFO, *LPWKSTA_INFO; +*/ +typedef [switch_type(unsigned long)] union _WKSTA_INFO +{ + [case(100)] WKSTA_INFO_100 WkstaInfo100; + [case(101)] WKSTA_INFO_101 WkstaInfo101; + [case(102)] WKSTA_INFO_102 WkstaInfo102; + [case(502)] WKSTA_INFO_502 WkstaInfo502; + [case(1013)] WKSTA_INFO_1013 WkstaInfo1013; + [case(1018)] WKSTA_INFO_1018 WkstaInfo1018; + [case(1046)] WKSTA_INFO_1046 WkstaInfo1046; + [default] ; +} WKSTA_INFO, *PWKSTA_INFO, *LPWKSTA_INFO; typedef struct _USE_INFO_0 { @@ -366,7 +379,8 @@ interface wkssvc NetrWkstaGetInfo( [in, string, unique] WKSSVC_IDENTIFY_HANDLE ServerName, [in] unsigned long Level, - [out, switch_is(Level)] LPWKSTA_INFO WkstaInfo); + [out, switch_is(Level)] LPWKSTA_INFO *WkstaInfo); +// [out, switch_is(Level)] LPWKSTA_INFO WkstaInfo); /* Function 1 */ unsigned long
3 years, 10 months
1
0
0
0
[reactos] 01/01: [SHIMGVW]Update German translation
by Robert Naumann
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0d1a8045817df8128a2fb…
commit 0d1a8045817df8128a2fb357fad24872e264e857 Author: Robert Naumann <gonzomdx(a)gmail.com> AuthorDate: Sat Feb 13 20:59:38 2021 +0100 Commit: Robert Naumann <gonzomdx(a)gmail.com> CommitDate: Sat Feb 13 20:59:38 2021 +0100 [SHIMGVW]Update German translation --- dll/win32/shimgvw/lang/de-DE.rc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dll/win32/shimgvw/lang/de-DE.rc b/dll/win32/shimgvw/lang/de-DE.rc index fb02ee6920c..59215804a46 100644 --- a/dll/win32/shimgvw/lang/de-DE.rc +++ b/dll/win32/shimgvw/lang/de-DE.rc @@ -4,23 +4,23 @@ STRINGTABLE BEGIN IDS_APPTITLE "ReactOS-Bild- und Faxansicht" IDS_SETASDESKBG "Als Desktophintergrund setzen" - IDS_NOPREVIEW "No preview available." + IDS_NOPREVIEW "Keine Vorschau vorhanden." IDS_PREVIEW "Vorschau" /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Nächstes Bild" IDS_TOOLTIP_PREV_PIC "Vorheriges Bild" - IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" - IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" - IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" + IDS_TOOLTIP_BEST_FIT "An Fenster anpassen (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Tatsächliche Größe (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Diashow starten (F11)" IDS_TOOLTIP_ZOOM_IN "Vergrößern (+)" IDS_TOOLTIP_ZOOM_OUT "Verkleinern (-)" IDS_TOOLTIP_ROT_CLOCKW "Drehen im Uhrzeigersinn (Strg+K)" IDS_TOOLTIP_ROT_COUNCW "Drehen gegen den Uhrzeigersinn (Strg+L)" - IDS_TOOLTIP_DELETE "Delete (DEL)" + IDS_TOOLTIP_DELETE "Löschen (Entf)" IDS_TOOLTIP_PRINT "Drucken (Strg+P)" IDS_TOOLTIP_SAVEAS "Speichern unter... (Strg+S)" - IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" - IDS_TOOLTIP_HELP_TOC "Help topics (F1)" + IDS_TOOLTIP_MODIFY "Bearbeiten (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Hilfethemen (F1)" END STRINGTABLE
3 years, 10 months
1
0
0
0
[reactos] 01/01: [SHELL32] Update German translation
by Robert Naumann
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=e4058ee520df53b07c995…
commit e4058ee520df53b07c995339eeb9ed0f9bc5778f Author: Robert Naumann <gonzomdx(a)gmail.com> AuthorDate: Sat Feb 13 20:14:05 2021 +0100 Commit: Robert Naumann <gonzomdx(a)gmail.com> CommitDate: Sat Feb 13 20:14:05 2021 +0100 [SHELL32] Update German translation -change "Meine Musik" to "Eigene Musik" to get a consistent naming. Same for "Meine Videos". --- dll/win32/shell32/lang/de-DE.rc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dll/win32/shell32/lang/de-DE.rc b/dll/win32/shell32/lang/de-DE.rc index 65bcdb4b1d2..0dfa9dd9700 100644 --- a/dll/win32/shell32/lang/de-DE.rc +++ b/dll/win32/shell32/lang/de-DE.rc @@ -841,8 +841,8 @@ BEGIN IDS_RECENT "Dokumente" IDS_SENDTO "Senden an" IDS_STARTMENU "Startmenü" - IDS_MYMUSIC "Meine Musik" - IDS_MYVIDEO "Meine Videos" + IDS_MYMUSIC "Eigene Musik" + IDS_MYVIDEO "Eigene Videos" IDS_DESKTOPDIRECTORY "Desktop" IDS_NETHOOD "Netzwerkumgebung" IDS_TEMPLATES "Vorlagen"
3 years, 10 months
1
0
0
0
[reactos] 01/01: [SHIMGVW] Fix CTRL-K to IDC_ROT_CLOCKW (#3457)
by Carlo Bramini
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=6aafdc520cce06ee10007…
commit 6aafdc520cce06ee10007252b68b852d95084942 Author: Carlo Bramini <30959007+carlo-bramini(a)users.noreply.github.com> AuthorDate: Sat Feb 13 19:32:19 2021 +0100 Commit: GitHub <noreply(a)github.com> CommitDate: Sat Feb 13 19:32:19 2021 +0100 [SHIMGVW] Fix CTRL-K to IDC_ROT_CLOCKW (#3457) As signaled in CORE-11044, the IDC_ROT_COUNCW was assigned to both CW and CCW rotation. --- dll/win32/shimgvw/shimgvw.rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dll/win32/shimgvw/shimgvw.rc b/dll/win32/shimgvw/shimgvw.rc index a4ce2015bc8..c5d9ef57cdc 100644 --- a/dll/win32/shimgvw/shimgvw.rc +++ b/dll/win32/shimgvw/shimgvw.rc @@ -41,7 +41,7 @@ BEGIN VK_F11, IDC_SLIDE_SHOW, VIRTKEY VK_ADD, IDC_ZOOM_IN, VIRTKEY VK_SUBTRACT, IDC_ZOOM_OUT, VIRTKEY - "K", IDC_ROT_COUNCW, VIRTKEY, CONTROL + "K", IDC_ROT_CLOCKW, VIRTKEY, CONTROL "L", IDC_ROT_COUNCW, VIRTKEY, CONTROL VK_DELETE, IDC_DELETE, VIRTKEY "P", IDC_PRINT, VIRTKEY, CONTROL
3 years, 10 months
1
0
0
0
[reactos] 01/01: [SHIMGVW] Add new features (CORE-11044) (#3113)
by Carlo Bramini
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0d4e921c934f7b17535f3…
commit 0d4e921c934f7b17535f35059316ee051979bf86 Author: Carlo Bramini <30959007+carlo-bramini(a)users.noreply.github.com> AuthorDate: Sat Feb 13 15:22:21 2021 +0100 Commit: GitHub <noreply(a)github.com> CommitDate: Sat Feb 13 23:22:21 2021 +0900 [SHIMGVW] Add new features (CORE-11044) (#3113) Add these new features: - Use accelerator table for keyboard hotkeys. - Updated italian translation. - Simplified creation of toolbar and tooltips. - Added missing toolbar buttons. - Initialize common controls for theming. French translation by Kyle Katarn. Polish translation by Adam Stachowicz. --- dll/win32/shimgvw/comsup.c | 2 +- dll/win32/shimgvw/lang/bg-BG.rc | 6 + dll/win32/shimgvw/lang/cs-CZ.rc | 6 + dll/win32/shimgvw/lang/de-DE.rc | 6 + dll/win32/shimgvw/lang/en-US.rc | 6 + dll/win32/shimgvw/lang/es-ES.rc | 6 + dll/win32/shimgvw/lang/fr-FR.rc | 6 + dll/win32/shimgvw/lang/he-IL.rc | 6 + dll/win32/shimgvw/lang/it-IT.rc | 38 +++-- dll/win32/shimgvw/lang/ja-JP.rc | 6 + dll/win32/shimgvw/lang/lt-LT.rc | 6 + dll/win32/shimgvw/lang/no-NO.rc | 6 + dll/win32/shimgvw/lang/pl-PL.rc | 6 + dll/win32/shimgvw/lang/pt-PT.rc | 6 + dll/win32/shimgvw/lang/ro-RO.rc | 6 + dll/win32/shimgvw/lang/ru-RU.rc | 6 + dll/win32/shimgvw/lang/sk-SK.rc | 6 + dll/win32/shimgvw/lang/sq-AL.rc | 6 + dll/win32/shimgvw/lang/tr-TR.rc | 6 + dll/win32/shimgvw/lang/uk-UA.rc | 6 + dll/win32/shimgvw/lang/zh-CN.rc | 6 + dll/win32/shimgvw/lang/zh-TW.rc | 6 + dll/win32/shimgvw/res/best_fit.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/res/delete.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/res/help_toc.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/res/modify.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/res/real_size.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/res/slide_show.bmp | Bin 0 -> 822 bytes dll/win32/shimgvw/resource.h | 98 +++++++----- dll/win32/shimgvw/shimgvw.c | 281 ++++++++++++++++++----------------- dll/win32/shimgvw/shimgvw.rc | 42 ++++-- 31 files changed, 383 insertions(+), 198 deletions(-) diff --git a/dll/win32/shimgvw/comsup.c b/dll/win32/shimgvw/comsup.c index 74fdeae1cd1..e390629dfc6 100644 --- a/dll/win32/shimgvw/comsup.c +++ b/dll/win32/shimgvw/comsup.c @@ -1,7 +1,7 @@ #define INITGUID #include <windef.h> -#include <comsup.h> +#include "comsup.h" LONG LockCount; LONG ObjectCount; diff --git a/dll/win32/shimgvw/lang/bg-BG.rc b/dll/win32/shimgvw/lang/bg-BG.rc index 91e1f3c8c84..279db8f0148 100644 --- a/dll/win32/shimgvw/lang/bg-BG.rc +++ b/dll/win32/shimgvw/lang/bg-BG.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Следващо изображение" IDS_TOOLTIP_PREV_PIC "Предходно изображение" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Увеличаване (+)" IDS_TOOLTIP_ZOOM_OUT "Намаляване (-)" IDS_TOOLTIP_ROT_CLOCKW "Завъртане по часовника (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Завъртане срещу часовника (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Разпечатване (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Записване като... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/cs-CZ.rc b/dll/win32/shimgvw/lang/cs-CZ.rc index b9f5fd5169b..21c61dd7690 100644 --- a/dll/win32/shimgvw/lang/cs-CZ.rc +++ b/dll/win32/shimgvw/lang/cs-CZ.rc @@ -14,12 +14,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Další obrázek" IDS_TOOLTIP_PREV_PIC "Předchozí obrázek" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Přiblížit (+)" IDS_TOOLTIP_ZOOM_OUT "Oddálit (-)" IDS_TOOLTIP_ROT_CLOCKW "Otočit po směru hodinových ručiček (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Otočit proti směru hodinových ručiček (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Tisk (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Uložit jako... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/de-DE.rc b/dll/win32/shimgvw/lang/de-DE.rc index ed9b19c6701..fb02ee6920c 100644 --- a/dll/win32/shimgvw/lang/de-DE.rc +++ b/dll/win32/shimgvw/lang/de-DE.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Nächstes Bild" IDS_TOOLTIP_PREV_PIC "Vorheriges Bild" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Vergrößern (+)" IDS_TOOLTIP_ZOOM_OUT "Verkleinern (-)" IDS_TOOLTIP_ROT_CLOCKW "Drehen im Uhrzeigersinn (Strg+K)" IDS_TOOLTIP_ROT_COUNCW "Drehen gegen den Uhrzeigersinn (Strg+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Drucken (Strg+P)" IDS_TOOLTIP_SAVEAS "Speichern unter... (Strg+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/en-US.rc b/dll/win32/shimgvw/lang/en-US.rc index c212b2e7d00..d2712a552da 100644 --- a/dll/win32/shimgvw/lang/en-US.rc +++ b/dll/win32/shimgvw/lang/en-US.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Next Picture" IDS_TOOLTIP_PREV_PIC "Previous Picture" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Zoom In (+)" IDS_TOOLTIP_ZOOM_OUT "Zoom Out (-)" IDS_TOOLTIP_ROT_CLOCKW "Rotate Clockwise (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Rotate Counterclockwise (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Print (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Save As... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/es-ES.rc b/dll/win32/shimgvw/lang/es-ES.rc index 26733fd9af4..08bc0059e85 100644 --- a/dll/win32/shimgvw/lang/es-ES.rc +++ b/dll/win32/shimgvw/lang/es-ES.rc @@ -11,12 +11,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Siguiente imagen" IDS_TOOLTIP_PREV_PIC "Imagen anterior" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Acercar (+)" IDS_TOOLTIP_ZOOM_OUT "Alejar (-)" IDS_TOOLTIP_ROT_CLOCKW "Rotar en el sentido de las agujas del reloj (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Rotar en el sentido opuesto a las agujas del reloj (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Imprimir (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Guardar como... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/fr-FR.rc b/dll/win32/shimgvw/lang/fr-FR.rc index 89a6f99c415..d6fcf5fb11e 100644 --- a/dll/win32/shimgvw/lang/fr-FR.rc +++ b/dll/win32/shimgvw/lang/fr-FR.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Image Suivante" IDS_TOOLTIP_PREV_PIC "Image Précédente" + IDS_TOOLTIP_BEST_FIT "Ajuster à la fenêtre (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Taille réelle (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Démarrer le diaporama (F11)" IDS_TOOLTIP_ZOOM_IN "Augmenter (+)" IDS_TOOLTIP_ZOOM_OUT "Diminuer (-)" IDS_TOOLTIP_ROT_CLOCKW "Tourner dans le sens des aiguilles d'une montre (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Tourner dans le sens opposé des aiguilles d'une montre (Ctrl+L)" + IDS_TOOLTIP_DELETE "Supprimer (Suppr)" IDS_TOOLTIP_PRINT "Imprimer (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Enregistrer sous... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modifier (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Aide (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/he-IL.rc b/dll/win32/shimgvw/lang/he-IL.rc index c90d0e79dd1..6d000b52fb0 100644 --- a/dll/win32/shimgvw/lang/he-IL.rc +++ b/dll/win32/shimgvw/lang/he-IL.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "התמונה הבאה" IDS_TOOLTIP_PREV_PIC "התמונה הקודמת" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "הגדלה (+)" IDS_TOOLTIP_ZOOM_OUT "הרחקה (-)" IDS_TOOLTIP_ROT_CLOCKW "סובב עם כיוון השעון (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "סובב כנגד כיוון השעון (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "הדפס (Ctrl+P)" IDS_TOOLTIP_SAVEAS "שמירה בשם... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/it-IT.rc b/dll/win32/shimgvw/lang/it-IT.rc index f629ad69acc..6b7f5af5289 100644 --- a/dll/win32/shimgvw/lang/it-IT.rc +++ b/dll/win32/shimgvw/lang/it-IT.rc @@ -4,26 +4,32 @@ STRINGTABLE BEGIN IDS_APPTITLE "Visualizzatore immagini e fax di ReactOS" IDS_SETASDESKBG "Imposta come sfondo del desktop" - IDS_NOPREVIEW "No preview available." + IDS_NOPREVIEW "Anteprima non disponibile." IDS_PREVIEW "Anteprima" /* Tooltips */ - IDS_TOOLTIP_NEXT_PIC "Immagine successiva" - IDS_TOOLTIP_PREV_PIC "Immagine precedente" - IDS_TOOLTIP_ZOOM_IN "Zoom avanti (+)" - IDS_TOOLTIP_ZOOM_OUT "Zoom indietro (-)" - IDS_TOOLTIP_ROT_CLOCKW "Ruotare in senso orario (Ctrl+K)" - IDS_TOOLTIP_ROT_COUNCW "Ruotare in senso antiorario (Ctrl+L)" - IDS_TOOLTIP_PRINT "Stampare (Ctrl+P)" - IDS_TOOLTIP_SAVEAS "Salva in... (Ctrl+S)" + IDS_TOOLTIP_NEXT_PIC "Immagine successiva (Freccia destra)" + IDS_TOOLTIP_PREV_PIC "Immagine precedente (Freccia sinistra)" + IDS_TOOLTIP_BEST_FIT "Adatta alla finestra (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Dimensione effettiva (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Avvia presentazione (F11)" + IDS_TOOLTIP_ZOOM_IN "Ingrandisci (+)" + IDS_TOOLTIP_ZOOM_OUT "Riduci (-)" + IDS_TOOLTIP_ROT_CLOCKW "Ruota in senso orario (Ctrl+K)" + IDS_TOOLTIP_ROT_COUNCW "Ruota in senso antiorario (Ctrl+L)" + IDS_TOOLTIP_DELETE "Elimina (CANC)" + IDS_TOOLTIP_PRINT "Stampa (Ctrl+P)" + IDS_TOOLTIP_SAVEAS "Salva come... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modifica (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Guida in linea (F1)" END STRINGTABLE BEGIN - IDS_EMF_FILE "EMF Image" - IDS_GIF_FILE "GIF Image" - IDS_JPG_FILE "JPEG Image" - IDS_BMP_FILE "Bitmap Image" - IDS_PNG_FILE "PNG Image" - IDS_TIF_FILE "TIF Image" - IDS_WMF_FILE "WMF Image" + IDS_EMF_FILE "Immagine EMF" + IDS_GIF_FILE "Immagine GIF" + IDS_JPG_FILE "Immagine JPEG" + IDS_BMP_FILE "Immagine Bitmap" + IDS_PNG_FILE "Immagine PNG" + IDS_TIF_FILE "Immagine TIF" + IDS_WMF_FILE "Immagine WMF" END diff --git a/dll/win32/shimgvw/lang/ja-JP.rc b/dll/win32/shimgvw/lang/ja-JP.rc index 6c4395cfe00..46c024fb7d2 100644 --- a/dll/win32/shimgvw/lang/ja-JP.rc +++ b/dll/win32/shimgvw/lang/ja-JP.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "次の画像" IDS_TOOLTIP_PREV_PIC "前の画像" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "ズームイン (+)" IDS_TOOLTIP_ZOOM_OUT "ズームアウト (-)" IDS_TOOLTIP_ROT_CLOCKW "時計回りに回転 (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "反時計回りに回転 (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "印刷 (Ctrl+P)" IDS_TOOLTIP_SAVEAS "名前を付けて保存... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/lt-LT.rc b/dll/win32/shimgvw/lang/lt-LT.rc index 631f493ae39..b4ab0c2729d 100644 --- a/dll/win32/shimgvw/lang/lt-LT.rc +++ b/dll/win32/shimgvw/lang/lt-LT.rc @@ -11,12 +11,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Tolesnis paveikslėlis" IDS_TOOLTIP_PREV_PIC "Ankstesnis paveikslėlis" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Didinti (+)" IDS_TOOLTIP_ZOOM_OUT "Mažinti (-)" IDS_TOOLTIP_ROT_CLOCKW "Pasukti pagal laikrodžio rodyklę (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Pasukti prieš laikrodžio rodyklę (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Spausdinti (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Įrašyti kaip... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/no-NO.rc b/dll/win32/shimgvw/lang/no-NO.rc index f25300df06a..233b27bffb3 100644 --- a/dll/win32/shimgvw/lang/no-NO.rc +++ b/dll/win32/shimgvw/lang/no-NO.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Neste bilde" IDS_TOOLTIP_PREV_PIC "Forrige bilde" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Forstørre (+)" IDS_TOOLTIP_ZOOM_OUT "Forminske (-)" IDS_TOOLTIP_ROT_CLOCKW "Med urviseren (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Dreie mot urviseren (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Skriv ut (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Lagre som... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/pl-PL.rc b/dll/win32/shimgvw/lang/pl-PL.rc index 01c03a2b6fc..d5868906fdc 100644 --- a/dll/win32/shimgvw/lang/pl-PL.rc +++ b/dll/win32/shimgvw/lang/pl-PL.rc @@ -14,12 +14,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Następny obraz" IDS_TOOLTIP_PREV_PIC "Poprzedni obraz" + IDS_TOOLTIP_BEST_FIT "Rozmiar dopasowany optymalnie (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Rozmiar rzeczywisty (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Rozpocznij pokaz slajdów (F11)" IDS_TOOLTIP_ZOOM_IN "Powiększ (+)" IDS_TOOLTIP_ZOOM_OUT "Pomniejsz (-)" IDS_TOOLTIP_ROT_CLOCKW "Obróć zgodnie z ruchem wskazówek zegara (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Obróć przeciwnie do ruchu wskazówek zegara (Ctrl+L)" + IDS_TOOLTIP_DELETE "Usuń (Delete)" IDS_TOOLTIP_PRINT "Drukuj (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Zapisz jako... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Zamyka ten program i otwiera obraz w celu edycji (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Pomoc (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/pt-PT.rc b/dll/win32/shimgvw/lang/pt-PT.rc index ba02254631f..0d4b4b9fa4a 100644 --- a/dll/win32/shimgvw/lang/pt-PT.rc +++ b/dll/win32/shimgvw/lang/pt-PT.rc @@ -14,12 +14,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Próxima imagem" IDS_TOOLTIP_PREV_PIC "Imagem anterior" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Zoom (+)" IDS_TOOLTIP_ZOOM_OUT "Zoom (-)" IDS_TOOLTIP_ROT_CLOCKW "Girar no sentido dos ponteiros do relógio(Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Girar no sentido anti-horário (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Imprimir (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Guardar como... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/ro-RO.rc b/dll/win32/shimgvw/lang/ro-RO.rc index 1dee13cca8c..b8a0de3c3e0 100644 --- a/dll/win32/shimgvw/lang/ro-RO.rc +++ b/dll/win32/shimgvw/lang/ro-RO.rc @@ -16,12 +16,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Imaginea următare" IDS_TOOLTIP_PREV_PIC "Imaginea precedentă" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Mărire (+)" IDS_TOOLTIP_ZOOM_OUT "Micșorare (-)" IDS_TOOLTIP_ROT_CLOCKW "Rotire în sens orar (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Rotire în sens antiorar (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Imprimă (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Păstrare în… (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/ru-RU.rc b/dll/win32/shimgvw/lang/ru-RU.rc index da5bba3f3f4..05fe4508973 100644 --- a/dll/win32/shimgvw/lang/ru-RU.rc +++ b/dll/win32/shimgvw/lang/ru-RU.rc @@ -9,12 +9,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Следующее изображение" IDS_TOOLTIP_PREV_PIC "Предыдущее изображение" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Увеличить (+)" IDS_TOOLTIP_ZOOM_OUT "Уменьшить (-)" IDS_TOOLTIP_ROT_CLOCKW "Повернуть по часовой стрелке (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Повернуть против часовой стрелки (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Печать (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Сохранить как... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/sk-SK.rc b/dll/win32/shimgvw/lang/sk-SK.rc index 3216f9142ca..8c802a0da57 100644 --- a/dll/win32/shimgvw/lang/sk-SK.rc +++ b/dll/win32/shimgvw/lang/sk-SK.rc @@ -13,12 +13,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Nasledujúci obrázok" IDS_TOOLTIP_PREV_PIC "Predchádzajúci obrázok" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Priblížiť (+)" IDS_TOOLTIP_ZOOM_OUT "Vzdialiť (-)" IDS_TOOLTIP_ROT_CLOCKW "Otočiť v smere hodinových ručičiek (Ctrl+K)" // Otočiť vpravo IDS_TOOLTIP_ROT_COUNCW "Otočiť proti smeru hodinových ručičiek (Ctrl+L)" // Otočiť vľavo + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Vytlačiť (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Uložiť ako... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/sq-AL.rc b/dll/win32/shimgvw/lang/sq-AL.rc index 79854867665..4bb22218a2b 100644 --- a/dll/win32/shimgvw/lang/sq-AL.rc +++ b/dll/win32/shimgvw/lang/sq-AL.rc @@ -13,12 +13,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Fotoja Tjetër" IDS_TOOLTIP_PREV_PIC "Fotoja Mëparshme" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Zoom Brënda (+)" IDS_TOOLTIP_ZOOM_OUT "Zoom Jashtë (-)" IDS_TOOLTIP_ROT_CLOCKW "Rrotullo KrahAkrepave (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Rrotullo kundërKrahAkrepave (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Printo (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Ruaj Si... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/tr-TR.rc b/dll/win32/shimgvw/lang/tr-TR.rc index 13f5db98659..5c36fba7fd8 100644 --- a/dll/win32/shimgvw/lang/tr-TR.rc +++ b/dll/win32/shimgvw/lang/tr-TR.rc @@ -11,12 +11,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Sonraki Resim" IDS_TOOLTIP_PREV_PIC "Önceki Resim" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Yakınlaştır (+)" IDS_TOOLTIP_ZOOM_OUT "Uzaklaştır (-)" IDS_TOOLTIP_ROT_CLOCKW "Saat Yönünde Döndür (Denetim+K)" IDS_TOOLTIP_ROT_COUNCW "Saat Yönünün Tersi Yönünde Döndür (Denetim+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Yazdır (Denetim+P)" IDS_TOOLTIP_SAVEAS "Ayrı Sakla... (Denetim+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/uk-UA.rc b/dll/win32/shimgvw/lang/uk-UA.rc index 9202a26843f..cfce26019ab 100644 --- a/dll/win32/shimgvw/lang/uk-UA.rc +++ b/dll/win32/shimgvw/lang/uk-UA.rc @@ -17,12 +17,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "Наступне зображення" IDS_TOOLTIP_PREV_PIC "Попереднє зображення" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "Збільшити (+)" IDS_TOOLTIP_ZOOM_OUT "Зменшити (-)" IDS_TOOLTIP_ROT_CLOCKW "Повернути за годинниковою стрілкою (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "Повернути проти годинникової стрілки (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "Друк (Ctrl+P)" IDS_TOOLTIP_SAVEAS "Зберегти як... (Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/zh-CN.rc b/dll/win32/shimgvw/lang/zh-CN.rc index 40cc06efc68..a5657c34982 100644 --- a/dll/win32/shimgvw/lang/zh-CN.rc +++ b/dll/win32/shimgvw/lang/zh-CN.rc @@ -12,12 +12,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "下一张图片" IDS_TOOLTIP_PREV_PIC "上一张图片" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "放大 (+)" IDS_TOOLTIP_ZOOM_OUT "缩小 (-)" IDS_TOOLTIP_ROT_CLOCKW "顺时针旋转 (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "逆时针旋转 (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "打印 (Ctrl+P)" IDS_TOOLTIP_SAVEAS "另存为...(Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/lang/zh-TW.rc b/dll/win32/shimgvw/lang/zh-TW.rc index ec582d15a71..f03f47fa166 100644 --- a/dll/win32/shimgvw/lang/zh-TW.rc +++ b/dll/win32/shimgvw/lang/zh-TW.rc @@ -11,12 +11,18 @@ BEGIN /* Tooltips */ IDS_TOOLTIP_NEXT_PIC "下一張圖片" IDS_TOOLTIP_PREV_PIC "上一張圖片" + IDS_TOOLTIP_BEST_FIT "Best fit to window (Ctrl+B)" + IDS_TOOLTIP_REAL_SIZE "Actual size (Ctrl+A)" + IDS_TOOLTIP_SLIDE_SHOW "Start slideshow (F11)" IDS_TOOLTIP_ZOOM_IN "放大 (+)" IDS_TOOLTIP_ZOOM_OUT "縮小 (-)" IDS_TOOLTIP_ROT_CLOCKW "順時針旋轉 (Ctrl+K)" IDS_TOOLTIP_ROT_COUNCW "逆時針旋轉 (Ctrl+L)" + IDS_TOOLTIP_DELETE "Delete (DEL)" IDS_TOOLTIP_PRINT "列印 (Ctrl+P)" IDS_TOOLTIP_SAVEAS "另存新檔...(Ctrl+S)" + IDS_TOOLTIP_MODIFY "Modify (Ctrl+E)" + IDS_TOOLTIP_HELP_TOC "Help topics (F1)" END STRINGTABLE diff --git a/dll/win32/shimgvw/res/best_fit.bmp b/dll/win32/shimgvw/res/best_fit.bmp new file mode 100644 index 00000000000..232747daa6e Binary files /dev/null and b/dll/win32/shimgvw/res/best_fit.bmp differ diff --git a/dll/win32/shimgvw/res/delete.bmp b/dll/win32/shimgvw/res/delete.bmp new file mode 100644 index 00000000000..d84cb7087ad Binary files /dev/null and b/dll/win32/shimgvw/res/delete.bmp differ diff --git a/dll/win32/shimgvw/res/help_toc.bmp b/dll/win32/shimgvw/res/help_toc.bmp new file mode 100644 index 00000000000..57a44407c74 Binary files /dev/null and b/dll/win32/shimgvw/res/help_toc.bmp differ diff --git a/dll/win32/shimgvw/res/modify.bmp b/dll/win32/shimgvw/res/modify.bmp new file mode 100644 index 00000000000..6956cdb9aff Binary files /dev/null and b/dll/win32/shimgvw/res/modify.bmp differ diff --git a/dll/win32/shimgvw/res/real_size.bmp b/dll/win32/shimgvw/res/real_size.bmp new file mode 100644 index 00000000000..7834e010486 Binary files /dev/null and b/dll/win32/shimgvw/res/real_size.bmp differ diff --git a/dll/win32/shimgvw/res/slide_show.bmp b/dll/win32/shimgvw/res/slide_show.bmp new file mode 100644 index 00000000000..50a95d8e0af Binary files /dev/null and b/dll/win32/shimgvw/res/slide_show.bmp differ diff --git a/dll/win32/shimgvw/resource.h b/dll/win32/shimgvw/resource.h index b54f96e98f8..7c005cc6760 100644 --- a/dll/win32/shimgvw/resource.h +++ b/dll/win32/shimgvw/resource.h @@ -1,39 +1,60 @@ #pragma once /* Icons */ -#define IDI_APPICON 1 +#define IDI_APP_ICON 1 #define IDI_BMP_ICON 2 #define IDI_GIF_ICON 3 #define IDI_JPG_ICON 4 #define IDI_PNG_ICON 5 -#define IDB_PREVICON 50 -#define IDB_NEXTICON 51 -#define IDB_ZOOMPICON 52 -#define IDB_ZOOMMICON 53 -#define IDB_SAVEICON 54 -#define IDB_PRINTICON 55 -#define IDB_ROT1ICON 56 -#define IDB_ROT2ICON 57 +/* Toolbar images */ +#define IDB_PREV_PIC 50 +#define IDB_NEXT_PIC 51 +#define IDB_BEST_FIT 52 +#define IDB_REAL_SIZE 53 +#define IDB_SLIDE_SHOW 54 +#define IDB_ZOOM_IN 55 +#define IDB_ZOOM_OUT 56 +#define IDB_ROT_CLOCKW 57 +#define IDB_ROT_COUNCW 58 +#define IDB_DELETE 59 +#define IDB_PRINT 60 +#define IDB_SAVEAS 61 +#define IDB_MODIFY 62 +#define IDB_HELP_TOC 63 /* ToolBar buttons */ -#define IDC_PREV 500 -#define IDC_NEXT 501 -#define IDC_ZOOMP 502 -#define IDC_ZOOMM 503 -#define IDC_SAVE 504 -#define IDC_PRINT 505 -#define IDC_ROT1 506 -#define IDC_ROT2 507 - -#define TBICON_PREV 0 -#define TBICON_NEXT 1 -#define TBICON_ZOOMP 2 -#define TBICON_ZOOMM 3 -#define TBICON_SAVE 4 -#define TBICON_PRINT 5 -#define TBICON_ROT1 6 -#define TBICON_ROT2 7 +#define IDC_TOOL_BASE 500 + +#define IDC_PREV_PIC (IDC_TOOL_BASE + 0) +#define IDC_NEXT_PIC (IDC_TOOL_BASE + 1) +#define IDC_BEST_FIT (IDC_TOOL_BASE + 2) +#define IDC_REAL_SIZE (IDC_TOOL_BASE + 3) +#define IDC_SLIDE_SHOW (IDC_TOOL_BASE + 4) +#define IDC_ZOOM_IN (IDC_TOOL_BASE + 5) +#define IDC_ZOOM_OUT (IDC_TOOL_BASE + 6) +#define IDC_ROT_CLOCKW (IDC_TOOL_BASE + 7) +#define IDC_ROT_COUNCW (IDC_TOOL_BASE + 8) +#define IDC_DELETE (IDC_TOOL_BASE + 9) +#define IDC_PRINT (IDC_TOOL_BASE + 10) +#define IDC_SAVEAS (IDC_TOOL_BASE + 11) +#define IDC_MODIFY (IDC_TOOL_BASE + 12) +#define IDC_HELP_TOC (IDC_TOOL_BASE + 13) + +#define TBICON_PREV_PIC 0 +#define TBICON_NEXT_PIC 1 +#define TBICON_BEST_FIT 2 +#define TBICON_REAL_SIZE 3 +#define TBICON_SLIDE_SHOW 4 +#define TBICON_ZOOM_IN 5 +#define TBICON_ZOOM_OUT 6 +#define TBICON_ROT_CLOCKW 7 +#define TBICON_ROT_COUNCW 8 +#define TBICON_DELETE 9 +#define TBICON_PRINT 10 +#define TBICON_SAVEAS 11 +#define TBICON_MODIFY 12 +#define TBICON_HELP_TOC 13 /* Strings */ #define IDS_APPTITLE 100 @@ -51,11 +72,20 @@ #define IDS_WMF_FILE 307 /* Tooltips strings */ -#define IDS_TOOLTIP_NEXT_PIC 400 -#define IDS_TOOLTIP_PREV_PIC 401 -#define IDS_TOOLTIP_ZOOM_IN 402 -#define IDS_TOOLTIP_ZOOM_OUT 404 -#define IDS_TOOLTIP_ROT_CLOCKW 405 -#define IDS_TOOLTIP_ROT_COUNCW 406 -#define IDS_TOOLTIP_PRINT 407 -#define IDS_TOOLTIP_SAVEAS 408 +#define IDS_TOOLTIP_PREV_PIC 400 +#define IDS_TOOLTIP_NEXT_PIC 401 +#define IDS_TOOLTIP_BEST_FIT 402 +#define IDS_TOOLTIP_REAL_SIZE 403 +#define IDS_TOOLTIP_SLIDE_SHOW 404 +#define IDS_TOOLTIP_ZOOM_IN 405 +#define IDS_TOOLTIP_ZOOM_OUT 406 +#define IDS_TOOLTIP_ROT_CLOCKW 407 +#define IDS_TOOLTIP_ROT_COUNCW 408 +#define IDS_TOOLTIP_DELETE 409 +#define IDS_TOOLTIP_PRINT 410 +#define IDS_TOOLTIP_SAVEAS 411 +#define IDS_TOOLTIP_MODIFY 412 +#define IDS_TOOLTIP_HELP_TOC 413 + +/* Keyboard accelerators */ +#define IDR_ACCELERATOR 600 diff --git a/dll/win32/shimgvw/shimgvw.c b/dll/win32/shimgvw/shimgvw.c index e06af9159d5..40723c2883f 100644 --- a/dll/win32/shimgvw/shimgvw.c +++ b/dll/win32/shimgvw/shimgvw.c @@ -43,14 +43,73 @@ WNDPROC PrevProc = NULL; HWND hDispWnd, hToolBar; /* zooming */ -#define MIN_ZOOM 10 -#define MAX_ZOOM 1600 UINT ZoomPercents = 100; + static const UINT ZoomSteps[] = { 10, 25, 50, 100, 200, 400, 800, 1600 }; +#define MIN_ZOOM ZoomSteps[0] +#define MAX_ZOOM ZoomSteps[_countof(ZoomSteps)-1] + +/* ToolBar Buttons */ +typedef struct { + DWORD idb; /* Index to bitmap */ + DWORD ids; /* Index to tooltip */ +} TB_BUTTON_CONFIG; + + /* iBitmap, idCommand, fsState, fsStyle, bReserved[2], dwData, iString */ +#define DEFINE_BTN_INFO(_name) \ + { TBICON_##_name, IDC_##_name, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 } + +#define DEFINE_BTN_SEPARATOR \ + { 15, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0 } + +/* ToolBar Buttons */ +static const TBBUTTON Buttons[] = +{ + DEFINE_BTN_INFO(PREV_PIC), + DEFINE_BTN_INFO(NEXT_PIC), + DEFINE_BTN_SEPARATOR, + DEFINE_BTN_INFO(BEST_FIT), + DEFINE_BTN_INFO(REAL_SIZE), + DEFINE_BTN_INFO(SLIDE_SHOW), + DEFINE_BTN_SEPARATOR, + DEFINE_BTN_INFO(ZOOM_IN), + DEFINE_BTN_INFO(ZOOM_OUT), + DEFINE_BTN_SEPARATOR, + DEFINE_BTN_INFO(ROT_CLOCKW), + DEFINE_BTN_INFO(ROT_COUNCW), + DEFINE_BTN_SEPARATOR, + DEFINE_BTN_INFO(DELETE), + DEFINE_BTN_INFO(PRINT), + DEFINE_BTN_INFO(SAVEAS), + DEFINE_BTN_INFO(MODIFY), + DEFINE_BTN_SEPARATOR, + DEFINE_BTN_INFO(HELP_TOC) +}; + +#define DEFINE_BTN_CONFIG(_name) { IDB_##_name, IDS_TOOLTIP_##_name } + +static const TB_BUTTON_CONFIG BtnConfig[] = +{ + DEFINE_BTN_CONFIG(PREV_PIC), + DEFINE_BTN_CONFIG(NEXT_PIC), + DEFINE_BTN_CONFIG(BEST_FIT), + DEFINE_BTN_CONFIG(REAL_SIZE), + DEFINE_BTN_CONFIG(SLIDE_SHOW), + DEFINE_BTN_CONFIG(ZOOM_IN), + DEFINE_BTN_CONFIG(ZOOM_OUT), + DEFINE_BTN_CONFIG(ROT_CLOCKW), + DEFINE_BTN_CONFIG(ROT_COUNCW), + DEFINE_BTN_CONFIG(DELETE), + DEFINE_BTN_CONFIG(PRINT), + DEFINE_BTN_CONFIG(SAVEAS), + DEFINE_BTN_CONFIG(MODIFY), + DEFINE_BTN_CONFIG(HELP_TOC) +}; + /* animation */ UINT m_nFrameIndex = 0; UINT m_nFrameCount = 0; @@ -203,11 +262,11 @@ static void ZoomInOrOut(BOOL bZoomIn) ZoomPercents = ZoomSteps[i]; /* update tool bar buttons */ - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMM, TRUE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_OUT, TRUE); if (ZoomPercents >= MAX_ZOOM) - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMP, FALSE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_IN, FALSE); else - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMP, TRUE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_IN, TRUE); } else /* zoom out */ { @@ -224,11 +283,11 @@ static void ZoomInOrOut(BOOL bZoomIn) ZoomPercents = ZoomSteps[i]; /* update tool bar buttons */ - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMP, TRUE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_IN, TRUE); if (ZoomPercents <= MIN_ZOOM) - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMM, FALSE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_OUT, FALSE); else - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_ZOOMM, TRUE); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_ZOOM_OUT, TRUE); } /* redraw */ @@ -278,22 +337,6 @@ static void ResetZoom(void) } } -/* ToolBar Buttons */ -static const TBBUTTON Buttons [] = -{ /* iBitmap, idCommand, fsState, fsStyle, bReserved[2], dwData, iString */ - {TBICON_PREV, IDC_PREV, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {TBICON_NEXT, IDC_NEXT, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {15, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, - {TBICON_ZOOMP, IDC_ZOOMP, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {TBICON_ZOOMM, IDC_ZOOMM, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {15, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, - {TBICON_ROT1, IDC_ROT1, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {TBICON_ROT2, IDC_ROT2, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {15, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, - {TBICON_SAVE, IDC_SAVE, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, - {TBICON_PRINT, IDC_PRINT, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, -}; - static void pLoadImage(LPWSTR szOpenFileName) { /* check file presence */ @@ -439,8 +482,8 @@ pPrintImage(HWND hwnd) static VOID EnableToolBarButtons(BOOL bEnable) { - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_SAVE, bEnable); - SendMessage(hToolBar, TB_ENABLEBUTTON, IDC_PRINT, bEnable); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_SAVEAS, bEnable); + SendMessageW(hToolBar, TB_ENABLEBUTTON, IDC_PRINT, bEnable); } static VOID @@ -598,6 +641,9 @@ pFreeFileList(SHIMGVW_FILENODE *root) { SHIMGVW_FILENODE *conductor; + if (!root) + return; + root->Prev->Next = NULL; root->Prev = NULL; @@ -799,7 +845,7 @@ ImageView_SaveSettings(HWND hwnd) static BOOL ImageView_CreateToolBar(HWND hwnd) { - INT numButtons = sizeof(Buttons) / sizeof(Buttons[0]); + int n; hToolBar = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, WS_CHILD | WS_VISIBLE | TBSTYLE_FLAT | CCS_BOTTOM | TBSTYLE_TOOLTIPS, @@ -809,45 +855,25 @@ ImageView_CreateToolBar(HWND hwnd) { HIMAGELIST hImageList; - SendMessage(hToolBar, TB_SETEXTENDEDSTYLE, - 0, TBSTYLE_EX_HIDECLIPPEDBUTTONS); + SendMessageW(hToolBar, TB_SETEXTENDEDSTYLE, + 0, TBSTYLE_EX_HIDECLIPPEDBUTTONS); - SendMessage(hToolBar, TB_BUTTONSTRUCTSIZE, - sizeof(Buttons[0]), 0); + SendMessageW(hToolBar, TB_BUTTONSTRUCTSIZE, + sizeof(Buttons[0]), 0); hImageList = ImageList_Create(TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, ILC_MASK | ILC_COLOR24, 1, 1); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_PREVICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_NEXTICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_ZOOMPICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_ZOOMMICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_SAVEICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_PRINTICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_ROT1ICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - - ImageList_AddMasked(hImageList, LoadImage(hInstance, MAKEINTRESOURCE(IDB_ROT2ICON), IMAGE_BITMAP, - TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); - if (hImageList == NULL) return FALSE; - ImageList_Destroy((HIMAGELIST)SendMessage(hToolBar, TB_SETIMAGELIST, - 0, (LPARAM)hImageList)); + for (n = 0; n < _countof(BtnConfig); n++) + { + ImageList_AddMasked(hImageList, LoadImageW(hInstance, MAKEINTRESOURCEW(BtnConfig[n].idb), IMAGE_BITMAP, + TB_IMAGE_WIDTH, TB_IMAGE_HEIGHT, LR_DEFAULTCOLOR), RGB(255, 255, 255)); + } + + ImageList_Destroy((HIMAGELIST)SendMessageW(hToolBar, TB_SETIMAGELIST, + 0, (LPARAM)hImageList)); - SendMessage(hToolBar, TB_ADDBUTTONS, - numButtons, (LPARAM)Buttons); + SendMessageW(hToolBar, TB_ADDBUTTONS, _countof(Buttons), (LPARAM)Buttons); return TRUE; } @@ -924,7 +950,7 @@ ImageView_OnSize(HWND hwnd, UINT state, INT cx, INT cy) { RECT rc; - SendMessage(hToolBar, TB_AUTOSIZE, 0, 0); + SendMessageW(hToolBar, TB_AUTOSIZE, 0, 0); GetWindowRect(hToolBar, &rc); @@ -949,46 +975,41 @@ ImageView_WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) return 0L; } - case WM_KEYDOWN: - switch (LOWORD(wParam)) - { - case VK_LEFT: - PostMessage(hwnd, WM_COMMAND, MAKEWPARAM(IDC_PREV, BN_CLICKED), (LPARAM)NULL); - break; - - case VK_RIGHT: - PostMessage(hwnd, WM_COMMAND, MAKEWPARAM(IDC_NEXT, BN_CLICKED), (LPARAM)NULL); - break; - } - break; - case WM_COMMAND: { - switch (wParam) + switch (LOWORD(wParam)) { - case IDC_PREV: - { + case IDC_PREV_PIC: currentFile = currentFile->Prev; pLoadImageFromNode(currentFile, hwnd); - } - break; + break; - case IDC_NEXT: - { + case IDC_NEXT_PIC: currentFile = currentFile->Next; pLoadImageFromNode(currentFile, hwnd); - } - break; + break; + + case IDC_BEST_FIT: + DPRINT1("IDC_BEST_FIT unimplemented\n"); + break; + + case IDC_REAL_SIZE: + DPRINT1("IDC_REAL_SIZE unimplemented\n"); + break; + + case IDC_SLIDE_SHOW: + DPRINT1("IDC_SLIDE_SHOW unimplemented\n"); + break; - case IDC_ZOOMP: + case IDC_ZOOM_IN: ZoomInOrOut(TRUE); break; - case IDC_ZOOMM: + case IDC_ZOOM_OUT: ZoomInOrOut(FALSE); break; - case IDC_SAVE: + case IDC_SAVEAS: pSaveImageAs(hwnd); break; @@ -996,25 +1017,21 @@ ImageView_WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) pPrintImage(hwnd); break; - case IDC_ROT1: - { + case IDC_ROT_CLOCKW: if (image) { GdipImageRotateFlip(image, Rotate270FlipNone); ImageView_UpdateWindow(hwnd); } break; - } - - case IDC_ROT2: - { + + case IDC_ROT_COUNCW: if (image) { GdipImageRotateFlip(image, Rotate90FlipNone); ImageView_UpdateWindow(hwnd); } break; - } } } break; @@ -1033,40 +1050,12 @@ ImageView_WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) { case TTN_GETDISPINFO: { - LPTOOLTIPTEXT lpttt; - UINT idButton; + LPTOOLTIPTEXTW lpttt; - lpttt = (LPTOOLTIPTEXT)lParam; - idButton = (UINT)lpttt->hdr.idFrom; + lpttt = (LPTOOLTIPTEXTW)lParam; lpttt->hinst = hInstance; - switch (idButton) - { - case IDC_PREV: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_PREV_PIC); - break; - case IDC_NEXT: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_NEXT_PIC); - break; - case IDC_ZOOMP: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_ZOOM_IN); - break; - case IDC_ZOOMM: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_ZOOM_OUT); - break; - case IDC_SAVE: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_SAVEAS); - break; - case IDC_PRINT: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_PRINT); - break; - case IDC_ROT1: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_ROT_COUNCW); - break; - case IDC_ROT2: - lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_ROT_CLOCKW); - break; - } + lpttt->lpszText = MAKEINTRESOURCEW(BtnConfig[lpttt->hdr.idFrom - IDC_TOOL_BASE].ids); return TRUE; } } @@ -1104,11 +1093,15 @@ ImageView_CreateWindow(HWND hwnd, LPWSTR szFileName) { struct GdiplusStartupInput gdiplusStartupInput; ULONG_PTR gdiplusToken; - WNDCLASS WndClass = {0}; - TCHAR szBuf[512]; + WNDCLASSW WndClass = {0}; + WCHAR szBuf[512]; WCHAR szInitialFile[MAX_PATH]; HWND hMainWnd; MSG msg; + HACCEL hKbdAccel; + INITCOMMONCONTROLSEX Icc = { .dwSize = sizeof(Icc), .dwICC = ICC_WIN95_CLASSES }; + + InitCommonControlsEx(&Icc); if (!ImageView_LoadSettings()) { @@ -1129,24 +1122,24 @@ ImageView_CreateWindow(HWND hwnd, LPWSTR szFileName) pLoadImage(szFileName); // Create the window - WndClass.lpszClassName = _T("shimgvw_window"); + WndClass.lpszClassName = L"shimgvw_window"; WndClass.lpfnWndProc = ImageView_WndProc; WndClass.hInstance = hInstance; WndClass.style = CS_HREDRAW | CS_VREDRAW; - WndClass.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_APPICON)); + WndClass.hIcon = LoadIconW(hInstance, MAKEINTRESOURCEW(IDI_APP_ICON)); WndClass.hCursor = LoadCursor(NULL, IDC_ARROW); WndClass.hbrBackground = NULL; /* less flicker */ - if (!RegisterClass(&WndClass)) return -1; + if (!RegisterClassW(&WndClass)) return -1; - LoadString(hInstance, IDS_APPTITLE, szBuf, sizeof(szBuf) / sizeof(TCHAR)); - hMainWnd = CreateWindow(_T("shimgvw_window"), szBuf, - WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CAPTION, - CW_USEDEFAULT, CW_USEDEFAULT, - 0, 0, NULL, NULL, hInstance, NULL); + LoadStringW(hInstance, IDS_APPTITLE, szBuf, sizeof(szBuf) / sizeof(TCHAR)); + hMainWnd = CreateWindowExW(0, L"shimgvw_window", szBuf, + WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CAPTION, + CW_USEDEFAULT, CW_USEDEFAULT, + 0, 0, NULL, NULL, hInstance, NULL); // make sure the path has no quotes on it - wcscpy(szInitialFile, szFileName); + StringCbCopyW(szInitialFile, sizeof(szInitialFile), szFileName); PathUnquoteSpacesW(szInitialFile); currentFile = pBuildFileList(szInitialFile); @@ -1155,17 +1148,29 @@ ImageView_CreateWindow(HWND hwnd, LPWSTR szFileName) pLoadImageFromNode(currentFile, hMainWnd); } + /* Create accelerator table for keystrokes */ + hKbdAccel = LoadAcceleratorsW(hInstance, MAKEINTRESOURCEW(IDR_ACCELERATOR)); + // Show it ShowWindow(hMainWnd, SW_SHOW); UpdateWindow(hMainWnd); // Message Loop - while(GetMessage(&msg,NULL,0,0)) + for (;;) { - TranslateMessage(&msg); - DispatchMessageW(&msg); + if (GetMessageW(&msg, NULL, 0, 0) <= 0) + break; + + if (!TranslateAcceleratorW(hMainWnd, hKbdAccel, &msg)) + { + TranslateMessage(&msg); + DispatchMessageW(&msg); + } } + /* Destroy accelerator table */ + DestroyAcceleratorTable(hKbdAccel); + pFreeFileList(currentFile); if (image) diff --git a/dll/win32/shimgvw/shimgvw.rc b/dll/win32/shimgvw/shimgvw.rc index 0ea24383d57..a4ce2015bc8 100644 --- a/dll/win32/shimgvw/shimgvw.rc +++ b/dll/win32/shimgvw/shimgvw.rc @@ -13,18 +13,42 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include <reactos/manifest_hosted.rc> -IDI_APPICON ICON "res/main.ico" +IDI_APP_ICON ICON "res/main.ico" IDI_BMP_ICON ICON "res/bmp.ico" IDI_PNG_ICON ICON "res/png.ico" -IDB_PREVICON BITMAP "res/prev.bmp" -IDB_NEXTICON BITMAP "res/next.bmp" -IDB_ZOOMPICON BITMAP "res/zoomp.bmp" -IDB_ZOOMMICON BITMAP "res/zoomm.bmp" -IDB_SAVEICON BITMAP "res/save.bmp" -IDB_PRINTICON BITMAP "res/print.bmp" -IDB_ROT1ICON BITMAP "res/rot1.bmp" -IDB_ROT2ICON BITMAP "res/rot2.bmp" +IDB_PREV_PIC BITMAP "res/prev.bmp" +IDB_NEXT_PIC BITMAP "res/next.bmp" +IDB_BEST_FIT BITMAP "res/best_fit.bmp" +IDB_REAL_SIZE BITMAP "res/real_size.bmp" +IDB_SLIDE_SHOW BITMAP "res/slide_show.bmp" +IDB_ZOOM_IN BITMAP "res/zoomp.bmp" +IDB_ZOOM_OUT BITMAP "res/zoomm.bmp" +IDB_ROT_CLOCKW BITMAP "res/rot1.bmp" +IDB_ROT_COUNCW BITMAP "res/rot2.bmp" +IDB_DELETE BITMAP "res/delete.bmp" +IDB_PRINT BITMAP "res/print.bmp" +IDB_SAVEAS BITMAP "res/save.bmp" +IDB_MODIFY BITMAP "res/modify.bmp" +IDB_HELP_TOC BITMAP "res/help_toc.bmp" + +IDR_ACCELERATOR ACCELERATORS +BEGIN + VK_LEFT, IDC_PREV_PIC, VIRTKEY + VK_RIGHT, IDC_NEXT_PIC, VIRTKEY + "B", IDC_BEST_FIT, VIRTKEY, CONTROL + "A", IDC_REAL_SIZE, VIRTKEY, CONTROL + VK_F11, IDC_SLIDE_SHOW, VIRTKEY + VK_ADD, IDC_ZOOM_IN, VIRTKEY + VK_SUBTRACT, IDC_ZOOM_OUT, VIRTKEY + "K", IDC_ROT_COUNCW, VIRTKEY, CONTROL + "L", IDC_ROT_COUNCW, VIRTKEY, CONTROL + VK_DELETE, IDC_DELETE, VIRTKEY + "P", IDC_PRINT, VIRTKEY, CONTROL + "S", IDC_SAVEAS, VIRTKEY, CONTROL + "E", IDC_MODIFY, VIRTKEY, CONTROL + VK_F1, IDC_HELP_TOC, VIRTKEY +END /* UTF-8 */ #pragma code_page(65001)
3 years, 10 months
1
0
0
0
[reactos] 01/01: [PSDK] winbase.h: Update LoadLibraryEx() dwFlags value defines (#3153)
by Serge Gautherie
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=986cc5e8e29b6c670b007…
commit 986cc5e8e29b6c670b0072c8883b929cca1eae3a Author: Serge Gautherie <32623169+SergeGautherie(a)users.noreply.github.com> AuthorDate: Sat Feb 13 15:16:49 2021 +0100 Commit: GitHub <noreply(a)github.com> CommitDate: Sat Feb 13 23:16:49 2021 +0900 [PSDK] winbase.h: Update LoadLibraryEx() dwFlags value defines (#3153) * Deci-to-Hexa. * Add more values. * Add a Vista check. --- sdk/include/psdk/winbase.h | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/sdk/include/psdk/winbase.h b/sdk/include/psdk/winbase.h index 1e683eeb37f..445c255b0ea 100644 --- a/sdk/include/psdk/winbase.h +++ b/sdk/include/psdk/winbase.h @@ -334,17 +334,31 @@ extern "C" { #define PROCESS_HEAP_ENTRY_MOVEABLE 16 #define PROCESS_HEAP_ENTRY_DDESHARE 32 -#define DONT_RESOLVE_DLL_REFERENCES 1 -#define LOAD_LIBRARY_AS_DATAFILE 2 -#define LOAD_WITH_ALTERED_SEARCH_PATH 8 -#define LOAD_IGNORE_CODE_AUTHZ_LEVEL 16 -#define LOAD_LIBRARY_AS_IMAGE_RESOURCE 32 -#define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 64 -#define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 256 -#define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 512 -#define LOAD_LIBRARY_SEARCH_USER_DIRS 1024 -#define LOAD_LIBRARY_SEARCH_SYSTEM32 2048 -#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 4096 +// LoadLibraryEx() dwFlags. +#define DONT_RESOLVE_DLL_REFERENCES 0x00000001 +#define LOAD_LIBRARY_AS_DATAFILE 0x00000002 +// #define LOAD_PACKAGED_LIBRARY 0x00000004 // Internal use only. +#define LOAD_WITH_ALTERED_SEARCH_PATH 0x00000008 +#define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x00000010 +#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) +#define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x00000020 +#define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x00000040 +#define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x00000080 +#define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x00000100 +#define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x00000200 +#define LOAD_LIBRARY_SEARCH_USER_DIRS 0x00000400 +#define LOAD_LIBRARY_SEARCH_SYSTEM32 0x00000800 +#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x00001000 +#endif // _WIN32_WINNT_VISTA +#if (NTDDI_VERSION >= NTDDI_WIN10_RS1) +#define LOAD_LIBRARY_SAFE_CURRENT_DIRS 0x00002000 +#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER 0x00004000 +#else // NTDDI_WIN10_RS1 +#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER LOAD_LIBRARY_SEARCH_SYSTEM32 +#endif // NTDDI_WIN10_RS1 +#if (NTDDI_VERSION >= NTDDI_WIN10_RS2) +#define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000 +#endif // NTDDI_WIN10_RS2 #define LMEM_FIXED 0 #define LMEM_MOVEABLE 2
3 years, 10 months
1
0
0
0
[reactos] 01/01: [NOTEPAD] Implement File->New Window
by Robert Naumann
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b774ec5ca62918dc698f2…
commit b774ec5ca62918dc698f2c34d616c4b4c26984fa Author: Robert Naumann <gonzomdx(a)gmail.com> AuthorDate: Thu Feb 11 22:04:36 2021 +0100 Commit: Robert Naumann <gonzomdx(a)gmail.com> CommitDate: Fri Feb 12 20:14:03 2021 +0100 [NOTEPAD] Implement File->New Window *Windows starts a new own's instance too, when clicking on "New Window" (Tested by @HBelusca) --- base/applications/notepad/dialog.c | 7 +++++++ base/applications/notepad/dialog.h | 1 + base/applications/notepad/lang/bg-BG.rc | 2 ++ base/applications/notepad/lang/cs-CZ.rc | 2 ++ base/applications/notepad/lang/da-DK.rc | 2 ++ base/applications/notepad/lang/de-DE.rc | 2 ++ base/applications/notepad/lang/el-GR.rc | 2 ++ base/applications/notepad/lang/en-US.rc | 2 ++ base/applications/notepad/lang/es-ES.rc | 2 ++ base/applications/notepad/lang/et-EE.rc | 2 ++ base/applications/notepad/lang/eu-ES.rc | 2 ++ base/applications/notepad/lang/fi-FI.rc | 2 ++ base/applications/notepad/lang/fr-FR.rc | 2 ++ base/applications/notepad/lang/he-IL.rc | 2 ++ base/applications/notepad/lang/hi-IN.rc | 2 ++ base/applications/notepad/lang/hu-HU.rc | 2 ++ base/applications/notepad/lang/hy-AM.rc | 2 ++ base/applications/notepad/lang/id-ID.rc | 2 ++ base/applications/notepad/lang/it-IT.rc | 2 ++ base/applications/notepad/lang/ja-JP.rc | 2 ++ base/applications/notepad/lang/lt-LT.rc | 2 ++ base/applications/notepad/lang/ms-MY.rc | 2 ++ base/applications/notepad/lang/nl-NL.rc | 2 ++ base/applications/notepad/lang/no-NO.rc | 2 ++ base/applications/notepad/lang/pl-PL.rc | 2 ++ base/applications/notepad/lang/pt-BR.rc | 2 ++ base/applications/notepad/lang/pt-PT.rc | 2 ++ base/applications/notepad/lang/ro-RO.rc | 2 ++ base/applications/notepad/lang/ru-RU.rc | 2 ++ base/applications/notepad/lang/sk-SK.rc | 2 ++ base/applications/notepad/lang/sl-SI.rc | 2 ++ base/applications/notepad/lang/sq-AL.rc | 2 ++ base/applications/notepad/lang/sv-SE.rc | 2 ++ base/applications/notepad/lang/th-TH.rc | 2 ++ base/applications/notepad/lang/tr-TR.rc | 2 ++ base/applications/notepad/lang/uk-UA.rc | 2 ++ base/applications/notepad/lang/uz-UZ.rc | 2 ++ base/applications/notepad/lang/zh-CN.rc | 2 ++ base/applications/notepad/lang/zh-TW.rc | 2 ++ base/applications/notepad/main.c | 1 + base/applications/notepad/notepad_res.h | 11 ++++++----- 41 files changed, 89 insertions(+), 5 deletions(-) diff --git a/base/applications/notepad/dialog.c b/base/applications/notepad/dialog.c index ca2711c8513..c5b743e0ba4 100644 --- a/base/applications/notepad/dialog.c +++ b/base/applications/notepad/dialog.c @@ -415,6 +415,13 @@ VOID DIALOG_FileNew(VOID) } } +VOID DIALOG_FileNewWindow(VOID) +{ + TCHAR pszNotepadExe[MAX_PATH]; + GetModuleFileName(NULL, pszNotepadExe, ARRAYSIZE(pszNotepadExe)); + ShellExecute(NULL, NULL, pszNotepadExe, NULL, NULL, SW_SHOWNORMAL); +} + VOID DIALOG_FileOpen(VOID) { OPENFILENAME openfilename; diff --git a/base/applications/notepad/dialog.h b/base/applications/notepad/dialog.h index f86c522373c..98104dcc6e5 100644 --- a/base/applications/notepad/dialog.h +++ b/base/applications/notepad/dialog.h @@ -21,6 +21,7 @@ #pragma once VOID DIALOG_FileNew(VOID); +VOID DIALOG_FileNewWindow(VOID); VOID DIALOG_FileOpen(VOID); BOOL DIALOG_FileSave(VOID); BOOL DIALOG_FileSaveAs(VOID); diff --git a/base/applications/notepad/lang/bg-BG.rc b/base/applications/notepad/lang/bg-BG.rc index 33be11f9be4..c1e3d5a2905 100644 --- a/base/applications/notepad/lang/bg-BG.rc +++ b/base/applications/notepad/lang/bg-BG.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Файл" BEGIN MENUITEM "&Нов\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Отваряне\tCtrl+O", CMD_OPEN MENUITEM "&Запис\tCtrl+S", CMD_SAVE MENUITEM "Запис &като...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/cs-CZ.rc b/base/applications/notepad/lang/cs-CZ.rc index 6cb85e4ab33..ab50a72b33a 100644 --- a/base/applications/notepad/lang/cs-CZ.rc +++ b/base/applications/notepad/lang/cs-CZ.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Soubor" BEGIN MENUITEM "&Nový\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Otevřít\tCtrl+O", CMD_OPEN MENUITEM "&Uložit\tCtrl+S", CMD_SAVE MENUITEM "Uložit j&ako...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/da-DK.rc b/base/applications/notepad/lang/da-DK.rc index 0c9354b15e0..009232fe32a 100644 --- a/base/applications/notepad/lang/da-DK.rc +++ b/base/applications/notepad/lang/da-DK.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fil" BEGIN MENUITEM "&Ny\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "Å&bn...\tCtrl+O", CMD_OPEN MENUITEM "&Gem\tCtrl+S", CMD_SAVE MENUITEM "Gem so&m...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/de-DE.rc b/base/applications/notepad/lang/de-DE.rc index 868ee87f970..4ac8cd43173 100644 --- a/base/applications/notepad/lang/de-DE.rc +++ b/base/applications/notepad/lang/de-DE.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Datei" BEGIN MENUITEM "&Neu\tStrg+N", CMD_NEW + MENUITEM "&Neues Fenster\tStrg+Umschalt+N", CMD_NEW_WINDOW MENUITEM "Ö&ffnen\tStrg+O", CMD_OPEN MENUITEM "&Speichern\tStrg+S", CMD_SAVE MENUITEM "Speichern &unter...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/el-GR.rc b/base/applications/notepad/lang/el-GR.rc index 936cc78bc2f..8570a067ccc 100644 --- a/base/applications/notepad/lang/el-GR.rc +++ b/base/applications/notepad/lang/el-GR.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Αρχείο" BEGIN MENUITEM "&Νέο\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Άνοιγμα\tCtrl+O", CMD_OPEN MENUITEM "Αποθήκευ&ση\tCtrl+S", CMD_SAVE MENUITEM "Αποθήκευση &ως...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/en-US.rc b/base/applications/notepad/lang/en-US.rc index 440aa98dc93..e51132777e9 100644 --- a/base/applications/notepad/lang/en-US.rc +++ b/base/applications/notepad/lang/en-US.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&File" BEGIN MENUITEM "&New\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Open...\tCtrl+O", CMD_OPEN MENUITEM "&Save\tCtrl+S", CMD_SAVE MENUITEM "Save &As...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/es-ES.rc b/base/applications/notepad/lang/es-ES.rc index f04c9de272e..c614cc08880 100644 --- a/base/applications/notepad/lang/es-ES.rc +++ b/base/applications/notepad/lang/es-ES.rc @@ -10,6 +10,7 @@ BEGIN "^T", CMD_GOTO "^R", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^A", CMD_OPEN "^P", CMD_PRINT "^G", CMD_SAVE @@ -25,6 +26,7 @@ BEGIN POPUP "&Archivo" BEGIN MENUITEM "&Nuevo\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Abrir\tCtrl+A", CMD_OPEN MENUITEM "&Guardar\tCtrl+G", CMD_SAVE MENUITEM "Guardar &como...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/et-EE.rc b/base/applications/notepad/lang/et-EE.rc index 3ee99c3f6c6..0938330ec9f 100644 --- a/base/applications/notepad/lang/et-EE.rc +++ b/base/applications/notepad/lang/et-EE.rc @@ -16,6 +16,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -31,6 +32,7 @@ BEGIN POPUP "&Fail" BEGIN MENUITEM "&Uus\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Ava...\tCtrl+O", CMD_OPEN MENUITEM "&Salvesta\tCtrl+S", CMD_SAVE MENUITEM "Salvesta &nimega...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/eu-ES.rc b/base/applications/notepad/lang/eu-ES.rc index 52a97c5b265..81bb93e9494 100644 --- a/base/applications/notepad/lang/eu-ES.rc +++ b/base/applications/notepad/lang/eu-ES.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fitxategia" BEGIN MENUITEM "&Berria\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Ireki\tCtrl+O", CMD_OPEN MENUITEM "&Gorde\tCtrl+S", CMD_SAVE MENUITEM "Gorde &honela...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/fi-FI.rc b/base/applications/notepad/lang/fi-FI.rc index f4ed7a58c19..2033db321f8 100644 --- a/base/applications/notepad/lang/fi-FI.rc +++ b/base/applications/notepad/lang/fi-FI.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Tiedosto" BEGIN MENUITEM "&Uusi\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Avaa\tCtrl+O", CMD_OPEN MENUITEM "Ta&lleta\tCtrl+S", CMD_SAVE MENUITEM "Talleta &nimellä...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/fr-FR.rc b/base/applications/notepad/lang/fr-FR.rc index bcd6e371341..8a56fcca18b 100644 --- a/base/applications/notepad/lang/fr-FR.rc +++ b/base/applications/notepad/lang/fr-FR.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fichier" BEGIN MENUITEM "&Nouveau\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Ouvrir\tCtrl+O", CMD_OPEN MENUITEM "&Enregistrer\tCtrl+S", CMD_SAVE MENUITEM "Enregistrer &sous...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/he-IL.rc b/base/applications/notepad/lang/he-IL.rc index 1de08e94069..50d8259c281 100644 --- a/base/applications/notepad/lang/he-IL.rc +++ b/base/applications/notepad/lang/he-IL.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&קובץ" BEGIN MENUITEM "&חדש\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&פתח...\tCtrl+O", CMD_OPEN MENUITEM "&שמור\tCtrl+S", CMD_SAVE MENUITEM "שמור &בשם...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/hi-IN.rc b/base/applications/notepad/lang/hi-IN.rc index 246b48b073a..52827ba1131 100644 --- a/base/applications/notepad/lang/hi-IN.rc +++ b/base/applications/notepad/lang/hi-IN.rc @@ -15,6 +15,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -30,6 +31,7 @@ BEGIN POPUP "&फ़ाइल" BEGIN MENUITEM "&नया\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&खोलो...\tCtrl+O", CMD_OPEN MENUITEM "&सेव\tCtrl+S", CMD_SAVE MENUITEM "सेव &इज़...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/hu-HU.rc b/base/applications/notepad/lang/hu-HU.rc index 8c74eeaeb3b..7f3852255a4 100644 --- a/base/applications/notepad/lang/hu-HU.rc +++ b/base/applications/notepad/lang/hu-HU.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fájl" BEGIN MENUITEM "Ú&j\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "Meg&nyitás\tCtrl+O", CMD_OPEN MENUITEM "&Mentés\tCtrl+S", CMD_SAVE MENUITEM "Mentés má&sként...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/hy-AM.rc b/base/applications/notepad/lang/hy-AM.rc index 3bd24febf35..5e79d827911 100644 --- a/base/applications/notepad/lang/hy-AM.rc +++ b/base/applications/notepad/lang/hy-AM.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Ֆայլ" BEGIN MENUITEM "&Ստեղծել\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Բացել...\tCtrl+O", CMD_OPEN MENUITEM "&Պահպանել\tCtrl+S", CMD_SAVE MENUITEM "Պահպանել &ինչպես...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/id-ID.rc b/base/applications/notepad/lang/id-ID.rc index fa16cfaf6f3..442fbdea098 100644 --- a/base/applications/notepad/lang/id-ID.rc +++ b/base/applications/notepad/lang/id-ID.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "Be&rkas" BEGIN MENUITEM "Bar&u\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Buka\tCtrl+O", CMD_OPEN MENUITEM "&Simpan\tCtrl+S", CMD_SAVE MENUITEM "Simpan seb&agai...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/it-IT.rc b/base/applications/notepad/lang/it-IT.rc index 71971795285..41a51035065 100644 --- a/base/applications/notepad/lang/it-IT.rc +++ b/base/applications/notepad/lang/it-IT.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&File" BEGIN MENUITEM "&Nuovo\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Apri...\tCtrl+O", CMD_OPEN MENUITEM "&Salva\tCtrl+S", CMD_SAVE MENUITEM "Sal&va con nome...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/ja-JP.rc b/base/applications/notepad/lang/ja-JP.rc index 6f68583bc2f..eeef56b5fd3 100644 --- a/base/applications/notepad/lang/ja-JP.rc +++ b/base/applications/notepad/lang/ja-JP.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "ファイル(&F)" BEGIN MENUITEM "新規作成(&N)\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "開く(&O)...\tCtrl+O", CMD_OPEN MENUITEM "上書き保存(&S)\tCtrl+S", CMD_SAVE MENUITEM "名前を付けて保存(&A)...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/lt-LT.rc b/base/applications/notepad/lang/lt-LT.rc index 901993d9368..e0c688c536a 100644 --- a/base/applications/notepad/lang/lt-LT.rc +++ b/base/applications/notepad/lang/lt-LT.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Byla" BEGIN MENUITEM "&Nauja\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Atverti...\tCtrl+O", CMD_OPEN MENUITEM "Į&rašyti\tCtrl+S", CMD_SAVE MENUITEM "Įrašyti &kaip...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/ms-MY.rc b/base/applications/notepad/lang/ms-MY.rc index 360a9bbc2dc..202489aec77 100644 --- a/base/applications/notepad/lang/ms-MY.rc +++ b/base/applications/notepad/lang/ms-MY.rc @@ -10,6 +10,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -25,6 +26,7 @@ BEGIN POPUP "&Fail" BEGIN MENUITEM "Baru(&N)\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "Buka(&O)...\tCtrl+O", CMD_OPEN MENUITEM "&Simpan\tCtrl+S", CMD_SAVE MENUITEM "Simp&an sebagai...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/nl-NL.rc b/base/applications/notepad/lang/nl-NL.rc index 8fcfd937de9..f4f9fe31823 100644 --- a/base/applications/notepad/lang/nl-NL.rc +++ b/base/applications/notepad/lang/nl-NL.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Bestand" BEGIN MENUITEM "&Nieuw\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Openen\tCtrl+O", CMD_OPEN MENUITEM "O&pslaan\tCtrl+S", CMD_SAVE MENUITEM "Ops&laan als...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/no-NO.rc b/base/applications/notepad/lang/no-NO.rc index 323e9203cb0..b1f53cf1f39 100644 --- a/base/applications/notepad/lang/no-NO.rc +++ b/base/applications/notepad/lang/no-NO.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fil" BEGIN MENUITEM "&Ny\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Åpne\tCtrl+O", CMD_OPEN MENUITEM "&Lagre\tCtrl+S", CMD_SAVE MENUITEM "Lagre &som...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/pl-PL.rc b/base/applications/notepad/lang/pl-PL.rc index db4265487ee..e9a47589fe3 100644 --- a/base/applications/notepad/lang/pl-PL.rc +++ b/base/applications/notepad/lang/pl-PL.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Plik" BEGIN MENUITEM "&Nowy\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Otwórz...\tCtrl+O", CMD_OPEN MENUITEM "Zapi&sz\tCtrl+S", CMD_SAVE MENUITEM "Z&apisz jako...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/pt-BR.rc b/base/applications/notepad/lang/pt-BR.rc index 194a9911254..4c210601c1d 100644 --- a/base/applications/notepad/lang/pt-BR.rc +++ b/base/applications/notepad/lang/pt-BR.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Arquivo" BEGIN MENUITEM "&Novo\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "A&brir\tCtrl+O", CMD_OPEN MENUITEM "&Salvar\tCtrl+S", CMD_SAVE MENUITEM "Salvar &como...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/pt-PT.rc b/base/applications/notepad/lang/pt-PT.rc index c1a7cd8ac45..09834442eb7 100644 --- a/base/applications/notepad/lang/pt-PT.rc +++ b/base/applications/notepad/lang/pt-PT.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Arquivo" BEGIN MENUITEM "&Novo\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "A&brir\tCtrl+O", CMD_OPEN MENUITEM "&Salvar\tCtrl+S", CMD_SAVE MENUITEM "Salvar &como...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/ro-RO.rc b/base/applications/notepad/lang/ro-RO.rc index 6a496d83b1d..426b44dbd2a 100644 --- a/base/applications/notepad/lang/ro-RO.rc +++ b/base/applications/notepad/lang/ro-RO.rc @@ -13,6 +13,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -28,6 +29,7 @@ BEGIN POPUP "&Fișier" BEGIN MENUITEM "&Nou\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Deschidere…\tCtrl+O", CMD_OPEN MENUITEM "&Păstrează\tCtrl+S", CMD_SAVE MENUITEM "Păst&rare în…", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/ru-RU.rc b/base/applications/notepad/lang/ru-RU.rc index 553c0b27d3e..95e7db8fa70 100644 --- a/base/applications/notepad/lang/ru-RU.rc +++ b/base/applications/notepad/lang/ru-RU.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Файл" BEGIN MENUITEM "Созд&ать\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Открыть...\tCtrl+O", CMD_OPEN MENUITEM "&Сохранить\tCtrl+S", CMD_SAVE MENUITEM "Сохранить &как...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/sk-SK.rc b/base/applications/notepad/lang/sk-SK.rc index 6f61be3f393..1fa1ce5f5b8 100644 --- a/base/applications/notepad/lang/sk-SK.rc +++ b/base/applications/notepad/lang/sk-SK.rc @@ -16,6 +16,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -31,6 +32,7 @@ BEGIN POPUP "&Súbor" BEGIN MENUITEM "&Nový\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Otvoriť...\tCtrl+O", CMD_OPEN MENUITEM "&Uložiť\tCtrl+S", CMD_SAVE MENUITEM "Uložiť &ako...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/sl-SI.rc b/base/applications/notepad/lang/sl-SI.rc index e21086fb860..3a81d3b5fdd 100644 --- a/base/applications/notepad/lang/sl-SI.rc +++ b/base/applications/notepad/lang/sl-SI.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Datoteka" BEGIN MENUITEM "&Nova\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Odpri\tCtrl+O", CMD_OPEN MENUITEM "&Shrani\tCtrl+S", CMD_SAVE MENUITEM "Shrani &kot ...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/sq-AL.rc b/base/applications/notepad/lang/sq-AL.rc index 99af7828ab5..349668b9aa9 100644 --- a/base/applications/notepad/lang/sq-AL.rc +++ b/base/applications/notepad/lang/sq-AL.rc @@ -12,6 +12,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -27,6 +28,7 @@ BEGIN POPUP "&File" BEGIN MENUITEM "E Re\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "Hap...\tCtrl+O", CMD_OPEN MENUITEM "Ruaj\tCtrl+S", CMD_SAVE MENUITEM "Ruaj si...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/sv-SE.rc b/base/applications/notepad/lang/sv-SE.rc index 5cd6052fc40..d52303805db 100644 --- a/base/applications/notepad/lang/sv-SE.rc +++ b/base/applications/notepad/lang/sv-SE.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Arkiv" BEGIN MENUITEM "&Ny\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Öppna\tCtrl+O", CMD_OPEN MENUITEM "&Spara\tCtrl+S", CMD_SAVE MENUITEM "Spara so&m...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/th-TH.rc b/base/applications/notepad/lang/th-TH.rc index 4a8ee16bebd..156ab1d5f3c 100644 --- a/base/applications/notepad/lang/th-TH.rc +++ b/base/applications/notepad/lang/th-TH.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "แฟ้ม" BEGIN MENUITEM "สร้างใหม่\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "เปิด...\tCtrl+O", CMD_OPEN MENUITEM "บันทืก\tCtrl+S", CMD_SAVE MENUITEM "บันทืกเป็น...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/tr-TR.rc b/base/applications/notepad/lang/tr-TR.rc index 69c3a973e14..64b4616bbaf 100644 --- a/base/applications/notepad/lang/tr-TR.rc +++ b/base/applications/notepad/lang/tr-TR.rc @@ -11,6 +11,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -26,6 +27,7 @@ BEGIN POPUP "&Dosya" BEGIN MENUITEM "&Yeni\tDenetim+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Aç...\tDenetim+O", CMD_OPEN MENUITEM "&Kaydet\tDenetim+S", CMD_SAVE MENUITEM "&Farklı Kaydet...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/uk-UA.rc b/base/applications/notepad/lang/uk-UA.rc index c249c64a998..bc33367221e 100644 --- a/base/applications/notepad/lang/uk-UA.rc +++ b/base/applications/notepad/lang/uk-UA.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Файл" BEGIN MENUITEM "&Створити\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "&Відкрити...\tCtrl+O", CMD_OPEN MENUITEM "&Зберегти\tCtrl+S", CMD_SAVE MENUITEM "Зберегти &як...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/uz-UZ.rc b/base/applications/notepad/lang/uz-UZ.rc index 9c5753a04c0..fdc61df2fd7 100644 --- a/base/applications/notepad/lang/uz-UZ.rc +++ b/base/applications/notepad/lang/uz-UZ.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "&Fayl" BEGIN MENUITEM "&Yangi\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "Oc&hmoq...\tCtrl+O", CMD_OPEN MENUITEM "&Saqlamoq\tCtrl+S", CMD_SAVE MENUITEM "Quyid&agicha saqlamoq...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/zh-CN.rc b/base/applications/notepad/lang/zh-CN.rc index ae9ac1eb1ea..1d459218519 100644 --- a/base/applications/notepad/lang/zh-CN.rc +++ b/base/applications/notepad/lang/zh-CN.rc @@ -10,6 +10,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -25,6 +26,7 @@ BEGIN POPUP "文件(&F)" BEGIN MENUITEM "新建(&N)\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "打开(&O)...\tCtrl+O", CMD_OPEN MENUITEM "保存(&S)\tCtrl+S", CMD_SAVE MENUITEM "另存为(&A)...", CMD_SAVE_AS diff --git a/base/applications/notepad/lang/zh-TW.rc b/base/applications/notepad/lang/zh-TW.rc index 5a4c45d581b..30e7cfe4063 100644 --- a/base/applications/notepad/lang/zh-TW.rc +++ b/base/applications/notepad/lang/zh-TW.rc @@ -8,6 +8,7 @@ BEGIN "^G", CMD_GOTO "H", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW + "N", CMD_NEW_WINDOW, VIRTKEY,CONTROL , SHIFT "^O", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE @@ -23,6 +24,7 @@ BEGIN POPUP "檔案(&F)" BEGIN MENUITEM "開新檔案(&N)\tCtrl+N", CMD_NEW + MENUITEM "&New Window\tCtrl+Shift+N", CMD_NEW_WINDOW MENUITEM "開啟舊檔(&O)...\tCtrl+O", CMD_OPEN MENUITEM "儲存檔案(&S)\tCtrl+S", CMD_SAVE MENUITEM "另存新檔(&A)...", CMD_SAVE_AS diff --git a/base/applications/notepad/main.c b/base/applications/notepad/main.c index dee27770697..b31d0c0fcb3 100644 --- a/base/applications/notepad/main.c +++ b/base/applications/notepad/main.c @@ -66,6 +66,7 @@ static int NOTEPAD_MenuCommand(WPARAM wParam) switch (wParam) { case CMD_NEW: DIALOG_FileNew(); break; + case CMD_NEW_WINDOW: DIALOG_FileNewWindow(); break; case CMD_OPEN: DIALOG_FileOpen(); break; case CMD_SAVE: DIALOG_FileSave(); break; case CMD_SAVE_AS: DIALOG_FileSaveAs(); break; diff --git a/base/applications/notepad/notepad_res.h b/base/applications/notepad/notepad_res.h index 9fa9817e44a..b53ff22cb57 100644 --- a/base/applications/notepad/notepad_res.h +++ b/base/applications/notepad/notepad_res.h @@ -34,11 +34,12 @@ /* Commands */ #define CMD_NEW 0x100 -#define CMD_OPEN 0x101 -#define CMD_SAVE 0x102 -#define CMD_SAVE_AS 0x103 -#define CMD_PRINT 0x104 -#define CMD_PAGE_SETUP 0x105 +#define CMD_NEW_WINDOW 0x101 +#define CMD_OPEN 0x102 +#define CMD_SAVE 0x103 +#define CMD_SAVE_AS 0x104 +#define CMD_PRINT 0x105 +#define CMD_PAGE_SETUP 0x106 #define CMD_EXIT 0x108 #define CMD_UNDO 0x110
3 years, 10 months
1
0
0
0
[reactos] 01/01: rapps pl-PL lang update (#3454)
by Piotr Hetnarowicz
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=61f4b120fc6b68e38f04e…
commit 61f4b120fc6b68e38f04e5c17a056ff72fcbd4fc Author: Piotr Hetnarowicz <40692062+pithwz(a)users.noreply.github.com> AuthorDate: Fri Feb 12 11:42:52 2021 +0100 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Feb 12 19:42:52 2021 +0900 rapps pl-PL lang update (#3454) rapps pl-PL lang update --- base/applications/rapps/lang/pl-PL.rc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/base/applications/rapps/lang/pl-PL.rc b/base/applications/rapps/lang/pl-PL.rc index f6814786162..a7e456cf6ef 100644 --- a/base/applications/rapps/lang/pl-PL.rc +++ b/base/applications/rapps/lang/pl-PL.rc @@ -2,6 +2,7 @@ * Translated by Caemyr - Olaf Siejka (Aug, 2009) * Use ReactOS forum PM or IRC to contact me * Updated by Saibamen - Adam Stachowicz (saibamenppl(a)gmail.com) (May, 2020) + * Updated by pithwz - Piotr Hetnarowicz (piotrhwz(a)gmail.com) (February, 2021) *
https://reactos.org/
* IRC:
irc.freenode.net
#reactos-pl; */ @@ -104,7 +105,7 @@ END IDD_DOWNLOAD_DIALOG DIALOGEX 0, 0, 220, 220 STYLE DS_SHELLFONT | DS_CENTER | WS_BORDER | WS_CAPTION | WS_POPUP | WS_SYSMENU | WS_VISIBLE -CAPTION "Pobierz %ls…" +CAPTION "Pobieranie %ls…" FONT 8, "MS Shell Dlg" BEGIN CONTROL "Progress1", IDC_DOWNLOAD_PROGRESS, "msctls_progress32", WS_BORDER | PBS_SMOOTH, 10, 10, 200, 12 @@ -192,7 +193,7 @@ BEGIN IDS_INSTALL "Instaluj" IDS_UNINSTALL "Odinstaluj" IDS_MODIFY "Modyfikuj" - IDS_APPS_COUNT "Licznik aplikacji: %d" + IDS_APPS_COUNT "Liczba aplikacji: %d; Wybranych: %d" IDS_WELCOME_TITLE "Witamy w Menedżerze aplikacji ReactOS!\n\n" IDS_WELCOME_TEXT "Z listy po lewej wybierz kategorię, a następnie aplikację, by ją zainstalować lub odinstalować.\nStrona projektu ReactOS: " IDS_WELCOME_URL "
https://reactos.org/
"
3 years, 10 months
1
0
0
0
[reactos] 01/01: [CONSRV] SetConWndConsoleLeaderCID(): Check must be before dereferencing (#3451)
by Serge Gautherie
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=cb5d610a73673c0404a54…
commit cb5d610a73673c0404a5473fe654a89cf67d7210 Author: Serge Gautherie <32623169+SergeGautherie(a)users.noreply.github.com> AuthorDate: Wed Feb 10 18:55:19 2021 +0100 Commit: GitHub <noreply(a)github.com> CommitDate: Wed Feb 10 18:55:19 2021 +0100 [CONSRV] SetConWndConsoleLeaderCID(): Check must be before dereferencing (#3451) Addendum to f12e601. --- win32ss/user/winsrv/consrv/frontends/gui/conwnd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32ss/user/winsrv/consrv/frontends/gui/conwnd.c b/win32ss/user/winsrv/consrv/frontends/gui/conwnd.c index 6dc4249dbe8..a1d180d5f93 100644 --- a/win32ss/user/winsrv/consrv/frontends/gui/conwnd.c +++ b/win32ss/user/winsrv/consrv/frontends/gui/conwnd.c @@ -51,8 +51,8 @@ SetConWndConsoleLeaderCID(IN PGUI_CONSOLE_DATA GuiData) ProcessData = ConSrvGetConsoleLeaderProcess(GuiData->Console); - DPRINT("ProcessData: %p, ProcessData->Process %p.\n", ProcessData, ProcessData->Process); ASSERT(ProcessData != NULL); + DPRINT("ProcessData: %p, ProcessData->Process %p.\n", ProcessData, ProcessData->Process); if (ProcessData->Process) {
3 years, 10 months
1
0
0
0
[reactos] 03/03: [VIDEOPRT] Mark low memory range as NOACCESS when we don't need to access it.
by Jérôme Gardou
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=e46c2dd1b301c72e70f89…
commit e46c2dd1b301c72e70f89d1ab94ebaba2e95c93b Author: Jérôme Gardou <jerome.gardou(a)reactos.org> AuthorDate: Wed Feb 10 15:21:55 2021 +0100 Commit: Jérôme Gardou <zefklop(a)users.noreply.github.com> CommitDate: Wed Feb 10 17:48:30 2021 +0100 [VIDEOPRT] Mark low memory range as NOACCESS when we don't need to access it. This allows to accomplish great things, such as crashing when dereferencing NULL pointer. --- win32ss/drivers/videoprt/int10.c | 68 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/win32ss/drivers/videoprt/int10.c b/win32ss/drivers/videoprt/int10.c index caa50ddfc35..2cf9b7fc590 100644 --- a/win32ss/drivers/videoprt/int10.c +++ b/win32ss/drivers/videoprt/int10.c @@ -23,12 +23,63 @@ #include <ndk/kefuncs.h> #include <ndk/halfuncs.h> +#include <ndk/mmfuncs.h> #define NDEBUG #include <debug.h> /* PRIVATE FUNCTIONS **********************************************************/ +#define IsLowV86Mem(_Seg, _Off) ((((_Seg) << 4) + (_Off)) < (0xa0000)) + +/* Those two functions below are there so that CSRSS can't access low mem. + * Expecially, MAKE IT CRASH ON NULL ACCESS */ +static +VOID +ProtectLowV86Mem(VOID) +{ + /* We pass a non-NULL address so that ZwAllocateVirtualMemory really does it + * And we truncate one page to get the right range spanned. */ + PVOID BaseAddress = (PVOID)1; + NTSTATUS Status; + SIZE_T ViewSize = 0xa0000 - PAGE_SIZE; + + /* We should only do that for CSRSS. */ + ASSERT(PsGetCurrentProcess() == (PEPROCESS)CsrProcess); + + /* Commit (again) the pages, but with PAGE_NOACCESS protection */ + Status = ZwAllocateVirtualMemory(NtCurrentProcess(), + &BaseAddress, + 0, + &ViewSize, + MEM_COMMIT, + PAGE_NOACCESS); + ASSERT(NT_SUCCESS(Status)); +} + +static +VOID +UnprotectLowV86Mem(VOID) +{ + /* We pass a non-NULL address so that ZwAllocateVirtualMemory really does it + * And we truncate one page to get the right range spanned. */ + PVOID BaseAddress = (PVOID)1; + NTSTATUS Status; + SIZE_T ViewSize = 0xa0000 - PAGE_SIZE; + + /* We should only do that for CSRSS, for the v86 address space */ + ASSERT(PsGetCurrentProcess() == (PEPROCESS)CsrProcess); + + /* Commit (again) the pages, but with PAGE_READWRITE protection */ + Status = ZwAllocateVirtualMemory(NtCurrentProcess(), + &BaseAddress, + 0, + &ViewSize, + MEM_COMMIT, + PAGE_READWRITE); + ASSERT(NT_SUCCESS(Status)); +} + #if defined(_M_IX86) || defined(_M_AMD64) NTSTATUS NTAPI @@ -137,6 +188,9 @@ IntInitializeVideoAddressSpace(VOID) } #endif // _M_IX86 + /* Protect the V86 address space after this */ + ProtectLowV86Mem(); + /* Return success */ return STATUS_SUCCESS; } @@ -172,6 +226,7 @@ IntInt10AllocateBuffer( Size = *Length; MemoryAddress = (PVOID)0x20000; + Status = ZwAllocateVirtualMemory(NtCurrentProcess(), &MemoryAddress, 0, @@ -266,7 +321,13 @@ IntInt10ReadMemory( INFO_(VIDEOPRT, "- Length: %x\n", Length); IntAttachToCSRSS(&CallingProcess, &ApcState); + + if (IsLowV86Mem(Seg, Off)) + UnprotectLowV86Mem(); RtlCopyMemory(Buffer, (PVOID)((ULONG_PTR)(Seg << 4) | Off), Length); + if (IsLowV86Mem(Seg, Off)) + ProtectLowV86Mem(); + IntDetachFromCSRSS(&CallingProcess, &ApcState); return NO_ERROR; @@ -298,7 +359,11 @@ IntInt10WriteMemory( INFO_(VIDEOPRT, "- Length: %x\n", Length); IntAttachToCSRSS(&CallingProcess, &ApcState); + if (IsLowV86Mem(Seg, Off)) + UnprotectLowV86Mem(); RtlCopyMemory((PVOID)((ULONG_PTR)(Seg << 4) | Off), Buffer, Length); + if (IsLowV86Mem(Seg, Off)) + ProtectLowV86Mem(); IntDetachFromCSRSS(&CallingProcess, &ApcState); return NO_ERROR; @@ -349,11 +414,14 @@ IntInt10CallBios( FALSE, NULL); + /* The kernel needs access here */ + UnprotectLowV86Mem(); #ifdef _M_AMD64 Status = x86BiosCall(0x10, &BiosContext) ? STATUS_SUCCESS : STATUS_UNSUCCESSFUL; #else Status = Ke386CallBios(0x10, &BiosContext); #endif + ProtectLowV86Mem(); KeReleaseMutex(&VideoPortInt10Mutex, FALSE);
3 years, 10 months
1
0
0
0
← Newer
1
2
3
4
5
6
7
8
9
...
44
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Results per page:
10
25
50
100
200