* Fix stdafx include

* Fix basic handling of "Games" folder on Windows10 RS4 (#10)
This does the following:
- Sets the default state to hidden
- Skips the Games folder when searching

This does not:
- Hide the dead menu entry.

I do not currently know how to actively change the user preference setting to forcefully hide it.

* Add basic Visual Studio gitignore

* Add specific entries to gitignore

* Do not set default menu to Win7 on RS4 (#10)

* Rename "PC Settings" to "Settings" (#12)

* Create distinction between modern and legacy settings in search results

* Add more build artifacts to gitignore

* Add default paths for toolset and build all languages

* Fix several memsize, memtype and nullpointer issues

* create trunk branch containing all changes

* set fallback and next version to 4.3.2, set resource fallback value to allow loading in IDE

* add generated en-US.dll to gitignore

* Don't echo script contents, add disabled "git clean -dfx" to build fresh

* fix gitignore to not destroy en-US language project
This commit is contained in:
Xenhat
2018-06-24 23:05:26 -04:00
committed by GitHub
parent 468ee876cc
commit e0d1c72b0b
16 changed files with 89 additions and 53 deletions
+8
View File
@@ -60,6 +60,7 @@ artifacts/
StyleCopReport.xml StyleCopReport.xml
# Files built by Visual Studio # Files built by Visual Studio
*.dll
*_i.c *_i.c
*_p.c *_p.c
*_i.h *_i.h
@@ -337,3 +338,10 @@ ASALocalRun/
# Classic-Shell specific ignores # Classic-Shell specific ignores
Skins/ Skins/
Setup/
Setup64/
Final/
Output/
Temp/
Localization/
*.bin
@@ -275,7 +275,7 @@ BEGIN
IDS_OS_LANGUAGE "Current OS language" IDS_OS_LANGUAGE "Current OS language"
IDS_BMP_FILTERS "Image files (*.bmp,*.png)|*.bmp;*.png|" IDS_BMP_FILTERS "Image files (*.bmp,*.png)|*.bmp;*.png|"
IDS_BMP_TITLE "Select Image File" IDS_BMP_TITLE "Select Image File"
IDS_SEARCH_PROMPT "Search settings" IDS_SEARCH_PROMPT "Search Settings"
IDS_SETTING_SEARCH "Search Results" IDS_SETTING_SEARCH "Search Results"
IDS_WEBSITE_TIP "Visit Classic Shell on the web - http://www.classicshell.net" IDS_WEBSITE_TIP "Visit Classic Shell on the web - http://www.classicshell.net"
IDS_LOCATE_SETTING "Locate setting" IDS_LOCATE_SETTING "Locate setting"
@@ -1,7 +1,13 @@
@echo off
set PATH=C:\Program Files\7-Zip\;C:\Program Files (x86)\HTML Help Workshop;C:\Program Files (x86)\WiX Toolset v3.11\bin\;%PATH%
@cd %~dp0 @cd %~dp0
@rem Clean repository and build fresh. Will erase current changes so disabled by default.
rem git clean -dfx
@rem Default version @rem Default version
@set CS_VERSION=4.4.0 @set CS_VERSION=4.3.2
@if defined APPVEYOR_BUILD_VERSION ( @if defined APPVEYOR_BUILD_VERSION (
@set CS_VERSION=%APPVEYOR_BUILD_VERSION% @set CS_VERSION=%APPVEYOR_BUILD_VERSION%
@@ -13,9 +19,21 @@
@call BuildBinaries.bat @call BuildBinaries.bat
@if ERRORLEVEL 1 exit /b 1 @if ERRORLEVEL 1 exit /b 1
@call _BuildEnglish.bat @call _BuildEnglish.bat
@if ERRORLEVEL 1 exit /b 1 @if ERRORLEVEL 1 exit /b 1
@rem Build other languages
@call _BuildChineseCN.bat
@call _BuildChineseTW.bat
@call _BuildFrench.bat
@call _BuildGerman.bat
@call _BuildItalian.bat
@call _BuildPolish.bat
@call _BuildRussian.bat
@call _BuildSpanish.bat
@if ERRORLEVEL 1 exit /b 1
call BuildArchives.bat call BuildArchives.bat
@exit /b 0 @exit /b 0
@@ -52,6 +52,14 @@ END
// Version // Version
// //
// Solution loading fail-safe
#ifndef _PRODUCT_VERSION
#define _PRODUCT_VERSION 4.3.2
#endif
#ifndef _PRODUCT_VERSION_STR
#define _PRODUCT_VERSION_STR "4.3.2"
#endif
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION _PRODUCT_VERSION FILEVERSION _PRODUCT_VERSION
PRODUCTVERSION _PRODUCT_VERSION PRODUCTVERSION _PRODUCT_VERSION
@@ -109,3 +117,4 @@ IDI_APPICON ICON "..\\ClassicShellSetup\\ClassicS
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED #endif // not APSTUDIO_INVOKED
_PRODUCT_VERSOIN
@@ -71,7 +71,7 @@ protected:
private: private:
enum { TIMER_BLEND=1, TIMER_LEAVE=2 }; enum { TIMER_BLEND=1, TIMER_LEAVE=2 };
int m_TaskbarId; size_t m_TaskbarId;
SIZE m_Size; SIZE m_Size;
HBITMAP m_Bitmap, m_Blendmap; HBITMAP m_Bitmap, m_Blendmap;
unsigned int *m_Bits, *m_BlendBits; unsigned int *m_Bits, *m_BlendBits;
@@ -121,7 +121,7 @@ CStartButton::CStartButton( void )
LRESULT CStartButton::OnCreate( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled ) LRESULT CStartButton::OnCreate( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled )
{ {
int params=(int)(intptr_t)(((CREATESTRUCT*)lParam)->lpCreateParams); size_t params=(intptr_t)(((CREATESTRUCT*)lParam)->lpCreateParams);
m_bRTL=(params&1)!=0; m_bRTL=(params&1)!=0;
m_TaskbarId=params>>1; m_TaskbarId=params>>1;
m_bSmallIcons=IsTaskbarSmallIcons(); m_bSmallIcons=IsTaskbarSmallIcons();
@@ -605,8 +605,8 @@ static std::map<int,CStartButton> g_StartButtons;
HWND CreateStartButton( int taskbarId, HWND taskBar, HWND rebar, const RECT &rcTask ) HWND CreateStartButton( int taskbarId, HWND taskBar, HWND rebar, const RECT &rcTask )
{ {
bool bRTL=(GetWindowLong(rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)!=0; bool bRTL=(GetWindowLongPtr(rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)!=0;
DWORD styleTopmost=GetWindowLong(taskBar,GWL_EXSTYLE)&WS_EX_TOPMOST; DWORD styleTopmost=GetWindowLongPtr(taskBar,GWL_EXSTYLE)&WS_EX_TOPMOST;
CStartButton &button=g_StartButtons[taskbarId]; CStartButton &button=g_StartButtons[taskbarId];
button.Create(taskBar,NULL,NULL,WS_POPUP,styleTopmost|WS_EX_TOOLWINDOW|WS_EX_LAYERED,0U,(void*)(intptr_t)(taskbarId*2+(bRTL?1:0))); button.Create(taskBar,NULL,NULL,WS_POPUP,styleTopmost|WS_EX_TOOLWINDOW|WS_EX_LAYERED,0U,(void*)(intptr_t)(taskbarId*2+(bRTL?1:0)));
SIZE size=button.GetSize(); SIZE size=button.GetSize();
@@ -32,7 +32,8 @@
#endif #endif
const int MAIN_TASK_BAR=0; const int MAIN_TASK_BAR=0;
std::map<int,TaskbarInfo> g_TaskbarInfos; typedef std::map<size_t,TaskbarInfo> id_taskbar_map;
id_taskbar_map g_TaskbarInfos;
static int g_LastTaskbar=MAIN_TASK_BAR; static int g_LastTaskbar=MAIN_TASK_BAR;
static int g_NextTaskbar=0; static int g_NextTaskbar=0;
HWND g_TaskBar, g_OwnerWindow; HWND g_TaskBar, g_OwnerWindow;
@@ -67,7 +68,7 @@ static RECT g_TaskbarMargins;
int g_CurrentCSMTaskbar=-1, g_CurrentWSMTaskbar=-1; int g_CurrentCSMTaskbar=-1, g_CurrentWSMTaskbar=-1;
static void FindWindowsMenu( void ); static void FindWindowsMenu( void );
static void RecreateStartButton( int taskbarId ); static void RecreateStartButton( size_t taskbarId );
static bool WindowsMenuOpened( void ); static bool WindowsMenuOpened( void );
static tSetWindowCompositionAttribute SetWindowCompositionAttribute; static tSetWindowCompositionAttribute SetWindowCompositionAttribute;
@@ -302,7 +303,7 @@ protected:
if (LOWORD(wParam)!=WA_INACTIVE) if (LOWORD(wParam)!=WA_INACTIVE)
return 0; return 0;
if (CMenuContainer::s_bPreventClosing && lParam && (::GetWindowLong((HWND)lParam,GWL_EXSTYLE)&WS_EX_TOPMOST)) if (CMenuContainer::s_bPreventClosing && lParam && (::GetWindowLongPtr((HWND)lParam,GWL_EXSTYLE)&WS_EX_TOPMOST))
return 0; return 0;
// check if another menu window is being activated // check if another menu window is being activated
@@ -390,29 +391,29 @@ static const TaskbarInfo *GetDefaultTaskbarInfo( void )
if (GetSettingBool(L"AllTaskbars")) if (GetSettingBool(L"AllTaskbars"))
{ {
HMONITOR monitor=MonitorFromPoint(CPoint(GetMessagePos()),MONITOR_DEFAULTTONEAREST); HMONITOR monitor=MonitorFromPoint(CPoint(GetMessagePos()),MONITOR_DEFAULTTONEAREST);
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (std::map<size_t,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
MONITORINFO info; MONITORINFO info;
HMONITOR monitor2=NULL; HMONITOR monitor2=NULL;
if (GetTaskbarPosition(it->second.taskBar,&info,&monitor2,NULL)!=0xFFFFFFFF && monitor2==monitor) if (GetTaskbarPosition(it->second.taskBar,&info,&monitor2,NULL)!=0xFFFFFFFF && monitor2==monitor)
return &it->second; return &it->second;
} }
std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.find(g_LastTaskbar); id_taskbar_map::const_iterator it=g_TaskbarInfos.find(g_LastTaskbar);
if (it!=g_TaskbarInfos.end()) if (it!=g_TaskbarInfos.end())
return &it->second; return &it->second;
} }
return &g_TaskbarInfos.begin()->second; return &g_TaskbarInfos.begin()->second;
} }
TaskbarInfo *GetTaskbarInfo( int taskbarId ) TaskbarInfo *GetTaskbarInfo( size_t taskbarId )
{ {
std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.find(taskbarId); std::map<size_t,TaskbarInfo>::iterator it=g_TaskbarInfos.find(taskbarId);
return (it==g_TaskbarInfos.end())?NULL:&it->second; return (it==g_TaskbarInfos.end())?NULL:&it->second;
} }
static TaskbarInfo *FindTaskBarInfoButton( HWND button ) static TaskbarInfo *FindTaskBarInfoButton( HWND button )
{ {
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
if (it->second.startButton==button || it->second.oldButton==button) if (it->second.startButton==button || it->second.oldButton==button)
return &it->second; return &it->second;
return NULL; return NULL;
@@ -420,7 +421,7 @@ static TaskbarInfo *FindTaskBarInfoButton( HWND button )
static TaskbarInfo *FindTaskBarInfoBar( HWND bar ) static TaskbarInfo *FindTaskBarInfoBar( HWND bar )
{ {
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
if (it->second.taskBar==bar) if (it->second.taskBar==bar)
return &it->second; return &it->second;
return NULL; return NULL;
@@ -694,7 +695,7 @@ UINT GetTaskbarPosition( HWND taskBar, MONITORINFO *pInfo, HMONITOR *pMonitor, R
} }
// Returns true if the mouse is on the taskbar portion of the start button // Returns true if the mouse is on the taskbar portion of the start button
bool PointAroundStartButton( int taskbarId, const CPoint &pt ) bool PointAroundStartButton( size_t taskbarId, const CPoint &pt )
{ {
const TaskbarInfo *taskBar=GetTaskbarInfo(taskbarId); const TaskbarInfo *taskBar=GetTaskbarInfo(taskbarId);
if (!taskBar || !taskBar->startButton) return false; if (!taskBar || !taskBar->startButton) return false;
@@ -708,7 +709,7 @@ bool PointAroundStartButton( int taskbarId, const CPoint &pt )
GetWindowRect(taskBar->startButton,&rc); GetWindowRect(taskBar->startButton,&rc);
if (uEdge==ABE_LEFT || uEdge==ABE_RIGHT) if (uEdge==ABE_LEFT || uEdge==ABE_RIGHT)
return pt.y<rc.bottom; return pt.y<rc.bottom;
else if (GetWindowLong(taskBar->taskBar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL) else if (GetWindowLongPtr(taskBar->taskBar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)
return pt.x>rc.left; return pt.x>rc.left;
else else
return pt.x<rc.right; return pt.x<rc.right;
@@ -752,7 +753,7 @@ void ResetHotCorners( void )
void RedrawTaskbars( void ) void RedrawTaskbars( void )
{ {
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
InvalidateRect(it->second.taskBar,NULL,TRUE); InvalidateRect(it->second.taskBar,NULL,TRUE);
} }
@@ -828,7 +829,7 @@ public:
HMONITOR monitor; HMONITOR monitor;
if (SUCCEEDED(pMonitor->GetHandle(&monitor))) if (SUCCEEDED(pMonitor->GetHandle(&monitor)))
{ {
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
if (monitor==MonitorFromWindow(it->second.taskBar,MONITOR_DEFAULTTONULL)) if (monitor==MonitorFromWindow(it->second.taskBar,MONITOR_DEFAULTTONULL))
{ {
@@ -1046,7 +1047,7 @@ static LRESULT CALLBACK HookAppManager( int code, WPARAM wParam, LPARAM lParam )
return CallNextHookEx(NULL,code,wParam,lParam); return CallNextHookEx(NULL,code,wParam,lParam);
typedef BOOL (WINAPI *tGetWindowBand)(HWND,DWORD*); typedef BOOL (WINAPI *tGetWindowBand)(HWND,DWORD*);
static tGetWindowBand GetWindowBand=(tGetWindowBand)GetProcAddress(GetModuleHandle(L"user32.dll"),"GetWindowBand"); static tGetWindowBand GetWindowBand=(tGetWindowBand)GetProcAddress(GetModuleHandle(L"user32.dll"),"GetWindowBand");
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
DWORD band; DWORD band;
if (!GetWindowBand || !GetWindowBand(it->second.taskBar,&band) || band==1) if (!GetWindowBand || !GetWindowBand(it->second.taskBar,&band) || band==1)
@@ -1091,7 +1092,7 @@ static LRESULT CALLBACK HookAppManager( int code, WPARAM wParam, LPARAM lParam )
} }
if (corner==1) if (corner==1)
{ {
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
UINT uEdge=GetTaskbarPosition(it->second.taskBar,NULL,NULL,NULL); UINT uEdge=GetTaskbarPosition(it->second.taskBar,NULL,NULL,NULL);
if (uEdge==ABE_BOTTOM) if (uEdge==ABE_BOTTOM)
@@ -1739,9 +1740,9 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam
else else
{ {
zPos=pPos->hwndInsertAfter; zPos=pPos->hwndInsertAfter;
if (zPos==HWND_TOP && !(GetWindowLong(taskBar->startButton,GWL_EXSTYLE)&WS_EX_TOPMOST)) if (zPos==HWND_TOP && !(GetWindowLongPtr(taskBar->startButton,GWL_EXSTYLE)&WS_EX_TOPMOST))
zPos=HWND_TOPMOST; zPos=HWND_TOPMOST;
if (zPos==HWND_TOPMOST && !(GetWindowLong(hWnd,GWL_EXSTYLE)&WS_EX_TOPMOST)) if (zPos==HWND_TOPMOST && !(GetWindowLongPtr(hWnd,GWL_EXSTYLE)&WS_EX_TOPMOST))
zPos=HWND_TOP; zPos=HWND_TOP;
if (zPos==HWND_BOTTOM) if (zPos==HWND_BOTTOM)
buttonFlags|=SWP_NOZORDER; buttonFlags|=SWP_NOZORDER;
@@ -1762,7 +1763,7 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam
} }
else else
{ {
if (GetWindowLong(taskBar->rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL) if (GetWindowLongPtr(taskBar->rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)
x=rcTask.right-taskBar->startButtonSize.cx; x=rcTask.right-taskBar->startButtonSize.cx;
else else
x=rcTask.left; x=rcTask.left;
@@ -2386,7 +2387,7 @@ void UpdateTaskBars( TUpdateTaskbar update )
DeleteDC(hdc); DeleteDC(hdc);
} }
} }
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
RedrawWindow(it->second.taskBar,NULL,NULL,RDW_INVALIDATE|RDW_ALLCHILDREN); RedrawWindow(it->second.taskBar,NULL,NULL,RDW_INVALIDATE|RDW_ALLCHILDREN);
} }
return; return;
@@ -2406,7 +2407,7 @@ void UpdateTaskBars( TUpdateTaskbar update )
} }
if (g_bTrimHooks) if (g_bTrimHooks)
bButton=false; bButton=false;
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
TaskbarInfo &taskBar=it->second; TaskbarInfo &taskBar=it->second;
bool bButton2=bButton && (bAll || taskBar.taskBar==g_TaskBar); bool bButton2=bButton && (bAll || taskBar.taskBar==g_TaskBar);
@@ -2550,7 +2551,7 @@ void UpdateTaskBars( TUpdateTaskbar update )
} }
} }
} }
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
TaskbarInfo &taskBar=it->second; TaskbarInfo &taskBar=it->second;
SendMessage(taskBar.taskBar,WM_SETTINGCHANGE,0,0); SendMessage(taskBar.taskBar,WM_SETTINGCHANGE,0,0);
@@ -3006,9 +3007,9 @@ if (!g_bTrimHooks)
UpdateTaskBars(TASKBAR_UPDATE_TEXTURE); UpdateTaskBars(TASKBAR_UPDATE_TEXTURE);
} }
static void RecreateStartButton( int taskbarId ) static void RecreateStartButton( size_t taskbarId )
{ {
for (std::map<int,TaskbarInfo>::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
TaskbarInfo &taskBar=it->second; TaskbarInfo &taskBar=it->second;
if (taskbarId>=0 && taskBar.taskbarId!=taskbarId) if (taskbarId>=0 && taskBar.taskbarId!=taskbarId)
@@ -3133,7 +3134,7 @@ static void CleanStartMenuDLL( void )
ResetHotCorners(); ResetHotCorners();
UpdateTaskBars(TASKBAR_CLEAR); UpdateTaskBars(TASKBAR_CLEAR);
g_WinStartButton=NULL; g_WinStartButton=NULL;
for (std::map<int,TaskbarInfo>::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) for (id_taskbar_map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it)
{ {
if (it->second.rebar) if (it->second.rebar)
RemoveWindowSubclass(it->second.rebar,SubclassRebarProc,'CLSH'); RemoveWindowSubclass(it->second.rebar,SubclassRebarProc,'CLSH');
@@ -71,7 +71,7 @@ struct TaskbarInfo
bool HasPart( HWND part ) const; bool HasPart( HWND part ) const;
}; };
TaskbarInfo *GetTaskbarInfo( int taskbarId ); TaskbarInfo *GetTaskbarInfo( size_t taskbarId );
UINT GetTaskbarPosition( HWND taskBar, MONITORINFO *pInfo, HMONITOR *pMonitor, RECT *pRc ); UINT GetTaskbarPosition( HWND taskBar, MONITORINFO *pInfo, HMONITOR *pMonitor, RECT *pRc );
extern HWND STARTMENUAPI g_TaskBar, g_OwnerWindow; extern HWND STARTMENUAPI g_TaskBar, g_OwnerWindow;
@@ -113,7 +113,7 @@ enum THotkeys
// Set the hotkeys and controls for the start menu // Set the hotkeys and controls for the start menu
void EnableHotkeys( THotkeys enable ); void EnableHotkeys( THotkeys enable );
bool PointAroundStartButton( int taskbarId, const CPoint &pt=CPoint(GetMessagePos()) ); bool PointAroundStartButton( size_t taskbarId, const CPoint &pt=CPoint(GetMessagePos()) );
void ResetHotCorners( void ); void ResetHotCorners( void );
void RedrawTaskbars( void ); void RedrawTaskbars( void );
@@ -1207,12 +1207,12 @@ BEGIN
IDS_MOUSE_MONITOR_TIP2 "When this is checked, pressing Shift+Win will open the Windows Start menu on the same monitor as the mouse pointer" IDS_MOUSE_MONITOR_TIP2 "When this is checked, pressing Shift+Win will open the Windows Start menu on the same monitor as the mouse pointer"
IDS_PIC_PATH "User picture" IDS_PIC_PATH "User picture"
IDS_PIC_PATH_TIP "Override the default user picture with another image" IDS_PIC_PATH_TIP "Override the default user picture with another image"
IDS_SEARCH_METROS "Search PC settings" IDS_SEARCH_METROS "Search Settings"
END END
STRINGTABLE STRINGTABLE
BEGIN BEGIN
IDS_SEARCH_METROS_TIP "When this is checked, the search results will include the modern PC settings" IDS_SEARCH_METROS_TIP "When this is checked, the search results will include the modern Settings window"
IDS_SHOW_APPS_MENU "Show Apps menu" IDS_SHOW_APPS_MENU "Show Apps menu"
IDS_SHOW_APPS_MENU_TIP "Enable the Apps menu" IDS_SHOW_APPS_MENU_TIP "Enable the Apps menu"
IDS_SHOW_APPS_MENU_TIP2 "Enable the Apps menu\nWarning: You don't have the Apps item in your custom menu, so this setting will be ignored" IDS_SHOW_APPS_MENU_TIP2 "Enable the Apps menu\nWarning: You don't have the Apps item in your custom menu, so this setting will be ignored"
@@ -1244,8 +1244,8 @@ BEGIN
IDS_TASK_OPACITY_TIP "Set the opacity for the taskbar (0 - transparent, 100 - opaque)" IDS_TASK_OPACITY_TIP "Set the opacity for the taskbar (0 - transparent, 100 - opaque)"
IDS_TASK_COLOR "Taskbar color" IDS_TASK_COLOR "Taskbar color"
IDS_TASK_COLOR_TIP "Set the color for the taskbar" IDS_TASK_COLOR_TIP "Set the color for the taskbar"
IDS_PCSETTINGS "PC Settings" IDS_PCSETTINGS "Settings"
IDS_PCSETTINGS_TIP "Shows the modern PC settings" IDS_PCSETTINGS_TIP "Shows the modern Settings window"
IDS_HIGHLIGHT_NEWAPPS "Highlight newly installed apps" IDS_HIGHLIGHT_NEWAPPS "Highlight newly installed apps"
IDS_HIGHLIGHT_NEWAPPS_TIP IDS_HIGHLIGHT_NEWAPPS_TIP
"When this is checked, the start menu will highlight the apps that were recently installed" "When this is checked, the start menu will highlight the apps that were recently installed"
@@ -1726,7 +1726,7 @@ void CItemManager::AddOldItems( const std::vector<unsigned> &hashes )
if (m_OldItemInfos.empty()) if (m_OldItemInfos.empty())
regItems.SetBinaryValue(L"OldItems",NULL,0); regItems.SetBinaryValue(L"OldItems",NULL,0);
else else
regItems.SetBinaryValue(L"OldItems",&m_OldItemInfos[0],(int)m_OldItemInfos.size()*sizeof(OldItemInfo)); regItems.SetBinaryValue(L"OldItems",&m_OldItemInfos[0],ULONG((size_t)m_OldItemInfos.size()*sizeof(OldItemInfo)));
} }
CString GetPropertyStoreString( IPropertyStore *pStore, REFPROPERTYKEY key ) CString GetPropertyStoreString( IPropertyStore *pStore, REFPROPERTYKEY key )
@@ -240,7 +240,7 @@ static DWORD WINAPI NewShortcutThread( void *param )
static DWORD WINAPI SleepThread( void *param ) static DWORD WINAPI SleepThread( void *param )
{ {
SetSuspendState((BOOL)(intptr_t)param,FALSE,FALSE); SetSuspendState((intptr_t)param != 0,FALSE,FALSE);
return 0; return 0;
} }
@@ -469,9 +469,9 @@ void CMenuContainer::OpenSubMenu( int index, TActivateType type, bool bShift )
pMenu->Create(parent,NULL,s_SubmenuStyle,WS_EX_TOOLWINDOW|WS_EX_TOPMOST|(s_bRTL?WS_EX_LAYOUTRTL:0)); pMenu->Create(parent,NULL,s_SubmenuStyle,WS_EX_TOOLWINDOW|WS_EX_TOPMOST|(s_bRTL?WS_EX_LAYOUTRTL:0));
if (GetSettingBool(L"MenuShadow") && s_Skin.Submenu_shadow==MenuSkin::SHADOW_ON) if (GetSettingBool(L"MenuShadow") && s_Skin.Submenu_shadow==MenuSkin::SHADOW_ON)
SetClassLong(pMenu->m_hWnd,GCL_STYLE,GetClassLong(pMenu->m_hWnd,GCL_STYLE)|CS_DROPSHADOW); SetClassLongPtr(pMenu->m_hWnd,GCL_STYLE,GetClassLongPtr(pMenu->m_hWnd,GCL_STYLE)|CS_DROPSHADOW);
else else
SetClassLong(pMenu->m_hWnd,GCL_STYLE,GetClassLong(pMenu->m_hWnd,GCL_STYLE)&~CS_DROPSHADOW); SetClassLongPtr(pMenu->m_hWnd,GCL_STYLE,GetClassLongPtr(pMenu->m_hWnd,GCL_STYLE)&~CS_DROPSHADOW);
if (!parent && s_TaskBar) if (!parent && s_TaskBar)
{ {
@@ -2245,7 +2245,7 @@ void CMenuContainer::ActivateItem( int index, TActivateType type, const POINT *p
if (res==CMD_SORT) if (res==CMD_SORT)
{ {
if (pData && pData->bProgramsTree) if (pData && pData->bProgramsTree && m_pProgramsTree)
{ {
m_pProgramsTree->OrderElements(pData->hTreeItem,TreeView_GetParent(m_pProgramsTree->m_hWnd,pData->hTreeItem),std::vector<unsigned int>(),false,true); m_pProgramsTree->OrderElements(pData->hTreeItem,TreeView_GetParent(m_pProgramsTree->m_hWnd,pData->hTreeItem),std::vector<unsigned int>(),false,true);
} }
@@ -2956,16 +2956,16 @@ void CMenuContainer::DragTreeItem( const void *treeItem, bool bApp )
item.id=MENU_NO; item.id=MENU_NO;
item.name=pTreeItem->name; item.name=pTreeItem->name;
item.pItemInfo=pTreeItem->pItemInfo1; item.pItemInfo=pTreeItem->pItemInfo1;
item.pItem1=pTreeItem->pItemInfo1->GetPidl();
item.pItem2=pTreeItem->pItemInfo2?(PIDLIST_ABSOLUTE)pTreeItem->pItemInfo2->GetPidl():NULL; item.pItem2=pTreeItem->pItemInfo2?(PIDLIST_ABSOLUTE)pTreeItem->pItemInfo2->GetPidl():NULL;
item.bFolder=pTreeItem->bFolder; item.bFolder=pTreeItem->bFolder;
item.bMetroLink=false; item.bMetroLink=false;
item.bMetroApp=false; item.bMetroApp=false;
if (pTreeItem->pItemInfo1) if(item.pItemInfo)
{ {
item.pItem1=pTreeItem->pItemInfo1->GetPidl();
CItemManager::RWLock lock(&g_ItemManager,false,CItemManager::RWLOCK_ITEMS); CItemManager::RWLock lock(&g_ItemManager,false,CItemManager::RWLOCK_ITEMS);
item.bMetroLink=pTreeItem->pItemInfo1->IsMetroLink(); item.bMetroLink=item.pItemInfo->IsMetroLink();
item.bMetroApp=pTreeItem->pItemInfo1->IsMetroApp(); item.bMetroApp=item.pItemInfo->IsMetroApp();
} }
DragOut(m_ProgramTreeIndex,bApp); DragOut(m_ProgramTreeIndex,bApp);
item.id=MENU_PROGRAMS_TREE; item.id=MENU_PROGRAMS_TREE;
@@ -8089,9 +8089,9 @@ HWND CMenuContainer::ToggleStartMenu( int taskbarId, bool bKeyboard, bool bAllPr
} }
if (GetSettingBool(L"MenuShadow") && s_Skin.Main_shadow==MenuSkin::SHADOW_ON) if (GetSettingBool(L"MenuShadow") && s_Skin.Main_shadow==MenuSkin::SHADOW_ON)
SetClassLong(pStartMenu->m_hWnd,GCL_STYLE,GetClassLong(pStartMenu->m_hWnd,GCL_STYLE)|CS_DROPSHADOW); SetClassLongPtr(pStartMenu->m_hWnd,GCL_STYLE,GetClassLongPtr(pStartMenu->m_hWnd,GCL_STYLE)|CS_DROPSHADOW);
else else
SetClassLong(pStartMenu->m_hWnd,GCL_STYLE,GetClassLong(pStartMenu->m_hWnd,GCL_STYLE)&~CS_DROPSHADOW); SetClassLongPtr(pStartMenu->m_hWnd,GCL_STYLE,GetClassLongPtr(pStartMenu->m_hWnd,GCL_STYLE)&~CS_DROPSHADOW);
if (s_bWin7Style && !s_bAllPrograms && s_Skin.User_bitmapSize.cx>0) if (s_bWin7Style && !s_bAllPrograms && s_Skin.User_bitmapSize.cx>0)
{ {
@@ -784,7 +784,7 @@ void CSearchManager::SearchThread( void )
scopeList.push_back(SearchScope()); scopeList.push_back(SearchScope());
SearchScope &scope=*scopeList.rbegin(); SearchScope &scope=*scopeList.rbegin();
scope.bFiles=true; scope.bFiles=true;
scope.name=FindTranslation(L"Search.CategoryPCSettings",L"PC settings"); scope.name=FindTranslation(L"Search.CategoryPCSettings",L"Settings");
scope.categoryHash=CATEGORY_METROSETTING; scope.categoryHash=CATEGORY_METROSETTING;
scope.roots.push_back(L"FILE:"); scope.roots.push_back(L"FILE:");
} }
@@ -998,7 +998,7 @@ Menu.RestartUpdate = Update and restart
Menu.Sleep = &Sleep Menu.Sleep = &Sleep
Menu.Hibernate = &Hibernate Menu.Hibernate = &Hibernate
Menu.ControlPanel = &Control Panel Menu.ControlPanel = &Control Panel
Menu.PCSettings = PC settings Menu.PCSettings = Settings
Menu.Security = Windows Security Menu.Security = Windows Security
Menu.Network = &Network Connections Menu.Network = &Network Connections
Menu.Printers = &Printers Menu.Printers = &Printers
@@ -1084,7 +1084,7 @@ Menu.Uninstall = &Uninstall
Menu.UninstallTitle = Uninstall Menu.UninstallTitle = Uninstall
Menu.UninstallPrompt = Are you sure you want to uninstall %s? Menu.UninstallPrompt = Are you sure you want to uninstall %s?
Search.CategorySettings = Settings Search.CategorySettings = Settings
Search.CategoryPCSettings = PC settings Search.CategoryPCSettings = Modern Settings
Search.CategoryPrograms = Programs Search.CategoryPrograms = Programs
Search.CategoryDocuments = Documents Search.CategoryDocuments = Documents
Search.CategoryMusic = Music Search.CategoryMusic = Music
Binary file not shown.
+1 -1
View File
@@ -4,7 +4,7 @@
<PropertyGroup Label="UserMacros" /> <PropertyGroup Label="UserMacros" />
<PropertyGroup> <PropertyGroup>
<!-- Default product version to use if CS_VERSION environment variable is not defined --> <!-- Default product version to use if CS_VERSION environment variable is not defined -->
<CS_VERSION Condition="'$(CS_VERSION)'==''">4.4.0</CS_VERSION> <CS_VERSION Condition="'$(CS_VERSION)'==''">4.3.2</CS_VERSION>
</PropertyGroup> </PropertyGroup>
<ItemDefinitionGroup> <ItemDefinitionGroup>
<ResourceCompile> <ResourceCompile>
Binary file not shown.