docsh2.cxx (baef7ff7) | docsh2.cxx (fefd526c) |
---|---|
1/************************************************************** | 1/************************************************************** |
2 * | 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 | 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 * | 10 * |
11 * http://www.apache.org/licenses/LICENSE-2.0 | 11 * http://www.apache.org/licenses/LICENSE-2.0 |
12 * | 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. | 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 * | 19 * |
20 *************************************************************/ 21 22 23 24// MARKER(update_precomp.py): autogen include statement, do not remove 25#include "precompiled_sw.hxx" 26 27#include <com/sun/star/lang/XMultiServiceFactory.hpp> --- 302 unchanged lines hidden (view full) --- 330 if( mpDoc && IsInPrepareClose() ) 331 { 332 uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = mpDoc->GetVbaEventProcessor(); 333 if( xVbaEvents.is() ) 334 { 335 using namespace com::sun::star::script::vba::VBAEventId; 336 uno::Sequence< uno::Any > aArgs; 337 xVbaEvents->processVbaEvent( DOCUMENT_CLOSE, aArgs ); | 20 *************************************************************/ 21 22 23 24// MARKER(update_precomp.py): autogen include statement, do not remove 25#include "precompiled_sw.hxx" 26 27#include <com/sun/star/lang/XMultiServiceFactory.hpp> --- 302 unchanged lines hidden (view full) --- 330 if( mpDoc && IsInPrepareClose() ) 331 { 332 uno::Reference< script::vba::XVBAEventProcessor > xVbaEvents = mpDoc->GetVbaEventProcessor(); 333 if( xVbaEvents.is() ) 334 { 335 using namespace com::sun::star::script::vba::VBAEventId; 336 uno::Sequence< uno::Any > aArgs; 337 xVbaEvents->processVbaEvent( DOCUMENT_CLOSE, aArgs ); |
338 } 339 } | 338 } 339 } |
340#endif 341 return nRet; | 340#endif 341 return nRet; |
342} | 342} |
343 344/*-------------------------------------------------------------------- 345 Beschreibung: Organizer 346 --------------------------------------------------------------------*/ 347 348sal_Bool SwDocShell::Insert( SfxObjectShell &rSource, 349 sal_uInt16 nSourceIdx1, // SourcePool: oberste Inhaltsebene (Vorlagen/Makros) 350 sal_uInt16 nSourceIdx2, // Index in den Inhalt --- 11 unchanged lines hidden (view full) --- 362 363 sal_Bool bRet = sal_False; 364 365 if (INDEX_IGNORE == rIdx1 && CONTENT_STYLE == nSourceIdx1) 366 rIdx1 = CONTENT_STYLE; 367 368 if (CONTENT_STYLE == nSourceIdx1 && CONTENT_STYLE == rIdx1) 369 { | 343 344/*-------------------------------------------------------------------- 345 Beschreibung: Organizer 346 --------------------------------------------------------------------*/ 347 348sal_Bool SwDocShell::Insert( SfxObjectShell &rSource, 349 sal_uInt16 nSourceIdx1, // SourcePool: oberste Inhaltsebene (Vorlagen/Makros) 350 sal_uInt16 nSourceIdx2, // Index in den Inhalt --- 11 unchanged lines hidden (view full) --- 362 363 sal_Bool bRet = sal_False; 364 365 if (INDEX_IGNORE == rIdx1 && CONTENT_STYLE == nSourceIdx1) 366 rIdx1 = CONTENT_STYLE; 367 368 if (CONTENT_STYLE == nSourceIdx1 && CONTENT_STYLE == rIdx1) 369 { |
370 SfxStyleSheetBasePool* pHisPool = rSource.GetStyleSheetPool(); | 370 SfxStyleSheetBasePool* pHisPool = rSource.GetStyleSheetPool(); |
371 SwDocStyleSheetPool* pMyPool = 372 (SwDocStyleSheetPool*)GetStyleSheetPool(); 373 374 // wir koennen nicht in uns selbst hin und her moven 375 if( pHisPool == pMyPool ) 376 return sal_False; 377 378 if( INDEX_IGNORE == rIdx2 ) --- 304 unchanged lines hidden (view full) --- 683 pDlg->Execute(); 684 delete pDlg; 685 686 rACW.SetLockWordLstLocked( bOldLocked ); 687 688 SwEditShell::SetAutoFmtFlags( pAFlags ); 689 rACW.SetMinWordLen( pAFlags->nAutoCmpltWordLen ); 690 rACW.SetMaxCount( pAFlags->nAutoCmpltListLen ); | 371 SwDocStyleSheetPool* pMyPool = 372 (SwDocStyleSheetPool*)GetStyleSheetPool(); 373 374 // wir koennen nicht in uns selbst hin und her moven 375 if( pHisPool == pMyPool ) 376 return sal_False; 377 378 if( INDEX_IGNORE == rIdx2 ) --- 304 unchanged lines hidden (view full) --- 683 pDlg->Execute(); 684 delete pDlg; 685 686 rACW.SetLockWordLstLocked( bOldLocked ); 687 688 SwEditShell::SetAutoFmtFlags( pAFlags ); 689 rACW.SetMinWordLen( pAFlags->nAutoCmpltWordLen ); 690 rACW.SetMaxCount( pAFlags->nAutoCmpltListLen ); |
691 if( pAFlags->pAutoCmpltList ) // any changes? | 691 if( pAFlags->pAutoCmpltList ) // any changes? |
692 { 693 rACW.CheckChangedList( aTmpLst ); 694 // clear the temp WordList pointer 695 pAFlags->pAutoCmpltList = 0; 696 } 697 // remove all pointer we never delete the strings 698 aTmpLst.Remove( (sal_uInt16)0, aTmpLst.Count() ); 699 --- 172 unchanged lines hidden (view full) --- 872 } 873 874 if( aFileName.Len() ) 875 { 876 SwgReaderOption aOpt; 877 aOpt.SetTxtFmts( bText = (0 != (nFlags&SFX_LOAD_TEXT_STYLES) )); 878 aOpt.SetFrmFmts( bFrame = (0 != (nFlags&SFX_LOAD_FRAME_STYLES))); 879 aOpt.SetPageDescs( bPage = (0 != (nFlags&SFX_LOAD_PAGE_STYLES ))); | 692 { 693 rACW.CheckChangedList( aTmpLst ); 694 // clear the temp WordList pointer 695 pAFlags->pAutoCmpltList = 0; 696 } 697 // remove all pointer we never delete the strings 698 aTmpLst.Remove( (sal_uInt16)0, aTmpLst.Count() ); 699 --- 172 unchanged lines hidden (view full) --- 872 } 873 874 if( aFileName.Len() ) 875 { 876 SwgReaderOption aOpt; 877 aOpt.SetTxtFmts( bText = (0 != (nFlags&SFX_LOAD_TEXT_STYLES) )); 878 aOpt.SetFrmFmts( bFrame = (0 != (nFlags&SFX_LOAD_FRAME_STYLES))); 879 aOpt.SetPageDescs( bPage = (0 != (nFlags&SFX_LOAD_PAGE_STYLES ))); |
880 aOpt.SetNumRules( bNum = (0 != (nFlags&SFX_LOAD_NUM_STYLES ))); | 880 aOpt.SetNumRules( bNum = (0 != (nFlags&SFX_LOAD_NUM_STYLES ))); |
881 //different meaning between SFX_MERGE_STYLES and aOpt.SetMerge! 882 bMerge = 0 != (nFlags&SFX_MERGE_STYLES); 883 aOpt.SetMerge( !bMerge ); 884 885 SetError( LoadStylesFromFile( aFileName, aOpt, sal_False ), ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) )); 886 if ( !GetError() ) 887 rReq.Done(); 888 } 889 } 890 break; 891 case SID_SOURCEVIEW: 892 { 893 SfxViewShell* pViewShell = GetView() 894 ? (SfxViewShell*)GetView() 895 : SfxViewShell::Current(); | 881 //different meaning between SFX_MERGE_STYLES and aOpt.SetMerge! 882 bMerge = 0 != (nFlags&SFX_MERGE_STYLES); 883 aOpt.SetMerge( !bMerge ); 884 885 SetError( LoadStylesFromFile( aFileName, aOpt, sal_False ), ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( OSL_LOG_PREFIX ) )); 886 if ( !GetError() ) 887 rReq.Done(); 888 } 889 } 890 break; 891 case SID_SOURCEVIEW: 892 { 893 SfxViewShell* pViewShell = GetView() 894 ? (SfxViewShell*)GetView() 895 : SfxViewShell::Current(); |
896 SfxViewFrame* pViewFrm = pViewShell->GetViewFrame(); | 896 SfxViewFrame* pViewFrm = pViewShell->GetViewFrame(); |
897 SwSrcView* pSrcView = dynamic_cast< SwSrcView *>( pViewShell ); 898 if(!pSrcView) 899 { 900 // 3 possible state: 901 // 1 - file unsaved -> save as HTML 902 // 2 - file modified and HTML filter active -> save 903 // 3 - file saved in non-HTML -> QueryBox to save as HTML 904 const SfxFilter* pHtmlFlt = --- 292 unchanged lines hidden (view full) --- 1197 break; 1198 case FN_NEW_HTML_DOC: 1199 case FN_NEW_GLOBAL_DOC: 1200 { 1201 bDone = sal_False; 1202 sal_Bool bCreateHtml = FN_NEW_HTML_DOC == nWhich; 1203 1204 sal_Bool bCreateByOutlineLevel = false; //#outline level,add by zhaojianwei | 897 SwSrcView* pSrcView = dynamic_cast< SwSrcView *>( pViewShell ); 898 if(!pSrcView) 899 { 900 // 3 possible state: 901 // 1 - file unsaved -> save as HTML 902 // 2 - file modified and HTML filter active -> save 903 // 3 - file saved in non-HTML -> QueryBox to save as HTML 904 const SfxFilter* pHtmlFlt = --- 292 unchanged lines hidden (view full) --- 1197 break; 1198 case FN_NEW_HTML_DOC: 1199 case FN_NEW_GLOBAL_DOC: 1200 { 1201 bDone = sal_False; 1202 sal_Bool bCreateHtml = FN_NEW_HTML_DOC == nWhich; 1203 1204 sal_Bool bCreateByOutlineLevel = false; //#outline level,add by zhaojianwei |
1205 sal_Int32 nTemplateOutlineLevel = 0 ; //#outline level,add by zhaojianwei | 1205 sal_Int32 nTemplateOutlineLevel = 0 ; //#outline level,add by zhaojianwei |
1206 1207 String aFileName, aTemplateName; 1208 if( pArgs && SFX_ITEM_SET == pArgs->GetItemState( nWhich, sal_False, &pItem ) ) 1209 { 1210 aFileName = ((const SfxStringItem*)pItem)->GetValue(); 1211 SFX_ITEMSET_ARG( pArgs, pTemplItem, SfxStringItem, SID_TEMPLATE_NAME, sal_False ); 1212 if ( pTemplItem ) 1213 aTemplateName = pTemplItem->GetValue(); --- 9 unchanged lines hidden (view full) --- 1223 CommonFilePickerElementIds::LISTBOX_FILTER, 1224 CommonFilePickerElementIds::CONTROL_FILEVIEW, 1225 CommonFilePickerElementIds::EDIT_FILEURL, 1226 ExtendedFilePickerElementIds::CHECKBOX_AUTOEXTENSION, 1227 ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1228 0 1229 }; 1230 | 1206 1207 String aFileName, aTemplateName; 1208 if( pArgs && SFX_ITEM_SET == pArgs->GetItemState( nWhich, sal_False, &pItem ) ) 1209 { 1210 aFileName = ((const SfxStringItem*)pItem)->GetValue(); 1211 SFX_ITEMSET_ARG( pArgs, pTemplItem, SfxStringItem, SID_TEMPLATE_NAME, sal_False ); 1212 if ( pTemplItem ) 1213 aTemplateName = pTemplItem->GetValue(); --- 9 unchanged lines hidden (view full) --- 1223 CommonFilePickerElementIds::LISTBOX_FILTER, 1224 CommonFilePickerElementIds::CONTROL_FILEVIEW, 1225 CommonFilePickerElementIds::EDIT_FILEURL, 1226 ExtendedFilePickerElementIds::CHECKBOX_AUTOEXTENSION, 1227 ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1228 0 1229 }; 1230 |
1231 const char* aHTMLHelpIds[] = 1232 { | 1231 const char* aHTMLHelpIds[] = 1232 { |
1233 HID_SEND_HTML_CTRL_PUSHBUTTON_OK, 1234 HID_SEND_HTML_CTRL_PUSHBUTTON_CANCEL, 1235 HID_SEND_HTML_CTRL_LISTBOX_FILTER, 1236 HID_SEND_HTML_CTRL_CONTROL_FILEVIEW, 1237 HID_SEND_HTML_CTRL_EDIT_FILEURL, 1238 HID_SEND_HTML_CTRL_CHECKBOX_AUTOEXTENSION, 1239 HID_SEND_HTML_CTRL_LISTBOX_TEMPLATE, 1240 "" 1241 }; 1242 | 1233 HID_SEND_HTML_CTRL_PUSHBUTTON_OK, 1234 HID_SEND_HTML_CTRL_PUSHBUTTON_CANCEL, 1235 HID_SEND_HTML_CTRL_LISTBOX_FILTER, 1236 HID_SEND_HTML_CTRL_CONTROL_FILEVIEW, 1237 HID_SEND_HTML_CTRL_EDIT_FILEURL, 1238 HID_SEND_HTML_CTRL_CHECKBOX_AUTOEXTENSION, 1239 HID_SEND_HTML_CTRL_LISTBOX_TEMPLATE, 1240 "" 1241 }; 1242 |
1243 const char* aMasterHelpIds[] = 1244 { | 1243 const char* aMasterHelpIds[] = 1244 { |
1245 HID_SEND_MASTER_CTRL_PUSHBUTTON_OK, 1246 HID_SEND_MASTER_CTRL_PUSHBUTTON_CANCEL, 1247 HID_SEND_MASTER_CTRL_LISTBOX_FILTER, 1248 HID_SEND_MASTER_CTRL_CONTROL_FILEVIEW, 1249 HID_SEND_MASTER_CTRL_EDIT_FILEURL, 1250 HID_SEND_MASTER_CTRL_CHECKBOX_AUTOEXTENSION, 1251 HID_SEND_MASTER_CTRL_LISTBOX_TEMPLATE, 1252 "" --- 14 unchanged lines hidden (view full) --- 1267 SwWebDocShell::Factory().GetFilterContainer() ); 1268 nStrId = STR_LOAD_HTML_DOC; 1269 } 1270 else 1271 { 1272 // Fuer Global-Dokumente bieten wir jetzt auch nur 1273 // noch den aktuellen an. 1274 pFlt = SwGlobalDocShell::Factory().GetFilterContainer()-> | 1245 HID_SEND_MASTER_CTRL_PUSHBUTTON_OK, 1246 HID_SEND_MASTER_CTRL_PUSHBUTTON_CANCEL, 1247 HID_SEND_MASTER_CTRL_LISTBOX_FILTER, 1248 HID_SEND_MASTER_CTRL_CONTROL_FILEVIEW, 1249 HID_SEND_MASTER_CTRL_EDIT_FILEURL, 1250 HID_SEND_MASTER_CTRL_CHECKBOX_AUTOEXTENSION, 1251 HID_SEND_MASTER_CTRL_LISTBOX_TEMPLATE, 1252 "" --- 14 unchanged lines hidden (view full) --- 1267 SwWebDocShell::Factory().GetFilterContainer() ); 1268 nStrId = STR_LOAD_HTML_DOC; 1269 } 1270 else 1271 { 1272 // Fuer Global-Dokumente bieten wir jetzt auch nur 1273 // noch den aktuellen an. 1274 pFlt = SwGlobalDocShell::Factory().GetFilterContainer()-> |
1275 GetFilter4Extension( String::CreateFromAscii("odm") ); | 1275 GetFilter4Extension( String::CreateFromAscii("odm") ); |
1276 nStrId = STR_LOAD_GLOBAL_DOC; 1277 } 1278 1279 if( pFlt ) 1280 { 1281 uno::Reference<XFilterManager> xFltMgr(xFP, UNO_QUERY); 1282 const String sWild = ((WildCard&)pFlt->GetWildcard()).GetWildCard(); 1283 xFltMgr->appendFilter( pFlt->GetUIName(), sWild ); --- 21 unchanged lines hidden (view full) --- 1305 // SwTxtFmtColl *pFnd = 0, *pAny = 0; 1306 // for(sal_uInt16 i = 0; i < nCount; ++i) 1307 // { 1308 // SwTxtFmtColl &rTxtColl = 1309 // *pDoc->GetTxtFmtColls()->GetObject( i ); 1310 // if( !rTxtColl.IsDefault() && rTxtColl.IsAtDocNodeSet() ) 1311 // { 1312 // //if( MAXLEVEL >= rTxtColl.GetOutlineLevel() && ( !pFnd || //#outline level,zhaojianwei | 1276 nStrId = STR_LOAD_GLOBAL_DOC; 1277 } 1278 1279 if( pFlt ) 1280 { 1281 uno::Reference<XFilterManager> xFltMgr(xFP, UNO_QUERY); 1282 const String sWild = ((WildCard&)pFlt->GetWildcard()).GetWildCard(); 1283 xFltMgr->appendFilter( pFlt->GetUIName(), sWild ); --- 21 unchanged lines hidden (view full) --- 1305 // SwTxtFmtColl *pFnd = 0, *pAny = 0; 1306 // for(sal_uInt16 i = 0; i < nCount; ++i) 1307 // { 1308 // SwTxtFmtColl &rTxtColl = 1309 // *pDoc->GetTxtFmtColls()->GetObject( i ); 1310 // if( !rTxtColl.IsDefault() && rTxtColl.IsAtDocNodeSet() ) 1311 // { 1312 // //if( MAXLEVEL >= rTxtColl.GetOutlineLevel() && ( !pFnd || //#outline level,zhaojianwei |
1313 //if( rTxtColl.IsAssignedToListLevelOfOutlineStyle() && ( !pFnd || //<-end,zhaojianwei | 1313 //if( rTxtColl.IsAssignedToListLevelOfOutlineStyle() && ( !pFnd || //<-end,zhaojianwei |
1314 // pFnd->GetAssignedOutlineStyleLevel() > rTxtColl.GetAssignedOutlineStyleLevel() )) 1315 // { 1316 // nSelect = (sal_Int16)nIdx; 1317 // pFnd = &rTxtColl; 1318 // sStartTemplate = rTxtColl.GetName(); 1319 // } 1320 // else if( !pAny ) 1321 // pAny = &rTxtColl; --- 60 unchanged lines hidden (view full) --- 1382 Any aSelectPos(&nSelect, ::getCppuType(&nSelect)); 1383 xCtrlAcc->setValue( ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1384 ListboxControlActions::SET_SELECT_ITEM, aSelectPos ); 1385 xCtrlAcc->setLabel( ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1386 String(SW_RES( STR_FDLG_TEMPLATE_NAME ))); 1387 } 1388 catch(Exception& ) 1389 { | 1314 // pFnd->GetAssignedOutlineStyleLevel() > rTxtColl.GetAssignedOutlineStyleLevel() )) 1315 // { 1316 // nSelect = (sal_Int16)nIdx; 1317 // pFnd = &rTxtColl; 1318 // sStartTemplate = rTxtColl.GetName(); 1319 // } 1320 // else if( !pAny ) 1321 // pAny = &rTxtColl; --- 60 unchanged lines hidden (view full) --- 1382 Any aSelectPos(&nSelect, ::getCppuType(&nSelect)); 1383 xCtrlAcc->setValue( ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1384 ListboxControlActions::SET_SELECT_ITEM, aSelectPos ); 1385 xCtrlAcc->setLabel( ExtendedFilePickerElementIds::LISTBOX_TEMPLATE, 1386 String(SW_RES( STR_FDLG_TEMPLATE_NAME ))); 1387 } 1388 catch(Exception& ) 1389 { |
1390 DBG_ERROR("control acces failed"); | 1390 DBG_ERROR("control access failed"); |
1391 } 1392 1393 xFP->setTitle( SW_RESSTR( nStrId )); 1394 SvtPathOptions aPathOpt; 1395 xFP->setDisplayDirectory( aPathOpt.GetWorkPath() ); 1396 if( ERRCODE_NONE == aDlgHelper.Execute()) 1397 { 1398 aFileName = xFP->getFiles().getConstArray()[0]; --- 8 unchanged lines hidden (view full) --- 1407 sal_Int32 nColonPos = sTmpl.indexOf( sal_Unicode(':') ); 1408 OUString sPrefix = sTmpl.copy( 0L, nColonPos ); 1409 if( sPrefix.equalsAscii("Style")) 1410 { 1411 aTemplateName = sTmpl.copy( 7L ); //get string behind "Style: " 1412 } 1413 else if( sPrefix.equalsAscii("Outline")) 1414 { | 1391 } 1392 1393 xFP->setTitle( SW_RESSTR( nStrId )); 1394 SvtPathOptions aPathOpt; 1395 xFP->setDisplayDirectory( aPathOpt.GetWorkPath() ); 1396 if( ERRCODE_NONE == aDlgHelper.Execute()) 1397 { 1398 aFileName = xFP->getFiles().getConstArray()[0]; --- 8 unchanged lines hidden (view full) --- 1407 sal_Int32 nColonPos = sTmpl.indexOf( sal_Unicode(':') ); 1408 OUString sPrefix = sTmpl.copy( 0L, nColonPos ); 1409 if( sPrefix.equalsAscii("Style")) 1410 { 1411 aTemplateName = sTmpl.copy( 7L ); //get string behind "Style: " 1412 } 1413 else if( sPrefix.equalsAscii("Outline")) 1414 { |
1415 nTemplateOutlineLevel = ( sTmpl.copy( 15L )).toInt32(); //get string behind "Outline: Leve "; | 1415 nTemplateOutlineLevel = ( sTmpl.copy( 15L )).toInt32(); //get string behind "Outline: Level "; |
1416 bCreateByOutlineLevel = true; 1417 } 1418 //<-end,zhaojianwei 1419 1420 if ( aFileName.Len() ) 1421 { 1422 rReq.AppendItem( SfxStringItem( nWhich, aFileName ) ); 1423 if( aTemplateName.Len() ) --- 233 unchanged lines hidden (view full) --- 1657void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView ) 1658{ 1659 sal_Bool bModified = IsModified(); 1660 1661 // MIB 23.6.97: Die HTTP-Header-Felder muessen geloescht werden, 1662 // sonst gibt es welche aus Meta-Tags hinter doppelt und dreifach. 1663 ClearHeaderAttributesForSourceViewHack(); 1664 | 1416 bCreateByOutlineLevel = true; 1417 } 1418 //<-end,zhaojianwei 1419 1420 if ( aFileName.Len() ) 1421 { 1422 rReq.AppendItem( SfxStringItem( nWhich, aFileName ) ); 1423 if( aTemplateName.Len() ) --- 233 unchanged lines hidden (view full) --- 1657void SwDocShell::ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView ) 1658{ 1659 sal_Bool bModified = IsModified(); 1660 1661 // MIB 23.6.97: Die HTTP-Header-Felder muessen geloescht werden, 1662 // sonst gibt es welche aus Meta-Tags hinter doppelt und dreifach. 1663 ClearHeaderAttributesForSourceViewHack(); 1664 |
1665 // MIB 24.07.97: Das Dokument-Basic muss auch noch d'ran glauben ... | 1665 // MIB 24.07.97: Das Dokument-Basic muss auch noch dran glauben ... |
1666 SvxHtmlOptions* pHtmlOptions = SvxHtmlOptions::Get(); 1667 //#59620# HasBasic() zeigt an, dass es schon einen BasicManager an der DocShell 1668 // gibt. Der wurde im HTML-Import immer angelegt, wenn Macros im Quelltext 1669 // vorhanden sind. 1670 if( pHtmlOptions && pHtmlOptions->IsStarBasic() && HasBasic()) 1671 { 1672 BasicManager *pBasicMan = GetBasicManager(); 1673 if( pBasicMan && (pBasicMan != SFX_APP()->GetBasicManager()) ) --- 42 unchanged lines hidden (view full) --- 1716 1717 const String& rMedname = GetMedium()->GetName(); 1718 1719 // fix #51032#: Die HTML-Vorlage muss noch gesetzt werden 1720 SetHTMLTemplate( *GetDoc() ); //Styles aus HTML.vor 1721 1722 SfxViewShell* pViewShell = GetView() ? (SfxViewShell*)GetView() 1723 : SfxViewShell::Current(); | 1666 SvxHtmlOptions* pHtmlOptions = SvxHtmlOptions::Get(); 1667 //#59620# HasBasic() zeigt an, dass es schon einen BasicManager an der DocShell 1668 // gibt. Der wurde im HTML-Import immer angelegt, wenn Macros im Quelltext 1669 // vorhanden sind. 1670 if( pHtmlOptions && pHtmlOptions->IsStarBasic() && HasBasic()) 1671 { 1672 BasicManager *pBasicMan = GetBasicManager(); 1673 if( pBasicMan && (pBasicMan != SFX_APP()->GetBasicManager()) ) --- 42 unchanged lines hidden (view full) --- 1716 1717 const String& rMedname = GetMedium()->GetName(); 1718 1719 // fix #51032#: Die HTML-Vorlage muss noch gesetzt werden 1720 SetHTMLTemplate( *GetDoc() ); //Styles aus HTML.vor 1721 1722 SfxViewShell* pViewShell = GetView() ? (SfxViewShell*)GetView() 1723 : SfxViewShell::Current(); |
1724 SfxViewFrame* pViewFrm = pViewShell->GetViewFrame(); | 1724 SfxViewFrame* pViewFrm = pViewShell->GetViewFrame(); |
1725 pViewFrm->GetDispatcher()->Execute( SID_VIEWSHELL0, SFX_CALLMODE_SYNCHRON ); 1726 1727 SubInitNew(); 1728 1729 SfxMedium aMed( rStreamName, STREAM_READ, sal_False ); 1730 // --> OD 2005-08-01 #i48748# - use class <SwReloadFromHtmlReader>, because 1731 // the base URL has to be set to the filename of the document <rMedname> 1732 // and not to the base URL of the temporary file <aMed> in order to get --- 33 unchanged lines hidden (view full) --- 1766 INetURLObject aURLObj( rURL ); 1767 String sURL( aURLObj.GetMainURL( INetURLObject::NO_DECODE ) ); 1768 1769 // Filter bestimmen: 1770// const SfxFilter* pFlt = SwIoSystem::GetFileFilter( rURL, aEmptyStr ); 1771 String sFactory(String::CreateFromAscii(SwDocShell::Factory().GetShortName())); 1772 SfxFilterMatcher aMatcher( sFactory ); 1773 | 1725 pViewFrm->GetDispatcher()->Execute( SID_VIEWSHELL0, SFX_CALLMODE_SYNCHRON ); 1726 1727 SubInitNew(); 1728 1729 SfxMedium aMed( rStreamName, STREAM_READ, sal_False ); 1730 // --> OD 2005-08-01 #i48748# - use class <SwReloadFromHtmlReader>, because 1731 // the base URL has to be set to the filename of the document <rMedname> 1732 // and not to the base URL of the temporary file <aMed> in order to get --- 33 unchanged lines hidden (view full) --- 1766 INetURLObject aURLObj( rURL ); 1767 String sURL( aURLObj.GetMainURL( INetURLObject::NO_DECODE ) ); 1768 1769 // Filter bestimmen: 1770// const SfxFilter* pFlt = SwIoSystem::GetFileFilter( rURL, aEmptyStr ); 1771 String sFactory(String::CreateFromAscii(SwDocShell::Factory().GetShortName())); 1772 SfxFilterMatcher aMatcher( sFactory ); 1773 |
1774 //#b6445961# search for filter in WebDocShell, too | 1774 //#b6445961# search for filter in WebDocShell, too |
1775 SfxMedium aMed( rURL, STREAM_STD_READ, sal_False ); 1776 const SfxFilter* pFlt = 0; 1777 aMatcher.DetectFilter( aMed, &pFlt, sal_False, sal_False ); 1778 if(!pFlt) 1779 { 1780 String sWebFactory(String::CreateFromAscii(SwWebDocShell::Factory().GetShortName())); 1781 SfxFilterMatcher aWebMatcher( sWebFactory ); 1782 aWebMatcher.DetectFilter( aMed, &pFlt, sal_False, sal_False ); 1783 } 1784 // --> OD #i117339# - trigger import only for own formats 1785// if( aMed.IsStorage() ) 1786 bool bImport( false ); 1787 { 1788 if ( aMed.IsStorage() ) 1789 { | 1775 SfxMedium aMed( rURL, STREAM_STD_READ, sal_False ); 1776 const SfxFilter* pFlt = 0; 1777 aMatcher.DetectFilter( aMed, &pFlt, sal_False, sal_False ); 1778 if(!pFlt) 1779 { 1780 String sWebFactory(String::CreateFromAscii(SwWebDocShell::Factory().GetShortName())); 1781 SfxFilterMatcher aWebMatcher( sWebFactory ); 1782 aWebMatcher.DetectFilter( aMed, &pFlt, sal_False, sal_False ); 1783 } 1784 // --> OD #i117339# - trigger import only for own formats 1785// if( aMed.IsStorage() ) 1786 bool bImport( false ); 1787 { 1788 if ( aMed.IsStorage() ) 1789 { |
1790 // As <SfxMedium.GetFilter().IsOwnFormat() resp. IsOwnTemplateFormat() 1791 // does not work correct (e.g., MS Word 2007 XML Template), | 1790 // As <SfxMedium.GetFilter().IsOwnFormat() resp. IsOwnTemplateFormat() 1791 // does not work correct (e.g., MS Word 2007 XML Template), |
1792 // use workaround provided by MAV. 1793 uno::Reference< embed::XStorage > xStorage = aMed.GetStorage(); 1794 if ( xStorage.is() ) 1795 { | 1792 // use workaround provided by MAV. 1793 uno::Reference< embed::XStorage > xStorage = aMed.GetStorage(); 1794 if ( xStorage.is() ) 1795 { |
1796 // use <try-catch> on retrieving <MediaType> in order to check, | 1796 // use <try-catch> on retrieving <MediaType> in order to check, |
1797 // if the storage is one of our own ones. 1798 try | 1797 // if the storage is one of our own ones. 1798 try |
1799 { | 1799 { |
1800 uno::Reference< beans::XPropertySet > xProps( xStorage, uno::UNO_QUERY_THROW ); 1801 const ::rtl::OUString aMediaTypePropName( RTL_CONSTASCII_USTRINGPARAM( "MediaType" ) ); 1802 xProps->getPropertyValue( aMediaTypePropName ); 1803 bImport = true; 1804 } 1805 catch( const uno::Exception& ) 1806 { 1807 bImport = false; 1808 } | 1800 uno::Reference< beans::XPropertySet > xProps( xStorage, uno::UNO_QUERY_THROW ); 1801 const ::rtl::OUString aMediaTypePropName( RTL_CONSTASCII_USTRINGPARAM( "MediaType" ) ); 1802 xProps->getPropertyValue( aMediaTypePropName ); 1803 bImport = true; 1804 } 1805 catch( const uno::Exception& ) 1806 { 1807 bImport = false; 1808 } |
1809 } | 1809 } |
1810 } 1811 } 1812 if ( bImport ) | 1810 } 1811 } 1812 if ( bImport ) |
1813 // <-- | 1813 // <-- |
1814 { 1815 DBG_ASSERT((pFlt ? pFlt->GetVersion() : 0) >= SOFFICE_FILEFORMAT_60, "which file version?"); | 1814 { 1815 DBG_ASSERT((pFlt ? pFlt->GetVersion() : 0) >= SOFFICE_FILEFORMAT_60, "which file version?"); |
1816 SwRead pRead = ReadXML; | 1816 SwRead pRead = ReadXML; |
1817 SwReader* pReader = 0; 1818 SwPaM* pPam = 0; 1819 // the SW3IO - Reader need the pam/wrtshell, because only then he 1820 // insert the styles! 1821 if( bUnoCall ) 1822 { 1823 SwNodeIndex aIdx( mpDoc->GetNodes().GetEndOfContent(), -1 ); 1824 pPam = new SwPaM( aIdx ); 1825 pReader = new SwReader( aMed, rURL, *pPam ); 1826 } 1827 else | 1817 SwReader* pReader = 0; 1818 SwPaM* pPam = 0; 1819 // the SW3IO - Reader need the pam/wrtshell, because only then he 1820 // insert the styles! 1821 if( bUnoCall ) 1822 { 1823 SwNodeIndex aIdx( mpDoc->GetNodes().GetEndOfContent(), -1 ); 1824 pPam = new SwPaM( aIdx ); 1825 pReader = new SwReader( aMed, rURL, *pPam ); 1826 } 1827 else |
1828 { | 1828 { |
1829 pReader = new SwReader( aMed, rURL, *mpWrtShell->GetCrsr() ); 1830 } 1831 1832 pRead->GetReaderOpt().SetTxtFmts( rOpt.IsTxtFmts() ); 1833 pRead->GetReaderOpt().SetFrmFmts( rOpt.IsFrmFmts() ); 1834 pRead->GetReaderOpt().SetPageDescs( rOpt.IsPageDescs() ); 1835 pRead->GetReaderOpt().SetNumRules( rOpt.IsNumRules() ); 1836 pRead->GetReaderOpt().SetMerge( rOpt.IsMerge() ); --- 7 unchanged lines hidden (view full) --- 1844 { 1845 mpWrtShell->StartAllAction(); 1846 nErr = pReader->Read( *pRead ); 1847 mpWrtShell->EndAllAction(); 1848 } 1849 delete pPam; 1850 delete pReader; 1851 } | 1829 pReader = new SwReader( aMed, rURL, *mpWrtShell->GetCrsr() ); 1830 } 1831 1832 pRead->GetReaderOpt().SetTxtFmts( rOpt.IsTxtFmts() ); 1833 pRead->GetReaderOpt().SetFrmFmts( rOpt.IsFrmFmts() ); 1834 pRead->GetReaderOpt().SetPageDescs( rOpt.IsPageDescs() ); 1835 pRead->GetReaderOpt().SetNumRules( rOpt.IsNumRules() ); 1836 pRead->GetReaderOpt().SetMerge( rOpt.IsMerge() ); --- 7 unchanged lines hidden (view full) --- 1844 { 1845 mpWrtShell->StartAllAction(); 1846 nErr = pReader->Read( *pRead ); 1847 mpWrtShell->EndAllAction(); 1848 } 1849 delete pPam; 1850 delete pReader; 1851 } |
1852 | 1852 |
1853 return nErr; 1854} 1855 1856/*-------------------------------------------------------------------- 1857 Get a client for an embedded object if possible. 1858 --------------------------------------------------------------------*/ 1859SfxInPlaceClient* SwDocShell::GetIPClient( const ::svt::EmbeddedObjectRef& xObjRef ) 1860{ --- 13 unchanged lines hidden --- | 1853 return nErr; 1854} 1855 1856/*-------------------------------------------------------------------- 1857 Get a client for an embedded object if possible. 1858 --------------------------------------------------------------------*/ 1859SfxInPlaceClient* SwDocShell::GetIPClient( const ::svt::EmbeddedObjectRef& xObjRef ) 1860{ --- 13 unchanged lines hidden --- |