ReactOS 0.4.16-dev-2208-g6350669
CZipCreator.hpp
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Zip Shell Extension
3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4 * PURPOSE: Create a zip file
5 * COPYRIGHT: Copyright 2019 Mark Jansen (mark.jansen@reactos.org)
6 * Copyright 2019-2026 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
7 */
8
9#pragma once
10
11struct CZipCreatorImpl;
12
14{
15public:
17 CComHeapPtr<ITEMIDLIST> m_pidlNotify;
18
19 virtual ~CZipCreator();
20
21 static CZipCreator* DoCreate(PCWSTR pszExistingZip = NULL, PCWSTR pszTargetDir = NULL);
22
23 virtual void DoAddItem(PCWSTR pszFile);
24 static BOOL runThread(CZipCreator* pCreator);
25
27 {
28 if (pidl)
29 m_pidlNotify.Attach(ILClone(pidl));
30 }
31
32protected:
34};
static BOOL runThread(CZipCreator *pCreator)
static CZipCreator * DoCreate(PCWSTR pszExistingZip=NULL, PCWSTR pszTargetDir=NULL)
struct CZipCreatorImpl * m_pimpl
Definition: CZipCreator.hpp:16
CComHeapPtr< ITEMIDLIST > m_pidlNotify
Definition: CZipCreator.hpp:17
virtual ~CZipCreator()
void SetNotifyPidl(PCIDLIST_ABSOLUTE pidl)
Definition: CZipCreator.hpp:26
virtual void DoAddItem(PCWSTR pszFile)
#define NULL
Definition: types.h:112
unsigned int BOOL
Definition: ntddk_ex.h:94
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:238
const uint16_t * PCWSTR
Definition: typedefs.h:57