From 725f68b6808a8a30778f58223fac75386f082785 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Fri, 18 May 2012 22:10:43 +0000 Subject: plugins folders renaming git-svn-id: http://svn.miranda-ng.org/main/trunk@61 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/w7ui/jumplistbuilder.cpp | 127 --------------------------------------- 1 file changed, 127 deletions(-) delete mode 100644 plugins/w7ui/jumplistbuilder.cpp (limited to 'plugins/w7ui/jumplistbuilder.cpp') diff --git a/plugins/w7ui/jumplistbuilder.cpp b/plugins/w7ui/jumplistbuilder.cpp deleted file mode 100644 index 5e5f1d9f65..0000000000 --- a/plugins/w7ui/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