Mercurial > hg > easyhg-kdiff3
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__ |
