annotate kdiff3/diff_ext_for_kdiff3/diff_ext.h @ 113:7bca1f1340f6 tip

Build fixes for Xcode 10 / Qt 5.12
author Chris Cannam
date Mon, 17 Dec 2018 11:13:01 +0000
parents 1184fc843210
children
rev   line source
joachim99@75 1 /*
joachim99@75 2 * Copyright (c) 2003-2004, Sergey Zorin. All rights reserved.
joachim99@75 3 *
joachim99@75 4 * This software is distributable under the BSD license. See the terms
joachim99@75 5 * of the BSD license in the LICENSE file provided with this software.
joachim99@75 6 *
joachim99@75 7 */
joachim99@75 8
joachim99@75 9 #ifndef __diff_ext_h__
joachim99@75 10 #define __diff_ext_h__
joachim99@75 11
joachim99@75 12 #include <windows.h>
joachim99@75 13 #include <windowsx.h>
joachim99@75 14 #include <shlobj.h>
joachim99@75 15
joachim99@75 16 #include "server.h"
joachim99@75 17
joachim99@75 18
joachim99@75 19 // this is the actual OLE Shell context menu handler
joachim99@75 20 class DIFF_EXT : public IContextMenu, IShellExtInit {
joachim99@75 21 public:
joachim99@75 22 DIFF_EXT();
joachim99@75 23 virtual ~DIFF_EXT();
joachim99@75 24
joachim99@75 25 //IUnknown members
joachim99@75 26 STDMETHODIMP QueryInterface(REFIID interface_id, void** result);
joachim99@75 27 STDMETHODIMP_(ULONG) AddRef();
joachim99@75 28 STDMETHODIMP_(ULONG) Release();
joachim99@75 29
joachim99@75 30 //IShell members
joachim99@75 31 STDMETHODIMP QueryContextMenu(HMENU menu, UINT index, UINT cmd_first, UINT cmd_last, UINT flags);
joachim99@75 32 STDMETHODIMP InvokeCommand(LPCMINVOKECOMMANDINFO info);
joachim99@75 33 STDMETHODIMP GetCommandString(UINT cmd, UINT flags, UINT* reserved, LPSTR name, UINT name_length);
joachim99@75 34
joachim99@75 35 //IShellExtInit methods
joachim99@75 36 STDMETHODIMP Initialize(LPCITEMIDLIST folder, IDataObject* subj, HKEY key);
joachim99@75 37
joachim99@75 38 private:
joachim99@75 39 void diff( const tstring& arguments );
joachim99@75 40 void diff_with(unsigned int num, bool bMerge);
joachim99@75 41 tstring cut_to_length(const tstring&, size_t length = 64);
joachim99@75 42 void initialize_language();
joachim99@75 43
joachim99@75 44 private:
joachim99@75 45 UINT m_nrOfSelectedFiles;
joachim99@75 46 tstring _file_name1;
joachim99@75 47 tstring _file_name2;
joachim99@75 48 tstring _file_name3;
joachim99@75 49 HINSTANCE _resource;
joachim99@75 50 HWND _hwnd;
joachim99@75 51
joachim99@75 52 ULONG _ref_count;
joachim99@75 53
joachim99@75 54 std::list< tstring >& m_recentFiles;
joachim99@75 55 UINT m_id_FirstCmd;
joachim99@75 56 UINT m_id_Diff;
joachim99@75 57 UINT m_id_DiffWith;
joachim99@75 58 UINT m_id_DiffLater;
joachim99@75 59 UINT m_id_MergeWith;
joachim99@75 60 UINT m_id_Merge3;
joachim99@75 61 UINT m_id_Diff3;
joachim99@75 62 UINT m_id_DiffWith_Base;
joachim99@75 63 UINT m_id_About;
joachim99@77 64 UINT m_id_ClearList;
joachim99@75 65 };
joachim99@75 66
joachim99@75 67 #endif // __diff_ext_h__