LRESULT CALLBACK Explorerplusplus::MainWndTaskbarThumbnailProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { if(uMsg == m_uTaskbarButtonCreatedMessage) { if(m_pTaskbarList != NULL) { m_pTaskbarList->Release(); } CoCreateInstance(CLSID_TaskbarList,NULL,CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&m_pTaskbarList)); m_pTaskbarList->HrInit(); m_bTaskbarInitialised = TRUE; /* Add each of the jump list tasks. */ SetupJumplistTasks(); /* Register each of the tabs. */ for(auto itr = m_TabProxyList.begin();itr != m_TabProxyList.end();itr++) { BOOL bActive = (itr->iTabId == m_iObjectIndex); RegisterTab(itr->hProxy,EMPTY_STRING,bActive); HandleTabText(itr->iTabId); SetTabIcon(itr->iTabId); } RemoveWindowSubclass(hwnd,MainWndProcStub,0); return 0; } return DefSubclassProc(hwnd,uMsg,wParam,lParam); }
void Explorerplusplus::UpdateWindowStates(void) { m_pActiveShellBrowser->QueryCurrentDirectory(SIZEOF_ARRAY(m_CurrentDirectory),m_CurrentDirectory); HandleMainWindowText(); HandleAddressBarText(); HandleToolbarItemStates(); HandleTabText(); HandleTreeViewSelection(); HandleStatusText(); HandleTabToolbarItemStates(); HandleFileSelectionDisplay(); if(m_bShowFolders) SendMessage(m_hMainToolbar,TB_CHECKBUTTON,(WPARAM)TOOLBAR_FOLDERS,(LPARAM)TRUE); }
void Explorerplusplus::HandleTabText(int iTabId) { TCITEM tcItem; int nTabs; int i = 0; nTabs = TabCtrl_GetItemCount(m_hTabCtrl); for(i = 0;i < nTabs;i++) { tcItem.mask = TCIF_PARAM; TabCtrl_GetItem(m_hTabCtrl,i,&tcItem); if((int)tcItem.lParam == iTabId) { HandleTabText(i,iTabId); break; } } }
void Explorerplusplus::HandleTabText(void) { HandleTabText(m_iTabSelectedItem,m_iObjectIndex); }