From 690f5e6d29d1c85c4be72638eb22843964c2f512 Mon Sep 17 00:00:00 2001 From: Alexander Lantsev Date: Fri, 24 Apr 2015 08:21:28 +0000 Subject: All non-working stuff moved from trunk git-svn-id: http://svn.miranda-ng.org/main/trunk@13071 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp | 127 ----------------------- 1 file changed, 127 deletions(-) delete mode 100644 plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp (limited to 'plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp') diff --git a/plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp b/plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp deleted file mode 100644 index 5e5f1d9f65..0000000000 --- a/plugins/!Deprecated/W7UI/src/jumplistbuilder.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include "headers.h" - -CJumpListBuilder *CJumpListBuilder::m_instance = 0; - -CJumpListBuilder::CJumpListBuilder() -{ - m_hBuildCategories = CreateHookableEvent(ME_JUMPLIST_BUILDCATEGORIES); - m_hBuildItems = CreateHookableEvent(ME_JUMPLIST_BUILDITEMS); - CreateSvc(MS_JUMPLIST_REBUILD, &CJumpListBuilder::Rebuild); - CreateSvc(MS_JUMPLIST_ADDCATEGORY, &CJumpListBuilder::AddCategory); - CreateSvc(MS_JUMPLIST_ADDITEM, &CJumpListBuilder::AddItem); -} - -CJumpListBuilder::~CJumpListBuilder() -{ - KillObjectServices(this); - DestroyHookableEvent(m_hBuildCategories); - DestroyHookableEvent(m_hBuildItems); -} - -void CJumpListBuilder::BuildJumpList() -{ - m_lists = new LIST(5, _tcscmp); - NotifyEventHooks(m_hBuildCategories, 0, 0); - - UINT maxSlots; - IObjectArray *pRemoved; - CoCreateInstance(CLSID_CustomDestinationList, NULL, CLSCTX_INPROC_SERVER, IID_ICustomDestinationList, (void **)&m_pList); - m_pList->BeginList(&maxSlots, IID_IObjectArray, (void **)&pRemoved); - BuildCategory(NULL); - for (int i = 0; i < m_lists->getCount(); ++i) - BuildCategory((*m_lists)[i]); - m_pList->CommitList(); - m_pList->Release(); - pRemoved->Release(); - - m_lists->destroy(); - delete m_lists; -} - -int __cdecl CJumpListBuilder::Rebuild(WPARAM wParam, LPARAM lParam) -{ - BuildJumpList(); - return 0; -} - -int __cdecl CJumpListBuilder::AddCategory(WPARAM wParam, LPARAM lParam) -{ - TCHAR *category = (TCHAR *)lParam; - if (!m_lists->find(category)) m_lists->insert(mir_wstrdup(category)); - return 0; -} - -int __cdecl CJumpListBuilder::AddItem(WPARAM wParam, LPARAM lParam) -{ - MIRANDAJUMPLISTITEM *item = (MIRANDAJUMPLISTITEM *)lParam; - switch (item->iconSource) - { - case MIS_ICOLIB: - m_pCurrentList->AddItem(item->iconName, item->szTitle, _T("rundll32.exe"), BuildJumpListCommand(item->szPrefix, item->szArgument)); - break; - case MIS_GENERAL: - m_pCurrentList->AddItem(item->iconIdx, item->szTitle, _T("rundll32.exe"), BuildJumpListCommand(item->szPrefix, item->szArgument)); - break; - case MIS_PROTOCOL: - m_pCurrentList->AddItem(item->iconName, item->iconIdx, item->szTitle, _T("rundll32.exe"), BuildJumpListCommand(item->szPrefix, item->szArgument)); - break; - } - return 0; -} - -void CJumpListBuilder::BuildCategory(TCHAR *category) -{ - m_pCurrentList = new CJumpListArray; - NotifyEventHooks(m_hBuildItems, 0, (LPARAM)category); - - if (category) - m_pList->AppendCategory(category, m_pCurrentList->GetArray()); - else - m_pList->AddUserTasks(m_pCurrentList->GetArray()); - delete m_pCurrentList; - -} - -TCHAR *CJumpListBuilder::BuildJumpListCommand(TCHAR *prefix, TCHAR *argument) -{ - TCHAR path[MAX_PATH]; - GetModuleFileName(g_hInst, path, SIZEOF(path)); - mir_sntprintf(m_cmdBuf, SIZEOF(m_cmdBuf), _T("\"%s\",ProcessJumpList %s:%s"), path, prefix, argument); - return m_cmdBuf; -} - -HANDLE CJumpListBuilder::CreateSvc(char *svc, int (__cdecl CJumpListBuilder::*fn)(WPARAM, LPARAM)) -{ - return CreateServiceFunctionObj(svc, *(MIRANDASERVICEOBJ *)&fn, this); -} - -/* -static TCHAR *BuildJumpListCommand(TCHAR *buf, int size, TCHAR *arg); - -static void SetupTasks() -{ - TCHAR buf[MAX_PATH * 2]; - - CJumpListArray tasks; - tasks.AddItem(SKINICON_STATUS_ONLINE, TranslateT("Online"), _T("rundll32.exe"), BuildJumpListCommand(buf, SIZEOF(buf), _T("status:online"))); - tasks.AddItem(SKINICON_STATUS_DND, TranslateT("Do not disturb"), _T("rundll32.exe"), BuildJumpListCommand(buf, SIZEOF(buf), _T("status:dnd"))); - tasks.AddItem(SKINICON_STATUS_INVISIBLE, TranslateT("Invisible"), _T("rundll32.exe"), BuildJumpListCommand(buf, SIZEOF(buf), _T("status:invisible"))); - tasks.AddItem(SKINICON_STATUS_OFFLINE, TranslateT("Offline"), _T("rundll32.exe"), BuildJumpListCommand(buf, SIZEOF(buf), _T("status:offline"))); - -// CJumpListArray contacts; -// contacts.AddItem("core_status_*0", TranslateT("Nickname"), L"taskhost.exe", L"profile.dat -contact:hcontact"); - - UINT maxSlots; - IObjectArray *pRemoved; - - ICustomDestinationList *pList; - CoCreateInstance(CLSID_CustomDestinationList, NULL, CLSCTX_INPROC_SERVER, IID_ICustomDestinationList, (void **)&pList); - pList->BeginList(&maxSlots, IID_IObjectArray, (void **)&pRemoved); - pList->AddUserTasks(tasks.GetArray()); -// pList->AppendCategory(L"Contacts", contacts.GetArray()); - pList->CommitList(); - pList->Release(); - - pRemoved->Release(); -} -*/ \ No newline at end of file -- cgit v1.2.3