1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 /************************************************************** 22 * 23 * Licensed to the Apache Software Foundation (ASF) under one 24 * or more contributor license agreements. See the NOTICE file 25 * distributed with this work for additional information 26 * regarding copyright ownership. The ASF licenses this file 27 * to you under the Apache License, Version 2.0 (the 28 * "License"); you may not use this file except in compliance 29 * with the License. You may obtain a copy of the License at 30 * 31 * http://www.apache.org/licenses/LICENSE-2.0 32 * 33 * Unless required by applicable law or agreed to in writing, 34 * software distributed under the License is distributed on an 35 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 36 * KIND, either express or implied. See the License for the 37 * specific language governing permissions and limitations 38 * under the License. 39 * 40 *************************************************************/ 41 /************************************************************** 42 * 43 * Licensed to the Apache Software Foundation (ASF) under one 44 * or more contributor license agreements. See the NOTICE file 45 * distributed with this work for additional information 46 * regarding copyright ownership. The ASF licenses this file 47 * to you under the Apache License, Version 2.0 (the 48 * "License"); you may not use this file except in compliance 49 * with the License. You may obtain a copy of the License at 50 * 51 * http://www.apache.org/licenses/LICENSE-2.0 52 * 53 * Unless required by applicable law or agreed to in writing, 54 * software distributed under the License is distributed on an 55 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 56 * KIND, either express or implied. See the License for the 57 * specific language governing permissions and limitations 58 * under the License. 59 * 60 *************************************************************/ 61 /************************************************************** 62 * 63 * Licensed to the Apache Software Foundation (ASF) under one 64 * or more contributor license agreements. See the NOTICE file 65 * distributed with this work for additional information 66 * regarding copyright ownership. The ASF licenses this file 67 * to you under the Apache License, Version 2.0 (the 68 * "License"); you may not use this file except in compliance 69 * with the License. You may obtain a copy of the License at 70 * 71 * http://www.apache.org/licenses/LICENSE-2.0 72 * 73 * Unless required by applicable law or agreed to in writing, 74 * software distributed under the License is distributed on an 75 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 76 * KIND, either express or implied. See the License for the 77 * specific language governing permissions and limitations 78 * under the License. 79 * 80 *************************************************************/ 81 // XMergeFilter.h: interface for the CXMergeFilter class. 82 // 83 ////////////////////////////////////////////////////////////////////// 84 85 #if !defined(AFX_XMERGEFILTER_H__25C39F6B_A1D7_408E_8F58_9CBEE9A666CC__INCLUDED_) 86 #define AFX_XMERGEFILTER_H__25C39F6B_A1D7_408E_8F58_9CBEE9A666CC__INCLUDED_ 87 88 #if _MSC_VER > 1000 89 #pragma once 90 #endif // _MSC_VER > 1000 91 92 93 94 95 96 class CXMergeFilter : public ICeFileFilter 97 { 98 protected: 99 long m_cRef; 100 101 private: 102 TCHAR* GetXMergeClassPath(); 103 TCHAR* GetJavaBaseDir(); 104 105 TCHAR* m_szJavaBaseDir; 106 TCHAR* m_szClasspath; 107 108 BOOL m_bHaveExcel; 109 BOOL m_bHaveWord; 110 111 112 public: 113 static const LPTSTR m_pszPSWExportCLSID; 114 static const LPTSTR m_pszPSWExportExt; 115 static const LPTSTR m_pszPSWExportDesc; 116 static const LPTSTR m_pszPSWExportShortDesc; 117 118 static const LPTSTR m_pszPSWImportCLSID; 119 static const LPTSTR m_pszPSWImportExt; 120 static const LPTSTR m_pszPSWImportDesc; 121 static const LPTSTR m_pszPSWImportShortDesc; 122 123 static const LPTSTR m_pszPXLExportCLSID; 124 static const LPTSTR m_pszPXLExportExt; 125 static const LPTSTR m_pszPXLExportDesc; 126 static const LPTSTR m_pszPXLExportShortDesc; 127 128 static const LPTSTR m_pszPXLImportCLSID; 129 static const LPTSTR m_pszPXLImportExt; 130 static const LPTSTR m_pszPXLImportDesc; 131 static const LPTSTR m_pszPXLImportShortDesc; 132 133 public: 134 CXMergeFilter(); 135 virtual ~CXMergeFilter(); 136 137 138 /********** IUnknown methods **********/ 139 STDMETHODIMP QueryInterface(REFIID iid, void **ppvObject); 140 STDMETHODIMP_(ULONG) AddRef(); 141 STDMETHODIMP_(ULONG) Release(); 142 143 /********** ICeFileFilter methods *********/ 144 STDMETHODIMP FilterOptions(HWND hwndParent); 145 STDMETHODIMP FormatMessage(DWORD dwFlags, DWORD dwMessageId, DWORD dwLanguageId, 146 LPTSTR lpBuffer, DWORD nSize, va_list *Arguments, DWORD *pcb); 147 STDMETHODIMP NextConvertFile(int nConversion, CFF_CONVERTINFO *pci, 148 CFF_SOURCEFILE *psf, CFF_DESTINATIONFILE *pdf, 149 volatile BOOL *pbCancel, CF_ERROR *perr); 150 151 }; 152 153 #endif // !defined(AFX_XMERGEFILTER_H__25C39F6B_A1D7_408E_8F58_9CBEE9A666CC__INCLUDED_) 154