OSDN Git Service

Update Dutch.po (#842)
[winmerge-jp/winmerge-jp.git] / Src / Merge7zFormatShellImpl.h
1 /** 
2  * @file  Merge7zFormatShellImpl.h
3  *
4  * @brief Declaration file for Merge7zFormatShellImpl class
5  *
6  */
7 #pragma once
8
9 #include <Windows.h>
10
11 #define DllBuild_Merge7z 10 // Minimum DllBuild of Merge7z plugin required
12
13 // We include dllpstub.h for Merge7z.h
14 // Merge7z::Proxy embeds a DLLPSTUB
15 #include "dllpstub.h"
16 #include "../ArchiveSupport/Merge7z/Merge7z.h"
17 #include "UnicodeString.h"
18
19 struct Merge7zFormatShellImpl : public Merge7z::Format
20 {
21         virtual HRESULT DeCompressArchive(HWND, LPCTSTR path, LPCTSTR folder);
22         virtual HRESULT CompressArchive(HWND, LPCTSTR path, Merge7z::DirItemEnumerator *);
23         virtual Inspector *Open(HWND, LPCTSTR);
24         virtual Updater *Update(HWND, LPCTSTR);
25         virtual HRESULT GetHandlerProperty(HWND, PROPID, PROPVARIANT *, VARTYPE);
26         virtual BSTR GetHandlerName(HWND);
27         virtual BSTR GetHandlerClassID(HWND);
28         virtual BSTR GetHandlerExtension(HWND);
29         virtual BSTR GetHandlerAddExtension(HWND);
30         virtual VARIANT_BOOL GetHandlerUpdate(HWND);
31         virtual VARIANT_BOOL GetHandlerKeepName(HWND);
32         virtual BSTR GetDefaultName(HWND, LPCTSTR);
33         static Merge7z::Format *GuessFormat(const String& path);
34 };