diff --git a/.gitignore b/.gitignore index bfc82c8..75b2d85 100644 --- a/.gitignore +++ b/.gitignore @@ -60,6 +60,7 @@ artifacts/ StyleCopReport.xml # Files built by Visual Studio +*.dll *_i.c *_p.c *_i.h @@ -336,4 +337,11 @@ ASALocalRun/ *.PVS-Studio.* # Classic-Shell specific ignores -Skins/ \ No newline at end of file +Skins/ +Setup/ +Setup64/ +Final/ +Output/ +Temp/ +Localization/ +*.bin diff --git a/ClassicShellSrc/ClassicShellLib/ClassicShellLib.rc b/ClassicShellSrc/ClassicShellLib/ClassicShellLib.rc index d16aad0..3cde325 100644 --- a/ClassicShellSrc/ClassicShellLib/ClassicShellLib.rc +++ b/ClassicShellSrc/ClassicShellLib/ClassicShellLib.rc @@ -275,7 +275,7 @@ BEGIN IDS_OS_LANGUAGE "Current OS language" IDS_BMP_FILTERS "Image files (*.bmp,*.png)|*.bmp;*.png|" IDS_BMP_TITLE "Select Image File" - IDS_SEARCH_PROMPT "Search settings" + IDS_SEARCH_PROMPT "Search Settings" IDS_SETTING_SEARCH "Search Results" IDS_WEBSITE_TIP "Visit Classic Shell on the web - http://www.classicshell.net" IDS_LOCATE_SETTING "Locate setting" diff --git a/ClassicShellSrc/ClassicShellSetup/__MakeFinal.bat b/ClassicShellSrc/ClassicShellSetup/__MakeFinal.bat index bcbc742..7d98791 100644 --- a/ClassicShellSrc/ClassicShellSetup/__MakeFinal.bat +++ b/ClassicShellSrc/ClassicShellSetup/__MakeFinal.bat @@ -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 +@rem Clean repository and build fresh. Will erase current changes so disabled by default. +rem git clean -dfx + @rem Default version -@set CS_VERSION=4.4.0 +@set CS_VERSION=4.3.2 @if defined APPVEYOR_BUILD_VERSION ( @set CS_VERSION=%APPVEYOR_BUILD_VERSION% @@ -13,9 +19,21 @@ @call BuildBinaries.bat @if ERRORLEVEL 1 exit /b 1 + @call _BuildEnglish.bat @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 @exit /b 0 diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenu.rc b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenu.rc index bcd13d5..396bf96 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenu.rc +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenu.rc @@ -52,6 +52,14 @@ END // 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 FILEVERSION _PRODUCT_VERSION PRODUCTVERSION _PRODUCT_VERSION @@ -109,3 +117,4 @@ IDI_APPICON ICON "..\\ClassicShellSetup\\ClassicS ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED +_PRODUCT_VERSOIN diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartButton.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartButton.cpp index 0a2cff4..dda8208 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartButton.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartButton.cpp @@ -71,7 +71,7 @@ protected: private: enum { TIMER_BLEND=1, TIMER_LEAVE=2 }; - int m_TaskbarId; + size_t m_TaskbarId; SIZE m_Size; HBITMAP m_Bitmap, m_Blendmap; unsigned int *m_Bits, *m_BlendBits; @@ -121,7 +121,7 @@ CStartButton::CStartButton( void ) 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_TaskbarId=params>>1; m_bSmallIcons=IsTaskbarSmallIcons(); @@ -605,8 +605,8 @@ static std::map g_StartButtons; HWND CreateStartButton( int taskbarId, HWND taskBar, HWND rebar, const RECT &rcTask ) { - bool bRTL=(GetWindowLong(rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)!=0; - DWORD styleTopmost=GetWindowLong(taskBar,GWL_EXSTYLE)&WS_EX_TOPMOST; + bool bRTL=(GetWindowLongPtr(rebar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL)!=0; + DWORD styleTopmost=GetWindowLongPtr(taskBar,GWL_EXSTYLE)&WS_EX_TOPMOST; 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))); SIZE size=button.GetSize(); diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.cpp index 322bfcf..2cd99f2 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.cpp @@ -32,7 +32,8 @@ #endif const int MAIN_TASK_BAR=0; -std::map g_TaskbarInfos; +typedef std::map id_taskbar_map; +id_taskbar_map g_TaskbarInfos; static int g_LastTaskbar=MAIN_TASK_BAR; static int g_NextTaskbar=0; HWND g_TaskBar, g_OwnerWindow; @@ -67,7 +68,7 @@ static RECT g_TaskbarMargins; int g_CurrentCSMTaskbar=-1, g_CurrentWSMTaskbar=-1; static void FindWindowsMenu( void ); -static void RecreateStartButton( int taskbarId ); +static void RecreateStartButton( size_t taskbarId ); static bool WindowsMenuOpened( void ); static tSetWindowCompositionAttribute SetWindowCompositionAttribute; @@ -302,7 +303,7 @@ protected: if (LOWORD(wParam)!=WA_INACTIVE) 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; // check if another menu window is being activated @@ -390,29 +391,29 @@ static const TaskbarInfo *GetDefaultTaskbarInfo( void ) if (GetSettingBool(L"AllTaskbars")) { HMONITOR monitor=MonitorFromPoint(CPoint(GetMessagePos()),MONITOR_DEFAULTTONEAREST); - for (std::map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) + for (std::map::const_iterator it=g_TaskbarInfos.begin();it!=g_TaskbarInfos.end();++it) { MONITORINFO info; HMONITOR monitor2=NULL; if (GetTaskbarPosition(it->second.taskBar,&info,&monitor2,NULL)!=0xFFFFFFFF && monitor2==monitor) return &it->second; } - std::map::const_iterator it=g_TaskbarInfos.find(g_LastTaskbar); + id_taskbar_map::const_iterator it=g_TaskbarInfos.find(g_LastTaskbar); if (it!=g_TaskbarInfos.end()) return &it->second; } return &g_TaskbarInfos.begin()->second; } -TaskbarInfo *GetTaskbarInfo( int taskbarId ) +TaskbarInfo *GetTaskbarInfo( size_t taskbarId ) { - std::map::iterator it=g_TaskbarInfos.find(taskbarId); + std::map::iterator it=g_TaskbarInfos.find(taskbarId); return (it==g_TaskbarInfos.end())?NULL:&it->second; } static TaskbarInfo *FindTaskBarInfoButton( HWND button ) { - for (std::map::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) return &it->second; return NULL; @@ -420,7 +421,7 @@ static TaskbarInfo *FindTaskBarInfoButton( HWND button ) static TaskbarInfo *FindTaskBarInfoBar( HWND bar ) { - for (std::map::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) return &it->second; 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 -bool PointAroundStartButton( int taskbarId, const CPoint &pt ) +bool PointAroundStartButton( size_t taskbarId, const CPoint &pt ) { const TaskbarInfo *taskBar=GetTaskbarInfo(taskbarId); if (!taskBar || !taskBar->startButton) return false; @@ -708,7 +709,7 @@ bool PointAroundStartButton( int taskbarId, const CPoint &pt ) GetWindowRect(taskBar->startButton,&rc); if (uEdge==ABE_LEFT || uEdge==ABE_RIGHT) return pt.ytaskBar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL) + else if (GetWindowLongPtr(taskBar->taskBar,GWL_EXSTYLE)&WS_EX_LAYOUTRTL) return pt.x>rc.left; else return pt.x::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); } @@ -828,7 +829,7 @@ public: HMONITOR monitor; if (SUCCEEDED(pMonitor->GetHandle(&monitor))) { - for (std::map::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)) { @@ -1046,7 +1047,7 @@ static LRESULT CALLBACK HookAppManager( int code, WPARAM wParam, LPARAM lParam ) return CallNextHookEx(NULL,code,wParam,lParam); typedef BOOL (WINAPI *tGetWindowBand)(HWND,DWORD*); static tGetWindowBand GetWindowBand=(tGetWindowBand)GetProcAddress(GetModuleHandle(L"user32.dll"),"GetWindowBand"); - for (std::map::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; 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) { - for (std::map::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); if (uEdge==ABE_BOTTOM) @@ -1739,9 +1740,9 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam else { 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; - 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; if (zPos==HWND_BOTTOM) buttonFlags|=SWP_NOZORDER; @@ -1762,7 +1763,7 @@ static LRESULT CALLBACK SubclassTaskBarProc( HWND hWnd, UINT uMsg, WPARAM wParam } 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; else x=rcTask.left; @@ -2386,7 +2387,7 @@ void UpdateTaskBars( TUpdateTaskbar update ) DeleteDC(hdc); } } - for (std::map::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); } return; @@ -2406,7 +2407,7 @@ void UpdateTaskBars( TUpdateTaskbar update ) } if (g_bTrimHooks) bButton=false; - for (std::map::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; bool bButton2=bButton && (bAll || taskBar.taskBar==g_TaskBar); @@ -2550,7 +2551,7 @@ void UpdateTaskBars( TUpdateTaskbar update ) } } } - for (std::map::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; SendMessage(taskBar.taskBar,WM_SETTINGCHANGE,0,0); @@ -3006,9 +3007,9 @@ if (!g_bTrimHooks) UpdateTaskBars(TASKBAR_UPDATE_TEXTURE); } -static void RecreateStartButton( int taskbarId ) +static void RecreateStartButton( size_t taskbarId ) { - for (std::map::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; if (taskbarId>=0 && taskBar.taskbarId!=taskbarId) @@ -3133,7 +3134,7 @@ static void CleanStartMenuDLL( void ) ResetHotCorners(); UpdateTaskBars(TASKBAR_CLEAR); g_WinStartButton=NULL; - for (std::map::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) RemoveWindowSubclass(it->second.rebar,SubclassRebarProc,'CLSH'); diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.h b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.h index 2e9a60f..3aaa2be 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.h +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.h @@ -71,7 +71,7 @@ struct TaskbarInfo bool HasPart( HWND part ) const; }; -TaskbarInfo *GetTaskbarInfo( int taskbarId ); +TaskbarInfo *GetTaskbarInfo( size_t taskbarId ); UINT GetTaskbarPosition( HWND taskBar, MONITORINFO *pInfo, HMONITOR *pMonitor, RECT *pRc ); extern HWND STARTMENUAPI g_TaskBar, g_OwnerWindow; @@ -113,7 +113,7 @@ enum THotkeys // Set the hotkeys and controls for the start menu 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 RedrawTaskbars( void ); diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.rc b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.rc index aa9335b..5352c82 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.rc +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ClassicStartMenuDLL.rc @@ -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_PIC_PATH "User picture" IDS_PIC_PATH_TIP "Override the default user picture with another image" - IDS_SEARCH_METROS "Search PC settings" + IDS_SEARCH_METROS "Search Settings" END STRINGTABLE 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_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" @@ -1244,8 +1244,8 @@ BEGIN IDS_TASK_OPACITY_TIP "Set the opacity for the taskbar (0 - transparent, 100 - opaque)" IDS_TASK_COLOR "Taskbar color" IDS_TASK_COLOR_TIP "Set the color for the taskbar" - IDS_PCSETTINGS "PC Settings" - IDS_PCSETTINGS_TIP "Shows the modern PC settings" + IDS_PCSETTINGS "Settings" + IDS_PCSETTINGS_TIP "Shows the modern Settings window" IDS_HIGHLIGHT_NEWAPPS "Highlight newly installed apps" IDS_HIGHLIGHT_NEWAPPS_TIP "When this is checked, the start menu will highlight the apps that were recently installed" diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ItemManager.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ItemManager.cpp index facdd37..c6189c6 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ItemManager.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/ItemManager.cpp @@ -1726,7 +1726,7 @@ void CItemManager::AddOldItems( const std::vector &hashes ) if (m_OldItemInfos.empty()) regItems.SetBinaryValue(L"OldItems",NULL,0); 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 ) diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuCommands.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuCommands.cpp index 0615b24..8c57098 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuCommands.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuCommands.cpp @@ -240,7 +240,7 @@ static DWORD WINAPI NewShortcutThread( void *param ) static DWORD WINAPI SleepThread( void *param ) { - SetSuspendState((BOOL)(intptr_t)param,FALSE,FALSE); + SetSuspendState((intptr_t)param != 0,FALSE,FALSE); 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)); 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 - 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) { @@ -2245,7 +2245,7 @@ void CMenuContainer::ActivateItem( int index, TActivateType type, const POINT *p 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(),false,true); } @@ -2956,16 +2956,16 @@ void CMenuContainer::DragTreeItem( const void *treeItem, bool bApp ) item.id=MENU_NO; item.name=pTreeItem->name; item.pItemInfo=pTreeItem->pItemInfo1; - item.pItem1=pTreeItem->pItemInfo1->GetPidl(); item.pItem2=pTreeItem->pItemInfo2?(PIDLIST_ABSOLUTE)pTreeItem->pItemInfo2->GetPidl():NULL; item.bFolder=pTreeItem->bFolder; item.bMetroLink=false; item.bMetroApp=false; - if (pTreeItem->pItemInfo1) + if(item.pItemInfo) { + item.pItem1=pTreeItem->pItemInfo1->GetPidl(); CItemManager::RWLock lock(&g_ItemManager,false,CItemManager::RWLOCK_ITEMS); - item.bMetroLink=pTreeItem->pItemInfo1->IsMetroLink(); - item.bMetroApp=pTreeItem->pItemInfo1->IsMetroApp(); + item.bMetroLink=item.pItemInfo->IsMetroLink(); + item.bMetroApp=item.pItemInfo->IsMetroApp(); } DragOut(m_ProgramTreeIndex,bApp); item.id=MENU_PROGRAMS_TREE; diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuContainer.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuContainer.cpp index 87bc1a4..8a7cf10 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuContainer.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/MenuContainer.cpp @@ -8089,9 +8089,9 @@ HWND CMenuContainer::ToggleStartMenu( int taskbarId, bool bKeyboard, bool bAllPr } 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 - 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) { diff --git a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/SearchManager.cpp b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/SearchManager.cpp index 0c2847a..028ea34 100644 --- a/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/SearchManager.cpp +++ b/ClassicShellSrc/ClassicStartMenu/ClassicStartMenuDLL/SearchManager.cpp @@ -784,7 +784,7 @@ void CSearchManager::SearchThread( void ) scopeList.push_back(SearchScope()); SearchScope &scope=*scopeList.rbegin(); 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.roots.push_back(L"FILE:"); } diff --git a/ClassicShellSrc/ClassicStartMenu/StartMenuL10N.ini b/ClassicShellSrc/ClassicStartMenu/StartMenuL10N.ini index 1be09df..d87abde 100644 --- a/ClassicShellSrc/ClassicStartMenu/StartMenuL10N.ini +++ b/ClassicShellSrc/ClassicStartMenu/StartMenuL10N.ini @@ -998,7 +998,7 @@ Menu.RestartUpdate = Update and restart Menu.Sleep = &Sleep Menu.Hibernate = &Hibernate Menu.ControlPanel = &Control Panel -Menu.PCSettings = PC settings +Menu.PCSettings = Settings Menu.Security = Windows Security Menu.Network = &Network Connections Menu.Printers = &Printers @@ -1084,7 +1084,7 @@ Menu.Uninstall = &Uninstall Menu.UninstallTitle = Uninstall Menu.UninstallPrompt = Are you sure you want to uninstall %s? Search.CategorySettings = Settings -Search.CategoryPCSettings = PC settings +Search.CategoryPCSettings = Modern Settings Search.CategoryPrograms = Programs Search.CategoryDocuments = Documents Search.CategoryMusic = Music diff --git a/ClassicShellSrc/Localization/English/en-US.dll b/ClassicShellSrc/Localization/English/en-US.dll deleted file mode 100644 index 133cc6f..0000000 Binary files a/ClassicShellSrc/Localization/English/en-US.dll and /dev/null differ diff --git a/ClassicShellSrc/Version.props b/ClassicShellSrc/Version.props index cd141c3..b0ec7bf 100644 --- a/ClassicShellSrc/Version.props +++ b/ClassicShellSrc/Version.props @@ -4,7 +4,7 @@ - 4.4.0 + 4.3.2 @@ -12,4 +12,4 @@ - + \ No newline at end of file diff --git a/ClassicShellSrc/en-US.dll b/ClassicShellSrc/en-US.dll deleted file mode 100644 index 133cc6f..0000000 Binary files a/ClassicShellSrc/en-US.dll and /dev/null differ