Files
libreoffice/sw/source/core/doc/doc.cxx

1990 lines
63 KiB
C++
Raw Normal View History

2000-09-18 23:08:29 +00:00
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
2000-09-18 23:08:29 +00:00
*
* Copyright 2008 by Sun Microsystems, Inc.
2000-09-18 23:08:29 +00:00
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: doc.cxx,v $
* $Revision: 1.71 $
2000-09-18 23:08:29 +00:00
*
* This file is part of OpenOffice.org.
2000-09-18 23:08:29 +00:00
*
* OpenOffice.org is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License version 3
* only, as published by the Free Software Foundation.
2000-09-18 23:08:29 +00:00
*
* OpenOffice.org is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License version 3 for more details
* (a copy is included in the LICENSE file that accompanied this code).
2000-09-18 23:08:29 +00:00
*
* You should have received a copy of the GNU Lesser General Public License
* version 3 along with OpenOffice.org. If not, see
* <http://www.openoffice.org/license.html>
* for a copy of the LGPLv3 License.
2000-09-18 23:08:29 +00:00
*
************************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_sw.hxx"
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <doc.hxx>
2000-09-18 23:08:29 +00:00
#include <hintids.hxx>
#include <tools/shl.hxx>
#include <tools/globname.hxx>
#include <com/sun/star/i18n/WordType.hdl>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <com/sun/star/i18n/ForbiddenCharacters.hdl>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <comphelper/processfactory.hxx>
2000-09-18 23:08:29 +00:00
#include <tools/urlobj.hxx>
#include <tools/poly.hxx>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <vcl/virdev.hxx>
#include <svtools/itemiter.hxx>
#include <sfx2/printer.hxx>
2000-09-18 23:08:29 +00:00
#include <svx/keepitem.hxx>
#include <svx/cscoitem.hxx>
#include <svx/brkitem.hxx>
#include <svx/linkmgr.hxx>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <svx/forbiddencharacterstable.hxx>
#include <svx/svdmodel.hxx>
#include <unotools/charclass.hxx>
2000-09-18 23:08:29 +00:00
#include <swmodule.hxx>
#include <fmtpdsc.hxx>
#include <fmtanchr.hxx>
#include <fmtrfmrk.hxx>
#include <fmtinfmt.hxx>
#include <fmtfld.hxx>
#include <txtfld.hxx>
#include <dbfld.hxx>
2000-09-18 23:08:29 +00:00
#include <txtinet.hxx>
#include <txtrfmrk.hxx>
#include <frmatr.hxx>
#include <linkenum.hxx>
#include <errhdl.hxx>
#include <pagefrm.hxx>
#include <rootfrm.hxx>
#include <swtable.hxx>
#include <pam.hxx>
#include <ndtxt.hxx>
#include <swundo.hxx> // fuer die UndoIds
#include <undobj.hxx>
#include <pagedesc.hxx> //DTor
#include <breakit.hxx>
2000-09-18 23:08:29 +00:00
#include <ndole.hxx>
#include <ndgrf.hxx>
#include <rolbck.hxx> // Undo-Attr
#include <doctxm.hxx> // fuer die Verzeichnisse
#include <grfatr.hxx>
#include <poolfmt.hxx> // PoolVorlagen-Id's
#include <mvsave.hxx> // fuer Server-Funktionalitaet
#include <SwGrammarMarkUp.hxx>
#include <scriptinfo.hxx>
2000-09-18 23:08:29 +00:00
#include <acorrect.hxx> // Autokorrektur
#include <mdiexp.hxx> // Statusanzeige
#include <docstat.hxx>
#include <docary.hxx>
#include <redline.hxx>
#include <fldupde.hxx>
#include <swbaslnk.hxx>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <printdata.hxx>
#ifndef _CMDID_H
#include <cmdid.h> // fuer den dflt - Printer in SetJob
#endif
2000-09-18 23:08:29 +00:00
#ifndef _STATSTR_HRC
#include <statstr.hrc> // StatLine-String
#endif
#include <comcore.hrc>
#include <SwUndoTOXChange.hxx>
#include <SwUndoFmt.hxx>
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
#include <unocrsr.hxx>
#include <docsh.hxx>
#include <vector>
#include <osl/diagnose.h>
#include <osl/interlck.h>
/* @@@MAINTAINABILITY-HORROR@@@
Probably unwanted dependency on SwDocShell
*/
// --> OD 2005-08-29 #125370#
#include <layouter.hxx>
// <--
using namespace ::com::sun::star;
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
2000-09-18 23:08:29 +00:00
// Seiten-Deskriptoren
SV_IMPL_PTRARR(SwPageDescs,SwPageDescPtr);
// Verzeichnisse
SV_IMPL_PTRARR( SwTOXTypes, SwTOXTypePtr )
// FeldTypen
SV_IMPL_PTRARR( SwFldTypes, SwFldTypePtr)
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
/** IInterface
*/
sal_Int32 SwDoc::acquire()
{
OSL_ASSERT(mReferenceCount >= 0 && "Negative reference count detected! This is a sign for unbalanced acquire/release calls.");
return osl_incrementInterlockedCount(&mReferenceCount);
}
sal_Int32 SwDoc::release()
{
OSL_PRECOND(mReferenceCount >= 1, "Object is already released! Releasing it again leads to a negative reference count.");
return osl_decrementInterlockedCount(&mReferenceCount);
}
sal_Int32 SwDoc::getReferenceCount() const
{
OSL_ASSERT(mReferenceCount >= 0 && "Negative reference count detected! This is a sign for unbalanced acquire/release calls.");
return mReferenceCount;
}
/** IDocumentSettingAccess
*/
bool SwDoc::get(/*[in]*/ DocumentSettingId id) const
{
switch (id)
{
// COMPATIBILITY FLAGS START
case PARA_SPACE_MAX: return mbParaSpaceMax; //(n8Dummy1 & DUMMY_PARASPACEMAX);
case PARA_SPACE_MAX_AT_PAGES: return mbParaSpaceMaxAtPages; //(n8Dummy1 & DUMMY_PARASPACEMAX_AT_PAGES);
case TAB_COMPAT: return mbTabCompat; //(n8Dummy1 & DUMMY_TAB_COMPAT);
case ADD_FLY_OFFSETS: return mbAddFlyOffsets; //(n8Dummy2 & DUMMY_ADD_FLY_OFFSETS);
case ADD_EXT_LEADING: return mbAddExternalLeading; //(n8Dummy2 & DUMMY_ADD_EXTERNAL_LEADING);
case USE_VIRTUAL_DEVICE: return mbUseVirtualDevice; //(n8Dummy1 & DUMMY_USE_VIRTUAL_DEVICE);
case USE_HIRES_VIRTUAL_DEVICE: return mbUseHiResolutionVirtualDevice; //(n8Dummy2 & DUMMY_USE_HIRES_VIR_DEV);
case OLD_NUMBERING: return mbOldNumbering;
case OLD_LINE_SPACING: return mbOldLineSpacing;
case ADD_PARA_SPACING_TO_TABLE_CELLS: return mbAddParaSpacingToTableCells;
case USE_FORMER_OBJECT_POS: return mbUseFormerObjectPos;
case USE_FORMER_TEXT_WRAPPING: return mbUseFormerTextWrapping;
case CONSIDER_WRAP_ON_OBJECT_POSITION: return mbConsiderWrapOnObjPos;
case DO_NOT_JUSTIFY_LINES_WITH_MANUAL_BREAK: return mbDoNotJustifyLinesWithManualBreak;
case IGNORE_FIRST_LINE_INDENT_IN_NUMBERING: return mbIgnoreFirstLineIndentInNumbering;
case OUTLINE_LEVEL_YIELDS_OUTLINE_RULE: return mbOutlineLevelYieldsOutlineRule;
case TABLE_ROW_KEEP: return mbTableRowKeep;
case IGNORE_TABS_AND_BLANKS_FOR_LINE_CALCULATION: return mbIgnoreTabsAndBlanksForLineCalculation;
case DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE: return mbDoNotCaptureDrawObjsOnPage;
// --> OD 2006-08-25 #i68949#
case CLIP_AS_CHARACTER_ANCHORED_WRITER_FLY_FRAME: return mbClipAsCharacterAnchoredWriterFlyFrames;
// <--
case UNIX_FORCE_ZERO_EXT_LEADING: return mbUnixForceZeroExtLeading;
case USE_OLD_PRINTER_METRICS: return mbOldPrinterMetrics;
case TABS_RELATIVE_TO_INDENT : return mbTabRelativeToIndent;
case PROTECT_FORM: return mbProtectForm;
// --> OD 2008-06-05 #i89181#
case TAB_AT_LEFT_INDENT_FOR_PARA_IN_LIST: return mbTabAtLeftIndentForParagraphsInList;
// <--
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
// COMPATIBILITY FLAGS END
case BROWSE_MODE: return mbBrowseMode;
case HTML_MODE: return mbHTMLMode;
case GLOBAL_DOCUMENT: return mbIsGlobalDoc;
case GLOBAL_DOCUMENT_SAVE_LINKS: return mbGlblDocSaveLinks;
case LABEL_DOCUMENT: return mbIsLabelDoc;
case PURGE_OLE: return mbPurgeOLE;
case KERN_ASIAN_PUNCTUATION: return mbKernAsianPunctuation;
case DO_NOT_RESET_PARA_ATTRS_FOR_NUM_FONT: return mbDoNotResetParaAttrsForNumFont;
default:
ASSERT(false, "Invalid setting id");
}
return false;
}
void SwDoc::set(/*[in]*/ DocumentSettingId id, /*[in]*/ bool value)
{
switch (id)
{
// COMPATIBILITY FLAGS START
case PARA_SPACE_MAX:
mbParaSpaceMax = value;
break;
case PARA_SPACE_MAX_AT_PAGES:
mbParaSpaceMaxAtPages = value;
break;
case TAB_COMPAT:
mbTabCompat = value;
break;
case ADD_FLY_OFFSETS:
mbAddFlyOffsets = value;
break;
case ADD_EXT_LEADING:
mbAddExternalLeading = value;
break;
case USE_VIRTUAL_DEVICE:
mbUseVirtualDevice = value;
break;
case USE_HIRES_VIRTUAL_DEVICE:
mbUseHiResolutionVirtualDevice = value;
break;
case OLD_NUMBERING:
if (mbOldNumbering != value)
{
mbOldNumbering = value;
const SwNumRuleTbl& rNmTbl = GetNumRuleTbl();
for( USHORT n = 0; n < rNmTbl.Count(); ++n )
rNmTbl[n]->SetInvalidRule(TRUE);
UpdateNumRule();
if (pOutlineRule)
{
pOutlineRule->Validate();
// --> OD 2005-10-21 - counting of phantoms depends on <IsOldNumbering()>
pOutlineRule->SetCountPhantoms( !mbOldNumbering );
// <--
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
}
break;
case OLD_LINE_SPACING:
mbOldLineSpacing = value;
break;
case ADD_PARA_SPACING_TO_TABLE_CELLS:
mbAddParaSpacingToTableCells = value;
break;
case USE_FORMER_OBJECT_POS:
mbUseFormerObjectPos = value;
break;
case USE_FORMER_TEXT_WRAPPING:
mbUseFormerTextWrapping = value;
break;
case CONSIDER_WRAP_ON_OBJECT_POSITION:
mbConsiderWrapOnObjPos = value;
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
break;
case DO_NOT_JUSTIFY_LINES_WITH_MANUAL_BREAK:
mbDoNotJustifyLinesWithManualBreak = value;
break;
case IGNORE_FIRST_LINE_INDENT_IN_NUMBERING:
mbIgnoreFirstLineIndentInNumbering = value;
break;
case OUTLINE_LEVEL_YIELDS_OUTLINE_RULE:
mbOutlineLevelYieldsOutlineRule = value;
break;
case TABLE_ROW_KEEP:
mbTableRowKeep = value;
break;
case IGNORE_TABS_AND_BLANKS_FOR_LINE_CALCULATION:
mbIgnoreTabsAndBlanksForLineCalculation = value;
break;
case DO_NOT_CAPTURE_DRAW_OBJS_ON_PAGE:
mbDoNotCaptureDrawObjsOnPage = value;
break;
// --> OD 2006-08-25 #i68949#
case CLIP_AS_CHARACTER_ANCHORED_WRITER_FLY_FRAME:
mbClipAsCharacterAnchoredWriterFlyFrames = value;
break;
// <--
case UNIX_FORCE_ZERO_EXT_LEADING:
mbUnixForceZeroExtLeading = value;
break;
case PROTECT_FORM:
mbProtectForm = value;
break;
case USE_OLD_PRINTER_METRICS:
mbOldPrinterMetrics = value;
break;
case TABS_RELATIVE_TO_INDENT:
mbTabRelativeToIndent = value;
break;
// --> OD 2008-06-05 #i89181#
case TAB_AT_LEFT_INDENT_FOR_PARA_IN_LIST:
mbTabAtLeftIndentForParagraphsInList = value;
break;
// <--
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
// COMPATIBILITY FLAGS END
case BROWSE_MODE:
mbBrowseMode = value;
break;
case HTML_MODE:
mbHTMLMode = value;
break;
case GLOBAL_DOCUMENT:
mbIsGlobalDoc = value;
break;
case GLOBAL_DOCUMENT_SAVE_LINKS:
mbGlblDocSaveLinks = value;
break;
case LABEL_DOCUMENT:
mbIsLabelDoc = value;
break;
case PURGE_OLE:
mbPurgeOLE = value;
break;
case KERN_ASIAN_PUNCTUATION:
mbKernAsianPunctuation = value;
break;
case DO_NOT_RESET_PARA_ATTRS_FOR_NUM_FONT:
mbDoNotResetParaAttrsForNumFont = value;
break;
default:
ASSERT(false, "Invalid setting id");
}
}
const i18n::ForbiddenCharacters*
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
SwDoc::getForbiddenCharacters(/*[in]*/ USHORT nLang, /*[in]*/ bool bLocaleData ) const
{
const i18n::ForbiddenCharacters* pRet = 0;
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
if( xForbiddenCharsTable.isValid() )
pRet = xForbiddenCharsTable->GetForbiddenCharacters( nLang, FALSE );
if( bLocaleData && !pRet && pBreakIt )
pRet = &pBreakIt->GetForbidden( (LanguageType)nLang );
return pRet;
}
void SwDoc::setForbiddenCharacters(/*[in]*/ USHORT nLang,
/*[in]*/ const i18n::ForbiddenCharacters& rFChars )
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
{
if( !xForbiddenCharsTable.isValid() )
{
uno::Reference<
lang::XMultiServiceFactory > xMSF =
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
::comphelper::getProcessServiceFactory();
xForbiddenCharsTable = new SvxForbiddenCharactersTable( xMSF );
}
xForbiddenCharsTable->SetForbiddenCharacters( nLang, rFChars );
if( pDrawModel )
{
pDrawModel->SetForbiddenCharsTable( xForbiddenCharsTable );
if( !mbInReading )
pDrawModel->ReformatAllTextObjects();
}
if( pLayout && !mbInReading )
{
pLayout->StartAllAction();
pLayout->InvalidateAllCntnt();
pLayout->EndAllAction();
}
SetModified();
}
vos::ORef<SvxForbiddenCharactersTable>& SwDoc::getForbiddenCharacterTable()
{
if( !xForbiddenCharsTable.isValid() )
{
uno::Reference<
lang::XMultiServiceFactory > xMSF =
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
::comphelper::getProcessServiceFactory();
xForbiddenCharsTable = new SvxForbiddenCharactersTable( xMSF );
}
return xForbiddenCharsTable;
}
const vos::ORef<SvxForbiddenCharactersTable>& SwDoc::getForbiddenCharacterTable() const
{
return xForbiddenCharsTable;
}
sal_uInt16 SwDoc::getLinkUpdateMode( /*[in]*/bool bGlobalSettings ) const
{
sal_uInt16 nRet = nLinkUpdMode;
if( bGlobalSettings && GLOBALSETTING == nRet )
nRet = SW_MOD()->GetLinkUpdMode(get(IDocumentSettingAccess::HTML_MODE));
return nRet;
}
void SwDoc::setLinkUpdateMode( /*[in]*/sal_uInt16 eMode )
{
nLinkUpdMode = eMode;
}
SwFldUpdateFlags SwDoc::getFieldUpdateFlags( /*[in]*/bool bGlobalSettings ) const
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
{
SwFldUpdateFlags eRet = eFldUpdMode;
if( bGlobalSettings && AUTOUPD_GLOBALSETTING == eRet )
eRet = SW_MOD()->GetFldUpdateFlags(get(IDocumentSettingAccess::HTML_MODE));
return eRet;
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
}
void SwDoc::setFieldUpdateFlags(/*[in]*/SwFldUpdateFlags eMode )
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
{
eFldUpdMode = eMode;
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
}
SwCharCompressType SwDoc::getCharacterCompressionType() const
{
return eChrCmprType;
}
void SwDoc::setCharacterCompressionType( /*[in]*/SwCharCompressType n )
{
if( eChrCmprType != n )
{
eChrCmprType = n;
if( pDrawModel )
{
pDrawModel->SetCharCompressType( static_cast<UINT16>(n) );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
if( !mbInReading )
pDrawModel->ReformatAllTextObjects();
}
if( pLayout && !mbInReading )
{
pLayout->StartAllAction();
pLayout->InvalidateAllCntnt();
pLayout->EndAllAction();
}
SetModified();
}
}
/** IDocumentDeviceAccess
*/
SfxPrinter* SwDoc::getPrinter(/*[in]*/ bool bCreate ) const
{
SfxPrinter* pRet = 0;
if ( !bCreate || pPrt )
pRet = pPrt;
else
pRet = &CreatePrinter_();
return pRet;
}
void SwDoc::setPrinter(/*[in]*/ SfxPrinter *pP,/*[in]*/ bool bDeleteOld,/*[in]*/ bool bCallPrtDataChanged )
{
if ( pP != pPrt )
{
if ( bDeleteOld )
delete pPrt;
pPrt = pP;
}
if ( bCallPrtDataChanged &&
// --> FME 2005-01-21 #i41075# Do not call PrtDataChanged() if we do not
// use the printer for formatting:
!get(IDocumentSettingAccess::USE_VIRTUAL_DEVICE) )
// <--
PrtDataChanged();
}
VirtualDevice* SwDoc::getVirtualDevice(/*[in]*/ bool bCreate ) const
{
VirtualDevice* pRet = 0;
if ( !bCreate || pVirDev )
pRet = pVirDev;
else
pRet = &CreateVirtualDevice_();
return pRet;
}
void SwDoc::setVirtualDevice(/*[in]*/ VirtualDevice* pVd,/*[in]*/ bool bDeleteOld, /*[in]*/ bool )
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
{
if ( pVirDev != pVd )
{
if ( bDeleteOld )
delete pVirDev;
pVirDev = pVd;
}
}
OutputDevice* SwDoc::getReferenceDevice(/*[in]*/ bool bCreate ) const
{
OutputDevice* pRet = 0;
if ( !get(IDocumentSettingAccess::USE_VIRTUAL_DEVICE) )
{
pRet = getPrinter( bCreate );
if ( bCreate && !pPrt->IsValid() )
{
pRet = getVirtualDevice( sal_True );
}
}
else
{
pRet = getVirtualDevice( bCreate );
}
return pRet;
}
void SwDoc::setReferenceDeviceType(/*[in]*/ bool bNewVirtual,/*[in]*/ bool bNewHiRes )
{
if ( get(IDocumentSettingAccess::USE_VIRTUAL_DEVICE) != bNewVirtual ||
get(IDocumentSettingAccess::USE_HIRES_VIRTUAL_DEVICE) != bNewHiRes )
{
if ( bNewVirtual )
{
VirtualDevice* pMyVirDev = getVirtualDevice( true );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
if ( !bNewHiRes )
pMyVirDev->SetReferenceDevice( VirtualDevice::REFDEV_MODE06 );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
else
pMyVirDev->SetReferenceDevice( VirtualDevice::REFDEV_MODE_MSO1 );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
}
else
{
// --> FME 2005-01-21 #i41075#
// We have to take care that a printer exists before calling
// PrtDataChanged() in order to prevent that PrtDataChanged()
// triggers this funny situation:
// getReferenceDevice()->getPrinter()->CreatePrinter_()
// ->setPrinter()-> PrtDataChanged()
getPrinter( true );
// <--
}
set(IDocumentSettingAccess::USE_VIRTUAL_DEVICE, bNewVirtual );
set(IDocumentSettingAccess::USE_HIRES_VIRTUAL_DEVICE, bNewHiRes );
PrtDataChanged();
SetModified();
}
}
const JobSetup* SwDoc::getJobsetup() const
{
return pPrt ? &pPrt->GetJobSetup() : 0;
}
void SwDoc::setJobsetup(/*[in]*/ const JobSetup &rJobSetup )
{
BOOL bCheckPageDescs = 0 == pPrt;
BOOL bDataChanged = FALSE;
if ( pPrt )
{
if ( pPrt->GetName() == rJobSetup.GetPrinterName() )
{
if ( pPrt->GetJobSetup() != rJobSetup )
{
pPrt->SetJobSetup( rJobSetup );
bDataChanged = TRUE;
}
}
else
delete pPrt, pPrt = 0;
}
if( !pPrt )
{
//Das ItemSet wird vom Sfx geloescht!
CWS-TOOLING: integrate CWS aw063 2009-02-12 13:10:24 +0100 aw r267649 : #i99123# when a primitive is invisible, it is not sufficient to produce no output when decomposing, but to add invisible data using HitTestPrimitive2D. This is needed for the slideshow which relies on geometry data in MetaFiles when painting invisible objects 2009-02-12 13:08:39 +0100 aw r267648 : #i99123# do not ignore HitTestPrimitive2D, but draw empty rectangles instead. This is needed since Slideshow is based on getting MetaFile content when painting invisible objects 2009-02-11 16:04:28 +0100 aw r267620 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:04:10 +0100 aw r267619 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:03:56 +0100 aw r267618 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:03:39 +0100 aw r267617 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:03:21 +0100 aw r267615 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:02:48 +0100 aw r267614 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:02:24 +0100 aw r267613 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:02:01 +0100 aw r267612 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:01:32 +0100 aw r267611 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:01:05 +0100 aw r267610 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 16:00:15 +0100 aw r267608 : #i98788# made SfxItemPool destructor protected, added static ::Free method 2009-02-11 11:27:33 +0100 aw r267585 : #i98788# added missing include for STL 2009-02-10 17:46:50 +0100 aw r267570 : #i98788# added reaction on pool destruction 2009-02-10 17:11:58 +0100 aw r267562 : #i98788# added messaging mechanism to register for pool destruction 2009-02-10 13:35:35 +0100 aw r267549 : #i98788# removing changes, too complicated and risky for 3.1 2009-02-10 12:13:48 +0100 aw r267546 : #i98788# 4th round 2009-02-10 12:13:37 +0100 aw r267545 : #i98788# 4th round 2009-02-10 12:13:26 +0100 aw r267544 : #i98788# 4th round 2009-02-10 12:13:14 +0100 aw r267543 : #i98788# 4th round 2009-02-10 12:13:03 +0100 aw r267542 : #i98788# 4th round 2009-02-10 12:12:50 +0100 aw r267541 : #i98788# 4th round 2009-02-10 12:12:37 +0100 aw r267540 : #i98788# 4th round 2009-02-08 14:38:22 +0100 aw r267495 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:38:06 +0100 aw r267494 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:37:48 +0100 aw r267493 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:37:17 +0100 aw r267492 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:36:56 +0100 aw r267491 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:36:44 +0100 aw r267490 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:36:29 +0100 aw r267489 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:36:16 +0100 aw r267488 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:36:02 +0100 aw r267487 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-08 14:35:46 +0100 aw r267486 : #i98788# 3rd round of changes to SfxItemPool handling 2009-02-05 12:20:39 +0100 aw r267415 : #i98788# 2nd batch of adaptions for SfxItemPoolHolder addition 2009-02-04 15:12:54 +0100 aw r267385 : #i98788# added newline at EOF 2009-02-04 13:26:04 +0100 aw r267379 : #i98788# make SfxItemPool holdable 2009-02-04 13:25:40 +0100 aw r267378 : #i98788# make SfxItemPool holdable 2009-02-04 13:25:08 +0100 aw r267377 : #i98788# make SfxItemPool holdable 2009-02-04 13:24:42 +0100 aw r267376 : #i98788# make SfxItemPool holdable 2009-02-04 13:23:14 +0100 aw r267375 : #i98788# make SfxItemPool holdable 2009-02-04 13:23:02 +0100 aw r267374 : #i98788# make SfxItemPool holdable 2009-01-29 17:08:31 +0100 aw r267159 : #i97628# completed the fix 2009-01-29 17:08:15 +0100 aw r267158 : #i97628# completed the fix 2009-01-29 14:09:07 +0100 aw r267132 : #i97628# Corrected usage of ParagraphData in headers 2009-01-29 14:06:58 +0100 iha r267131 : #i98344# incorrect font size in charts 2009-01-29 12:13:46 +0100 aw r267115 : #i97628# back to old state; triggers too many errors in other modules 2009-01-29 12:03:51 +0100 aw r267114 : #i97628# enabled exceptions due to STL vector include 2009-01-29 11:21:37 +0100 aw r267107 : #i97628# added needed include 2009-01-28 17:58:29 +0100 aw r267077 : #i97628# first version of newly implemented OutlinerParaObject and adaptions 2009-01-28 17:58:12 +0100 aw r267076 : #i97628# first version of newly implemented OutlinerParaObject and adaptions 2009-01-28 17:57:51 +0100 aw r267074 : #i97628# first version of newly implemented OutlinerParaObject and adaptions 2009-01-28 17:57:21 +0100 aw r267073 : #i97628# first version of newly implemented OutlinerParaObject and adaptions 2009-01-27 17:07:33 +0100 aw r267011 : #i98402# added support for ViewRange when exporting MetaFiles in ObjectContactOfPageView::DoProcessDisplay to avoid to paint too much 2009-01-27 11:45:48 +0100 aw r266973 : #i98404# Added a warning to a place where a conversion to rectangle should not be copied from 2009-01-26 21:44:36 +0100 iha r266949 : #i98497# 3D charts are rendered with wrong size 2009-01-26 20:47:07 +0100 aw r266947 : #i98404# handle BackgroundColorPrimitive2D directly in PixelRenderers and avoid AA under all circumstances 2009-01-26 14:50:36 +0100 aw r266926 : #i98386# secured cloning of SdrObject in IMapUserData by boost::shared_prt usage 2009-01-26 12:51:30 +0100 aw r266916 : #i96581# added separated FontStretching and fallback for small X!=Y scale differences 2009-01-23 16:14:55 +0100 aw r266834 : #i96475# added missing implementation of TextDecoratedPortionPrimitive2D::getB2DRange 2009-01-23 15:24:34 +0100 aw r266826 : #i98405# fixed fallback to DrawAlphaRect to use the correctly sized rectangle 2009-01-23 13:34:43 +0100 aw r266813 : #i96474# fixed impSplitSingleWords for an unexpected case 2009-01-23 10:47:31 +0100 aw r266786 : #i98289#,#i96474# tooling and new flags for tasks 2009-01-23 10:47:20 +0100 aw r266785 : #i98289#,#i96474# tooling and new flags for tasks 2009-01-23 10:47:09 +0100 aw r266783 : #i98289#,#i96474# tooling and new flags for tasks 2009-01-23 10:46:58 +0100 aw r266782 : #i98289#,#i96474# tooling and new flags for tasks 2009-01-23 10:46:48 +0100 aw r266781 : #i98289#,#i96474# tooling and new flags for tasks
2009-03-04 14:16:02 +00:00
SfxItemSet *pSet = new SfxItemSet( GetAttrPool(),
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
FN_PARAM_ADDPRINTER, FN_PARAM_ADDPRINTER,
SID_HTML_MODE, SID_HTML_MODE,
SID_PRINTER_NOTFOUND_WARN, SID_PRINTER_NOTFOUND_WARN,
SID_PRINTER_CHANGESTODOC, SID_PRINTER_CHANGESTODOC,
0 );
SfxPrinter *p = new SfxPrinter( pSet, rJobSetup );
if ( bCheckPageDescs )
setPrinter( p, true, true );
else
{
pPrt = p;
bDataChanged = TRUE;
}
}
if ( bDataChanged && !get(IDocumentSettingAccess::USE_VIRTUAL_DEVICE) )
PrtDataChanged();
}
SwPrintData* SwDoc::getPrintData() const
{
return pPrtData;
}
void SwDoc::setPrintData(/*[in]*/ const SwPrintData& rPrtData )
{
if(!pPrtData)
pPrtData = new SwPrintData;
*pPrtData = rPrtData;
}
/** Implementations the next Interface here
*/
2000-09-18 23:08:29 +00:00
/*
* Dokumenteditieren (Doc-SS) zum Fuellen des Dokuments
* durch den RTF Parser und fuer die EditShell.
*/
void SwDoc::ChgDBData(const SwDBData& rNewData)
2000-09-18 23:08:29 +00:00
{
if( rNewData != aDBData )
2000-09-18 23:08:29 +00:00
{
aDBData = rNewData;
2000-09-18 23:08:29 +00:00
SetModified();
}
GetSysFldType(RES_DBNAMEFLD)->UpdateFlds();
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::SplitNode( const SwPosition &rPos, bool bChkTableStart )
2000-09-18 23:08:29 +00:00
{
SwCntntNode *pNode = rPos.nNode.GetNode().GetCntntNode();
if(0 == pNode)
return FALSE;
{
// Bug 26675: DataChanged vorm loeschen verschicken, dann bekommt
// man noch mit, welche Objecte sich im Bereich befinden.
// Danach koennen sie vor/hinter der Position befinden.
SwDataChanged aTmp( this, rPos, 0 );
}
SwUndoSplitNode* pUndo = 0;
if ( DoesUndo() )
{
ClearRedo();
// einfuegen vom Undo-Object, z.Z. nur beim TextNode
if( pNode->IsTxtNode() )
AppendUndo( pUndo = new SwUndoSplitNode( this, rPos, bChkTableStart ));
}
//JP 28.01.97: Sonderfall fuer SplitNode am Tabellenanfang:
// steht die am Doc/Fly/Footer/..-Anfang oder direkt
// hinter einer Tabelle, dann fuege davor
// einen Absatz ein
if( bChkTableStart && !rPos.nContent.GetIndex() && pNode->IsTxtNode() )
{
ULONG nPrevPos = rPos.nNode.GetIndex() - 1;
const SwTableNode* pTblNd;
const SwNode* pNd = GetNodes()[ nPrevPos ];
if( pNd->IsStartNode() &&
SwTableBoxStartNode == ((SwStartNode*)pNd)->GetStartNodeType() &&
0 != ( pTblNd = GetNodes()[ --nPrevPos ]->GetTableNode() ) &&
((( pNd = GetNodes()[ --nPrevPos ])->IsStartNode() &&
SwTableBoxStartNode != ((SwStartNode*)pNd)->GetStartNodeType() )
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
|| ( pNd->IsEndNode() && pNd->StartOfSectionNode()->IsTableNode() )
2000-09-18 23:08:29 +00:00
|| pNd->IsCntntNode() ))
{
if( pNd->IsCntntNode() )
{
//JP 30.04.99 Bug 65660:
// ausserhalb des normalen BodyBereiches gibt es keine
// Seitenumbrueche, also ist das hier kein gueltige
// Bedingung fuers einfuegen eines Absatzes
if( nPrevPos < GetNodes().GetEndOfExtras().GetIndex() )
pNd = 0;
else
{
// Dann nur, wenn die Tabelle Umbrueche traegt!
const SwFrmFmt* pFrmFmt = pTblNd->GetTable().GetFrmFmt();
if( SFX_ITEM_SET != pFrmFmt->GetItemState(RES_PAGEDESC, FALSE) &&
SFX_ITEM_SET != pFrmFmt->GetItemState( RES_BREAK, FALSE ) )
pNd = 0;
}
}
if( pNd )
{
SwTxtNode* pTxtNd = GetNodes().MakeTxtNode(
SwNodeIndex( *pTblNd ),
GetTxtCollFromPool( RES_POOLCOLL_TEXT ));
if( pTxtNd )
{
((SwPosition&)rPos).nNode = pTblNd->GetIndex()-1;
((SwPosition&)rPos).nContent.Assign( pTxtNd, 0 );
// nur im BodyBereich den SeitenUmbruch/-Vorlage umhaengem
if( nPrevPos > GetNodes().GetEndOfExtras().GetIndex() )
{
SwFrmFmt* pFrmFmt = pTblNd->GetTable().GetFrmFmt();
const SfxPoolItem *pItem;
if( SFX_ITEM_SET == pFrmFmt->GetItemState( RES_PAGEDESC,
FALSE, &pItem ) )
{
pTxtNd->SetAttr( *pItem );
pFrmFmt->ResetFmtAttr( RES_PAGEDESC );
2000-09-18 23:08:29 +00:00
}
if( SFX_ITEM_SET == pFrmFmt->GetItemState( RES_BREAK,
FALSE, &pItem ) )
{
pTxtNd->SetAttr( *pItem );
pFrmFmt->ResetFmtAttr( RES_BREAK );
2000-09-18 23:08:29 +00:00
}
}
if( pUndo )
pUndo->SetTblFlag();
SetModified();
return TRUE;
}
}
}
}
SvULongs aBkmkArr( 15, 15 );
_SaveCntntIdx( this, rPos.nNode.GetIndex(), rPos.nContent.GetIndex(),
aBkmkArr, SAVEFLY_SPLIT );
if( 0 != ( pNode = pNode->SplitCntntNode( rPos ) ))
2000-09-18 23:08:29 +00:00
{
// verschiebe noch alle Bookmarks/TOXMarks/FlyAtCnt
if( aBkmkArr.Count() )
_RestoreCntntIdx( this, aBkmkArr, rPos.nNode.GetIndex()-1, 0, TRUE );
if( IsRedlineOn() || (!IsIgnoreRedline() && pRedlineTbl->Count() ))
{
SwPaM aPam( rPos );
aPam.SetMark();
aPam.Move( fnMoveBackward );
if( IsRedlineOn() )
AppendRedline( new SwRedline( nsRedlineType_t::REDLINE_INSERT, aPam ), true);
2000-09-18 23:08:29 +00:00
else
SplitRedline( aPam );
}
}
SetModified();
return TRUE;
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::AppendTxtNode( SwPosition& rPos )
2000-09-18 23:08:29 +00:00
{
/*
* Neuen Node vor EndOfContent erzeugen.
*/
SwTxtNode *pCurNode = GetNodes()[ rPos.nNode ]->GetTxtNode();
if( !pCurNode )
{
// dann kann ja einer angelegt werden!
SwNodeIndex aIdx( rPos.nNode, 1 );
pCurNode = GetNodes().MakeTxtNode( aIdx,
GetTxtCollFromPool( RES_POOLCOLL_STANDARD ));
}
else
pCurNode = (SwTxtNode*)pCurNode->AppendNode( rPos );
rPos.nNode++;
rPos.nContent.Assign( pCurNode, 0 );
if( DoesUndo() )
{
ClearRedo();
AppendUndo( new SwUndoInsert( rPos.nNode ));
}
if( IsRedlineOn() || (!IsIgnoreRedline() && pRedlineTbl->Count() ))
{
SwPaM aPam( rPos );
aPam.SetMark();
aPam.Move( fnMoveBackward );
if( IsRedlineOn() )
AppendRedline( new SwRedline( nsRedlineType_t::REDLINE_INSERT, aPam ), true);
2000-09-18 23:08:29 +00:00
else
SplitRedline( aPam );
}
SetModified();
return TRUE;
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::Insert( const SwPaM &rRg, const String &rStr, bool bHintExpand )
2000-09-18 23:08:29 +00:00
{
if( DoesUndo() )
ClearRedo();
const SwPosition* pPos = rRg.GetPoint();
if( pACEWord ) // Aufnahme in die Autokorrektur
{
if( 1 == rStr.Len() && pACEWord->IsDeleted() )
pACEWord->CheckChar( *pPos, rStr.GetChar( 0 ) );
delete pACEWord, pACEWord = 0;
}
SwTxtNode *pNode = pPos->nNode.GetNode().GetTxtNode();
if(!pNode)
return FALSE;
const USHORT nInsMode = bHintExpand ? INS_EMPTYEXPAND
: INS_NOHINTEXPAND;
SwDataChanged aTmp( rRg, 0 );
if( !DoesUndo() || !DoesGroupUndo() )
{
pNode->Insert( rStr, pPos->nContent, nInsMode );
if( DoesUndo() )
AppendUndo( new SwUndoInsert( pPos->nNode,
pPos->nContent.GetIndex(), rStr.Len() ));
}
else
{ // ist Undo und Gruppierung eingeschaltet, ist alles anders !
USHORT nUndoSize = pUndos->Count();
xub_StrLen nInsPos = pPos->nContent.GetIndex();
SwUndoInsert * pUndo = NULL; // #111827#
CharClass& rCC = GetAppCharClass();
// -> #111827#
bool bNewUndo = false;
if( 0 == nUndoSize)
bNewUndo = true;
else
{
pUndo = (SwUndoInsert*)(*pUndos)[ --nUndoSize ];
switch (pUndo->GetId())
{
case UNDO_INSERT:
case UNDO_TYPING:
bNewUndo = !pUndo->CanGrouping( *pPos );
break;
default:
bNewUndo = true;
}
}
// <- #111827#
if (bNewUndo)
2000-09-18 23:08:29 +00:00
{
pUndo = new SwUndoInsert( pPos->nNode, nInsPos, 0,
!rCC.isLetterNumeric( rStr, 0 ) );
2000-09-18 23:08:29 +00:00
AppendUndo( pUndo );
}
pNode->Insert( rStr, pPos->nContent, nInsMode );
2000-09-18 23:08:29 +00:00
for( xub_StrLen i = 0; i < rStr.Len(); ++i )
{
nInsPos++;
// wenn CanGrouping() TRUE returnt, ist schon alles erledigt
if( !pUndo->CanGrouping( rStr.GetChar( i ) ))
{
pUndo = new SwUndoInsert( pPos->nNode, nInsPos, 1,
!rCC.isLetterNumeric( rStr, i ) );
2000-09-18 23:08:29 +00:00
AppendUndo( pUndo );
}
}
}
if( IsRedlineOn() || (!IsIgnoreRedline() && pRedlineTbl->Count() ))
{
SwPaM aPam( pPos->nNode, aTmp.GetCntnt(),
pPos->nNode, pPos->nContent.GetIndex());
if( IsRedlineOn() )
AppendRedline( new SwRedline( nsRedlineType_t::REDLINE_INSERT, aPam ), true);
2000-09-18 23:08:29 +00:00
else
SplitRedline( aPam );
}
SetModified();
return TRUE;
}
SwFlyFrmFmt* SwDoc::_InsNoTxtNode( const SwPosition& rPos, SwNoTxtNode* pNode,
const SfxItemSet* pFlyAttrSet,
const SfxItemSet* pGrfAttrSet,
SwFrmFmt* pFrmFmt)
{
SwFlyFrmFmt *pFmt = 0;
if( pNode )
{
pFmt = _MakeFlySection( rPos, *pNode, FLY_AT_CNTNT,
pFlyAttrSet, pFrmFmt );
if( pGrfAttrSet )
pNode->SetAttr( *pGrfAttrSet );
}
return pFmt;
}
SwFlyFrmFmt* SwDoc::Insert( const SwPaM &rRg,
const String& rGrfName,
const String& rFltName,
const Graphic* pGraphic,
const SfxItemSet* pFlyAttrSet,
const SfxItemSet* pGrfAttrSet,
SwFrmFmt* pFrmFmt )
{
if( !pFrmFmt )
pFrmFmt = GetFrmFmtFromPool( RES_POOLFRM_GRAPHIC );
return _InsNoTxtNode( *rRg.GetPoint(), GetNodes().MakeGrfNode(
SwNodeIndex( GetNodes().GetEndOfAutotext() ),
rGrfName, rFltName, pGraphic,
pDfltGrfFmtColl ),
pFlyAttrSet, pGrfAttrSet, pFrmFmt );
}
SwFlyFrmFmt* SwDoc::Insert( const SwPaM &rRg, const GraphicObject& rGrfObj,
const SfxItemSet* pFlyAttrSet,
const SfxItemSet* pGrfAttrSet,
SwFrmFmt* pFrmFmt )
{
if( !pFrmFmt )
pFrmFmt = GetFrmFmtFromPool( RES_POOLFRM_GRAPHIC );
return _InsNoTxtNode( *rRg.GetPoint(), GetNodes().MakeGrfNode(
SwNodeIndex( GetNodes().GetEndOfAutotext() ),
rGrfObj, pDfltGrfFmtColl ),
pFlyAttrSet, pGrfAttrSet, pFrmFmt );
}
2000-09-18 23:08:29 +00:00
SwFlyFrmFmt* SwDoc::Insert(const SwPaM &rRg, const svt::EmbeddedObjectRef& xObj,
2000-09-18 23:08:29 +00:00
const SfxItemSet* pFlyAttrSet,
const SfxItemSet* pGrfAttrSet,
SwFrmFmt* pFrmFmt )
{
if( !pFrmFmt )
{
USHORT nId = RES_POOLFRM_OLE;
SvGlobalName aClassName( xObj->getClassID() );
if (SotExchange::IsMath(aClassName))
2000-09-18 23:08:29 +00:00
nId = RES_POOLFRM_FORMEL;
pFrmFmt = GetFrmFmtFromPool( nId );
}
return _InsNoTxtNode( *rRg.GetPoint(), GetNodes().MakeOLENode(
SwNodeIndex( GetNodes().GetEndOfAutotext() ),
xObj,
2000-09-18 23:08:29 +00:00
pDfltGrfFmtColl ),
pFlyAttrSet, pGrfAttrSet,
pFrmFmt );
}
SwFlyFrmFmt* SwDoc::InsertOLE(const SwPaM &rRg, const String& rObjName,
sal_Int64 nAspect,
2000-11-27 14:38:15 +00:00
const SfxItemSet* pFlyAttrSet,
const SfxItemSet* pGrfAttrSet,
SwFrmFmt* pFrmFmt )
{
if( !pFrmFmt )
pFrmFmt = GetFrmFmtFromPool( RES_POOLFRM_OLE );
return _InsNoTxtNode( *rRg.GetPoint(),
GetNodes().MakeOLENode(
SwNodeIndex( GetNodes().GetEndOfAutotext() ),
rObjName,
nAspect,
pDfltGrfFmtColl,
0 ),
2000-11-27 14:38:15 +00:00
pFlyAttrSet, pGrfAttrSet,
pFrmFmt );
}
2000-09-18 23:08:29 +00:00
/*************************************************************************
|* SwDoc::GetFldType()
|* Beschreibung: liefert den am Doc eingerichteten Feldtypen zurueck
*************************************************************************/
SwFieldType *SwDoc::GetSysFldType( const USHORT eWhich ) const
{
for( USHORT i = 0; i < INIT_FLDTYPES; ++i )
2000-09-18 23:08:29 +00:00
if( eWhich == (*pFldTypes)[i]->Which() )
return (*pFldTypes)[i];
return 0;
}
/*************************************************************************
* void SetDocStat( const SwDocStat& rStat );
*************************************************************************/
void SwDoc::SetDocStat( const SwDocStat& rStat )
{
*pDocStat = rStat;
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
const SwDocStat& SwDoc::GetDocStat() const
{
return *pDocStat;
}
sal_uInt16 SwDoc::GetPageCount() const
{
return GetRootFrm() ? GetRootFrm()->GetPageNum() : 0;
}
const Size SwDoc::GetPageSize( sal_uInt16 nPageNum, bool bSkipEmptyPages ) const
{
Size aSize;
if( GetRootFrm() && nPageNum )
{
const SwPageFrm* pPage = static_cast<const SwPageFrm*>
(GetRootFrm()->Lower());
while( --nPageNum && pPage->GetNext() )
pPage = static_cast<const SwPageFrm*>( pPage->GetNext() );
if( !bSkipEmptyPages && pPage->IsEmptyPage() && pPage->GetNext() )
pPage = static_cast<const SwPageFrm*>( pPage->GetNext() );
aSize = pPage->Frm().SSize();
}
return aSize;
}
2000-09-18 23:08:29 +00:00
/*************************************************************************
* void UpdateDocStat( const SwDocStat& rStat );
*************************************************************************/
void SwDoc::UpdateDocStat( SwDocStat& rStat )
{
if( rStat.bModified )
{
rStat.Reset();
rStat.nPara = 0; // Default ist auf 1 !!
SwNode* pNd;
for( ULONG i = GetNodes().Count(); i; )
{
switch( ( pNd = GetNodes()[ --i ])->GetNodeType() )
{
case ND_TEXTNODE:
((SwTxtNode*)pNd)->CountWords( rStat, 0, ((SwTxtNode*)pNd)->GetTxt().Len() );
break;
case ND_TABLENODE: ++rStat.nTbl; break;
case ND_GRFNODE: ++rStat.nGrf; break;
case ND_OLENODE: ++rStat.nOLE; break;
case ND_SECTIONNODE: break;
}
}
2000-11-20 13:47:36 +00:00
rStat.nPage = GetRootFrm() ? GetRootFrm()->GetPageNum() : 0;
2000-09-18 23:08:29 +00:00
rStat.bModified = FALSE;
SetDocStat( rStat );
com::sun::star::uno::Sequence < com::sun::star::beans::NamedValue > aStat( rStat.nPage ? 7 : 6);
sal_Int32 n=0;
aStat[n].Name = ::rtl::OUString::createFromAscii("TableCount");
aStat[n++].Value <<= (sal_Int32)rStat.nTbl;
aStat[n].Name = ::rtl::OUString::createFromAscii("ImageCount");
aStat[n++].Value <<= (sal_Int32)rStat.nGrf;
aStat[n].Name = ::rtl::OUString::createFromAscii("ObjectCount");
aStat[n++].Value <<= (sal_Int32)rStat.nOLE;
if ( rStat.nPage )
{
aStat[n].Name = ::rtl::OUString::createFromAscii("PageCount");
aStat[n++].Value <<= (sal_Int32)rStat.nPage;
}
aStat[n].Name = ::rtl::OUString::createFromAscii("ParagraphCount");
aStat[n++].Value <<= (sal_Int32)rStat.nPara;
aStat[n].Name = ::rtl::OUString::createFromAscii("WordCount");
aStat[n++].Value <<= (sal_Int32)rStat.nWord;
aStat[n].Name = ::rtl::OUString::createFromAscii("CharacterCount");
aStat[n++].Value <<= (sal_Int32)rStat.nChar;
// For e.g. autotext documents there is no pSwgInfo (#i79945)
if (GetDocShell()) {
uno::Reference<document::XDocumentPropertiesSupplier> xDPS(
GetDocShell()->GetModel(), uno::UNO_QUERY_THROW);
uno::Reference<document::XDocumentProperties> xDocProps(
xDPS->getDocumentProperties());
xDocProps->setDocumentStatistics(aStat);
}
2000-09-18 23:08:29 +00:00
// event. Stat. Felder Updaten
SwFieldType *pType = GetSysFldType(RES_DOCSTATFLD);
pType->UpdateFlds();
}
}
2000-09-18 23:08:29 +00:00
// Dokument - Info
void SwDoc::DocInfoChgd( )
2000-09-18 23:08:29 +00:00
{
GetSysFldType( RES_DOCINFOFLD )->UpdateFlds();
GetSysFldType( RES_TEMPLNAMEFLD )->UpdateFlds();
SetModified();
}
// returne zum Namen die im Doc gesetzte Referenz
const SwFmtRefMark* SwDoc::GetRefMark( const String& rName ) const
{
const SfxPoolItem* pItem;
USHORT nMaxItems = GetAttrPool().GetItemCount( RES_TXTATR_REFMARK );
for( USHORT n = 0; n < nMaxItems; ++n )
{
if( 0 == (pItem = GetAttrPool().GetItem( RES_TXTATR_REFMARK, n ) ))
continue;
const SwFmtRefMark* pFmtRef = (SwFmtRefMark*)pItem;
const SwTxtRefMark* pTxtRef = pFmtRef->GetTxtRefMark();
if( pTxtRef && &pTxtRef->GetTxtNode().GetNodes() == &GetNodes() &&
rName.Equals( pFmtRef->GetRefName() ) )
return pFmtRef;
}
return 0;
}
// returne die RefMark per Index - fuer Uno
const SwFmtRefMark* SwDoc::GetRefMark( USHORT nIndex ) const
{
const SfxPoolItem* pItem;
const SwTxtRefMark* pTxtRef;
const SwFmtRefMark* pRet = 0;
USHORT nMaxItems = GetAttrPool().GetItemCount( RES_TXTATR_REFMARK );
USHORT nCount = 0;
for( USHORT n = 0; n < nMaxItems; ++n )
if( 0 != (pItem = GetAttrPool().GetItem( RES_TXTATR_REFMARK, n )) &&
0 != (pTxtRef = ((SwFmtRefMark*)pItem)->GetTxtRefMark()) &&
&pTxtRef->GetTxtNode().GetNodes() == &GetNodes() )
{
if(nCount == nIndex)
{
pRet = (SwFmtRefMark*)pItem;
break;
}
nCount++;
}
return pRet;
}
// returne die Namen aller im Doc gesetzten Referenzen
//JP 24.06.96: Ist der ArrayPointer 0 dann returne nur, ob im Doc. eine
// RefMark gesetzt ist
// OS 25.06.96: ab jetzt wird immer die Anzahl der Referenzen returnt
USHORT SwDoc::GetRefMarks( SvStringsDtor* pNames ) const
{
const SfxPoolItem* pItem;
const SwTxtRefMark* pTxtRef;
USHORT nMaxItems = GetAttrPool().GetItemCount( RES_TXTATR_REFMARK );
USHORT nCount = 0;
for( USHORT n = 0; n < nMaxItems; ++n )
if( 0 != (pItem = GetAttrPool().GetItem( RES_TXTATR_REFMARK, n )) &&
0 != (pTxtRef = ((SwFmtRefMark*)pItem)->GetTxtRefMark()) &&
&pTxtRef->GetTxtNode().GetNodes() == &GetNodes() )
{
if( pNames )
{
String* pTmp = new String( ((SwFmtRefMark*)pItem)->GetRefName() );
pNames->Insert( pTmp, nCount );
}
nCount ++;
}
return nCount;
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::IsLoaded() const
{
return mbLoaded;
}
bool SwDoc::IsUpdateExpFld() const
{
return mbUpdateExpFld;
}
bool SwDoc::IsNewDoc() const
{
return mbNewDoc;
}
bool SwDoc::IsPageNums() const
{
return mbPageNums;
}
void SwDoc::SetPageNums(bool b)
{
mbPageNums = b;
}
void SwDoc::SetNewDoc(bool b)
{
mbNewDoc = b;
}
void SwDoc::SetUpdateExpFldStat(bool b)
{
mbUpdateExpFld = b;
}
void SwDoc::SetLoaded(bool b)
{
mbLoaded = b;
}
bool SwDoc::IsModified() const
{
return mbModified;
}
2000-09-18 23:08:29 +00:00
void SwDoc::SetModified()
{
// --> OD 2005-08-29 #125370#
SwLayouter::ClearMovedFwdFrms( *this );
SwLayouter::ClearObjsTmpConsiderWrapInfluence( *this );
SwLayouter::ClearFrmsNotToWrap( *this );
// <--
// --> OD 2006-05-10 #i65250#
SwLayouter::ClearMoveBwdLayoutInfo( *this );
// <--
2000-09-18 23:08:29 +00:00
// dem Link wird der Status returnt, wie die Flags waren und werden
// Bit 0: -> alter Zustand
// Bit 1: -> neuer Zustand
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
long nCall = mbModified ? 3 : 2;
mbModified = TRUE;
2000-09-18 23:08:29 +00:00
pDocStat->bModified = TRUE;
if( aOle2Link.IsSet() )
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
mbInCallModified = TRUE;
2000-09-18 23:08:29 +00:00
aOle2Link.Call( (void*)nCall );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
mbInCallModified = FALSE;
2000-09-18 23:08:29 +00:00
}
if( pACEWord && !pACEWord->IsDeleted() )
delete pACEWord, pACEWord = 0;
}
void SwDoc::ResetModified()
{
// dem Link wird der Status returnt, wie die Flags waren und werden
// Bit 0: -> alter Zustand
// Bit 1: -> neuer Zustand
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
long nCall = mbModified ? 1 : 0;
mbModified = FALSE;
// If there is already a document statistic, we assume that
// it is correct. In this case we reset the modified flag.
if ( 0 != pDocStat->nChar )
pDocStat->bModified = FALSE;
2000-09-18 23:08:29 +00:00
nUndoSavePos = nUndoPos;
if( nCall && aOle2Link.IsSet() )
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
mbInCallModified = TRUE;
2000-09-18 23:08:29 +00:00
aOle2Link.Call( (void*)nCall );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
mbInCallModified = FALSE;
2000-09-18 23:08:29 +00:00
}
}
void SwDoc::ReRead( SwPaM& rPam, const String& rGrfName,
const String& rFltName, const Graphic* pGraphic,
const GraphicObject* pGrafObj )
2000-09-18 23:08:29 +00:00
{
SwGrfNode *pGrfNd;
if( ( !rPam.HasMark()
|| rPam.GetPoint()->nNode.GetIndex() == rPam.GetMark()->nNode.GetIndex() )
&& 0 != ( pGrfNd = rPam.GetPoint()->nNode.GetNode().GetGrfNode() ) )
{
if( DoesUndo() )
{
ClearRedo();
AppendUndo( new SwUndoReRead( rPam, *pGrfNd ) );
}
// Weil nicht bekannt ist, ob sich die Grafik spiegeln laesst,
// immer das SpiegelungsAttribut zuruecksetzen
if( RES_MIRROR_GRAPH_DONT != pGrfNd->GetSwAttrSet().
2000-09-18 23:08:29 +00:00
GetMirrorGrf().GetValue() )
pGrfNd->SetAttr( SwMirrorGrf() );
pGrfNd->ReRead( rGrfName, rFltName, pGraphic, pGrafObj, TRUE );
2000-09-18 23:08:29 +00:00
SetModified();
}
}
BOOL lcl_SpellAndGrammarAgain( const SwNodePtr& rpNd, void* pArgs )
2000-09-18 23:08:29 +00:00
{
SwTxtNode *pTxtNode = (SwTxtNode*)rpNd->GetTxtNode();
BOOL bOnlyWrong = *(BOOL*)pArgs;
if( pTxtNode )
{
if( bOnlyWrong )
{
if( pTxtNode->GetWrong() &&
pTxtNode->GetWrong()->InvalidateWrong() )
pTxtNode->SetWrongDirty( true );
if( pTxtNode->GetGrammarCheck() &&
pTxtNode->GetGrammarCheck()->InvalidateWrong() )
pTxtNode->SetGrammarCheckDirty( true );
2000-09-18 23:08:29 +00:00
}
else
{
pTxtNode->SetWrongDirty( true );
2000-09-18 23:08:29 +00:00
if( pTxtNode->GetWrong() )
pTxtNode->GetWrong()->SetInvalid( 0, STRING_LEN );
pTxtNode->SetGrammarCheckDirty( true );
if( pTxtNode->GetGrammarCheck() )
pTxtNode->GetGrammarCheck()->SetInvalid( 0, STRING_LEN );
2000-09-18 23:08:29 +00:00
}
}
return TRUE;
}
BOOL lcl_CheckSmartTagsAgain( const SwNodePtr& rpNd, void* )
{
SwTxtNode *pTxtNode = (SwTxtNode*)rpNd->GetTxtNode();
// BOOL bOnlyWrong = *(BOOL*)pArgs;
if( pTxtNode )
{
pTxtNode->SetSmartTagDirty( true );
if( pTxtNode->GetSmartTags() )
{
// if ( bOnlyWrong ) // only some smart tag types have been enabled or disabled
// pTxtNode->GetSmartTags()->SetInvalid( 0, STRING_LEN );
// else // smart tags all have been enabled or disabled
pTxtNode->SetSmartTags( NULL );
}
}
return TRUE;
}
2000-09-18 23:08:29 +00:00
/*************************************************************************
* SwDoc::SpellItAgainSam( BOOL bInvalid, BOOL bOnlyWrong )
*
* stoesst das Spelling im Idle-Handler wieder an.
* Wird bInvalid als TRUE uebergeben, so werden zusaetzlich die WrongListen
* an allen Nodes invalidiert und auf allen Seiten das SpellInvalid-Flag
* gesetzt.
* Mit bOnlyWrong kann man dann steuern, ob nur die Bereiche mit falschen
* Woertern oder die kompletten Bereiche neu ueberprueft werden muessen.
************************************************************************/
void SwDoc::SpellItAgainSam( BOOL bInvalid, BOOL bOnlyWrong, BOOL bSmartTags )
2000-09-18 23:08:29 +00:00
{
ASSERT( GetRootFrm(), "SpellAgain: Where's my RootFrm?" );
if( bInvalid )
{
SwPageFrm *pPage = (SwPageFrm*)GetRootFrm()->Lower();
while ( pPage )
{
if ( bSmartTags )
pPage->InvalidateSmartTags();
2000-09-18 23:08:29 +00:00
pPage->InvalidateSpelling();
pPage = (SwPageFrm*)pPage->GetNext();
}
GetRootFrm()->SetNeedGrammarCheck( true );
if ( bSmartTags )
GetNodes().ForEach( lcl_CheckSmartTagsAgain, &bOnlyWrong );
GetNodes().ForEach( lcl_SpellAndGrammarAgain, &bOnlyWrong );
2000-09-18 23:08:29 +00:00
}
2000-09-18 23:08:29 +00:00
GetRootFrm()->SetIdleFlags();
}
void SwDoc::InvalidateAutoCompleteFlag()
{
if( GetRootFrm() )
{
SwPageFrm *pPage = (SwPageFrm*)GetRootFrm()->Lower();
while ( pPage )
{
pPage->InvalidateAutoCompleteWords();
pPage = (SwPageFrm*)pPage->GetNext();
}
for( ULONG nNd = 1, nCnt = GetNodes().Count(); nNd < nCnt; ++nNd )
{
SwTxtNode* pTxtNode = GetNodes()[ nNd ]->GetTxtNode();
if ( pTxtNode ) pTxtNode->SetAutoCompleteWordDirty( true );
}
2000-09-18 23:08:29 +00:00
GetRootFrm()->SetIdleFlags();
}
}
const SwFmtINetFmt* SwDoc::FindINetAttr( const String& rName ) const
{
const SwFmtINetFmt* pItem;
const SwTxtINetFmt* pTxtAttr;
const SwTxtNode* pTxtNd;
USHORT n, nMaxItems = GetAttrPool().GetItemCount( RES_TXTATR_INETFMT );
for( n = 0; n < nMaxItems; ++n )
if( 0 != (pItem = (SwFmtINetFmt*)GetAttrPool().GetItem(
RES_TXTATR_INETFMT, n ) ) &&
pItem->GetName().Equals( rName ) &&
0 != ( pTxtAttr = pItem->GetTxtINetFmt()) &&
0 != ( pTxtNd = pTxtAttr->GetpTxtNode() ) &&
&pTxtNd->GetNodes() == &GetNodes() )
{
return pItem;
}
return 0;
}
void SwDoc::Summary( SwDoc* pExtDoc, BYTE nLevel, BYTE nPara, BOOL bImpress )
{
const SwOutlineNodes& rOutNds = GetNodes().GetOutLineNds();
if( pExtDoc && rOutNds.Count() )
{
USHORT i;
::StartProgress( STR_STATSTR_SUMMARY, 0, rOutNds.Count(), GetDocShell() );
SwNodeIndex aEndOfDoc( pExtDoc->GetNodes().GetEndOfContent(), -1 );
for( i = 0; i < rOutNds.Count(); ++i )
{
::SetProgressState( i, GetDocShell() );
CWS-TOOLING: integrate CWS outlinelevel 2008-12-19 10:32:51 +0100 od r265718 : #i70748# method <SwWW8Writer::StartTOX(..)> - correction for custom to outline style assigned paragraph styles 2008-12-19 09:24:41 +0100 od r265715 : #i70748# method <HandleModifyAtTxtNode(..)> - retrieve former applied list style before potential reset of empty list style due to set outline level 2008-12-17 15:33:57 +0100 hde r265608 : #i97013# 2008-12-17 14:43:42 +0100 od r265603 : #i70748# adjust fix i44177 - adjustment of to outline style assigned paragraph styles only for OOo-Templates. 2008-12-17 12:59:42 +0100 od r265598 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - special handling of OOo 2.x document regarding outline numbering of headings. 2008-12-17 12:45:53 +0100 od r265597 : #i70748# method <HandleModifyAtTxtNode(..)> - correct determination of new and former applied list style 2008-12-17 10:18:41 +0100 od r265581 : #i97312# method <XMLTextNumRuleInfo::Set(..)> - check, if numbering rules instance contains any numbering rule. 2008-12-16 14:34:22 +0100 hde r265542 : #i97013 2008-12-16 14:20:24 +0100 od r265541 : #i70748# adjust documentation of "Which"-ID numbers 2008-12-16 14:19:49 +0100 od r265539 : #i70748# Adjust Attribute-Function-Mapping table due to new attribute 2008-12-16 14:06:24 +0100 od r265538 : #i70748# - Correct handling of to outline style assigned paragraph styles on reset of all paragraph style attributes - WW8 import: Consider refactoring of paragraph style's outline level attribute - NO_NUMBERING define no longer exsits. 2008-12-16 10:37:19 +0100 od r265530 : #i70478# Correction on moving outline paragraph up respectively down in its outline level: - Check also outline paragraph, which are not an outline via a to outline style assigned paragraph style, if action is applicable. 2008-12-16 09:10:13 +0100 hde r265523 : #i97277 2008-12-16 09:09:30 +0100 hde r265522 : #i97277 2008-12-16 09:07:40 +0100 hde r265521 : Added control and purged obsolete id's 2008-12-10 13:09:36 +0100 od r265174 : #i70748# correction of previous fix due to warning-free code 2008-12-10 13:03:30 +0100 od r265172 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - Due to performance issues avoid retrieving outline level value from paragraph's paragraph style for each paragraph. Instead retrieve current outline level value from paragraph, which is the inherited value from its paragraph style, and only when it is needed. 2008-12-09 16:50:36 +0100 ufi r265117 : help 2008-12-09 16:49:50 +0100 ufi r265116 : help 2008-12-09 15:45:05 +0100 od r265107 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - some minor rework and check access to paragraph styles 2008-12-09 15:42:04 +0100 od r265106 : #i70748# adjust name of local variable to avoid hiding of class variable 2008-12-09 15:40:51 +0100 od r265105 : #i70748# correct initialization order 2008-12-09 15:35:07 +0100 od r265101 : #i70748# remove duplicate entry in certain property map 2008-12-09 15:33:39 +0100 od r265100 : #i70748# add end of file token 2008-12-07 15:11:54 +0100 zhaojianwei r264952 : conflicts left not to be resolved when cws rebase 2008-12-04 14:52:21 +0100 zhaojianwei r264846 : CWS-TOOLING: rebase CWS outlinelevel to trunk@264325 (milestone: DEV300:m36) 2008-11-28 03:42:09 +0100 zhaojianwei r264525 : #i70748#: migrate CWS outlinelevel to SVN 2008-11-28 03:41:39 +0100 zhaojianwei r264524 : #i70748#: migrate CWS outlinelevel to SVN 2008-11-28 03:41:11 +0100 zhaojianwei r264523 : #i70748#: migrate CWS outlinelevel to SVN
2009-01-07 11:57:24 +00:00
const ULONG nIndex = rOutNds[ i ]->GetIndex();
//BYTE nLvl = ((SwTxtNode*)GetNodes()[ nIndex ])->GetTxtColl()//#outline level,zhaojianwei
// ->GetOutlineLevel();
const int nLvl = ((SwTxtNode*)GetNodes()[ nIndex ])->GetAttrOutlineLevel()-1;//<-end,zhaojianwei
2000-09-18 23:08:29 +00:00
if( nLvl > nLevel )
continue;
USHORT nEndOfs = 1;
BYTE nWish = nPara;
ULONG nNextOutNd = i + 1 < rOutNds.Count() ?
rOutNds[ i + 1 ]->GetIndex() : GetNodes().Count();
BOOL bKeep = FALSE;
while( ( nWish || bKeep ) && nIndex + nEndOfs < nNextOutNd &&
GetNodes()[ nIndex + nEndOfs ]->IsTxtNode() )
{
SwTxtNode* pTxtNode = (SwTxtNode*)GetNodes()[ nIndex+nEndOfs ];
if( pTxtNode->GetTxt().Len() && nWish )
--nWish;
bKeep = pTxtNode->GetSwAttrSet().GetKeep().GetValue();
++nEndOfs;
}
SwNodeRange aRange( *rOutNds[ i ], 0, *rOutNds[ i ], nEndOfs );
GetNodes()._Copy( aRange, aEndOfDoc );
}
const SwTxtFmtColls *pColl = pExtDoc->GetTxtFmtColls();
for( i = 0; i < pColl->Count(); ++i )
(*pColl)[ i ]->ResetFmtAttr( RES_PAGEDESC, RES_BREAK );
2000-09-18 23:08:29 +00:00
SwNodeIndex aIndx( pExtDoc->GetNodes().GetEndOfExtras() );
++aEndOfDoc;
while( aIndx < aEndOfDoc )
{
SwNode *pNode;
BOOL bDelete = FALSE;
if( (pNode = &aIndx.GetNode())->IsTxtNode() )
{
SwTxtNode *pNd = (SwTxtNode*)pNode;
if( pNd->HasSwAttrSet() )
pNd->ResetAttr( RES_PAGEDESC, RES_BREAK );
if( bImpress )
{
SwTxtFmtColl* pMyColl = pNd->GetTxtColl();
CWS-TOOLING: integrate CWS outlinelevel 2008-12-19 10:32:51 +0100 od r265718 : #i70748# method <SwWW8Writer::StartTOX(..)> - correction for custom to outline style assigned paragraph styles 2008-12-19 09:24:41 +0100 od r265715 : #i70748# method <HandleModifyAtTxtNode(..)> - retrieve former applied list style before potential reset of empty list style due to set outline level 2008-12-17 15:33:57 +0100 hde r265608 : #i97013# 2008-12-17 14:43:42 +0100 od r265603 : #i70748# adjust fix i44177 - adjustment of to outline style assigned paragraph styles only for OOo-Templates. 2008-12-17 12:59:42 +0100 od r265598 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - special handling of OOo 2.x document regarding outline numbering of headings. 2008-12-17 12:45:53 +0100 od r265597 : #i70748# method <HandleModifyAtTxtNode(..)> - correct determination of new and former applied list style 2008-12-17 10:18:41 +0100 od r265581 : #i97312# method <XMLTextNumRuleInfo::Set(..)> - check, if numbering rules instance contains any numbering rule. 2008-12-16 14:34:22 +0100 hde r265542 : #i97013 2008-12-16 14:20:24 +0100 od r265541 : #i70748# adjust documentation of "Which"-ID numbers 2008-12-16 14:19:49 +0100 od r265539 : #i70748# Adjust Attribute-Function-Mapping table due to new attribute 2008-12-16 14:06:24 +0100 od r265538 : #i70748# - Correct handling of to outline style assigned paragraph styles on reset of all paragraph style attributes - WW8 import: Consider refactoring of paragraph style's outline level attribute - NO_NUMBERING define no longer exsits. 2008-12-16 10:37:19 +0100 od r265530 : #i70478# Correction on moving outline paragraph up respectively down in its outline level: - Check also outline paragraph, which are not an outline via a to outline style assigned paragraph style, if action is applicable. 2008-12-16 09:10:13 +0100 hde r265523 : #i97277 2008-12-16 09:09:30 +0100 hde r265522 : #i97277 2008-12-16 09:07:40 +0100 hde r265521 : Added control and purged obsolete id's 2008-12-10 13:09:36 +0100 od r265174 : #i70748# correction of previous fix due to warning-free code 2008-12-10 13:03:30 +0100 od r265172 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - Due to performance issues avoid retrieving outline level value from paragraph's paragraph style for each paragraph. Instead retrieve current outline level value from paragraph, which is the inherited value from its paragraph style, and only when it is needed. 2008-12-09 16:50:36 +0100 ufi r265117 : help 2008-12-09 16:49:50 +0100 ufi r265116 : help 2008-12-09 15:45:05 +0100 od r265107 : #i70748# method <XMLTextImportHelper::SetStyleAndAttrs(..)> - some minor rework and check access to paragraph styles 2008-12-09 15:42:04 +0100 od r265106 : #i70748# adjust name of local variable to avoid hiding of class variable 2008-12-09 15:40:51 +0100 od r265105 : #i70748# correct initialization order 2008-12-09 15:35:07 +0100 od r265101 : #i70748# remove duplicate entry in certain property map 2008-12-09 15:33:39 +0100 od r265100 : #i70748# add end of file token 2008-12-07 15:11:54 +0100 zhaojianwei r264952 : conflicts left not to be resolved when cws rebase 2008-12-04 14:52:21 +0100 zhaojianwei r264846 : CWS-TOOLING: rebase CWS outlinelevel to trunk@264325 (milestone: DEV300:m36) 2008-11-28 03:42:09 +0100 zhaojianwei r264525 : #i70748#: migrate CWS outlinelevel to SVN 2008-11-28 03:41:39 +0100 zhaojianwei r264524 : #i70748#: migrate CWS outlinelevel to SVN 2008-11-28 03:41:11 +0100 zhaojianwei r264523 : #i70748#: migrate CWS outlinelevel to SVN
2009-01-07 11:57:24 +00:00
//USHORT nHeadLine = static_cast<USHORT>(pMyColl->GetOutlineLevel()==NO_NUMBERING ?//#outlinelevel,zhaojianwei
const USHORT nHeadLine = static_cast<USHORT>(
!pMyColl->IsAssignedToListLevelOfOutlineStyle() //<-end,zhaojianwei
? RES_POOLCOLL_HEADLINE2
: RES_POOLCOLL_HEADLINE1 );
pMyColl = pExtDoc->GetTxtCollFromPool( nHeadLine );
pNd->ChgFmtColl( pMyColl );
2000-09-18 23:08:29 +00:00
}
if( !pNd->Len() &&
pNd->StartOfSectionIndex()+2 < pNd->EndOfSectionIndex() )
{
bDelete = TRUE;
pExtDoc->GetNodes().Delete( aIndx );
}
}
if( !bDelete )
++aIndx;
}
::EndProgress( GetDocShell() );
}
}
// loesche den nicht sichtbaren Content aus dem Document, wie z.B.:
// versteckte Bereiche, versteckte Absaetze
BOOL SwDoc::RemoveInvisibleContent()
{
BOOL bRet = FALSE;
StartUndo( UNDO_UI_DELETE_INVISIBLECNTNT, NULL );
2000-09-18 23:08:29 +00:00
{
SwTxtNode* pTxtNd;
SwClientIter aIter( *GetSysFldType( RES_HIDDENPARAFLD ) );
for( SwFmtFld* pFmtFld = (SwFmtFld*)aIter.First( TYPE( SwFmtFld ));
pFmtFld; pFmtFld = (SwFmtFld*)aIter.Next() )
{
2000-09-18 23:08:29 +00:00
if( pFmtFld->GetTxtFld() &&
0 != ( pTxtNd = (SwTxtNode*)pFmtFld->GetTxtFld()->GetpTxtNode() ) &&
pTxtNd->GetpSwpHints() && pTxtNd->HasHiddenParaField() &&
2000-09-18 23:08:29 +00:00
&pTxtNd->GetNodes() == &GetNodes() )
{
bRet = TRUE;
SwPaM aPam( *pTxtNd, 0, *pTxtNd, pTxtNd->GetTxt().Len() );
// Remove hidden paragraph or delete contents:
// Delete contents if
// 1. removing the paragraph would result in an empty section or
// 2. if the paragraph is the last paragraph in the section and
// there is no paragraph in front of the paragraph:
if ( ( 2 == pTxtNd->EndOfSectionIndex() - pTxtNd->StartOfSectionIndex() ) ||
( 1 == pTxtNd->EndOfSectionIndex() - pTxtNd->GetIndex() &&
!GetNodes()[ pTxtNd->GetIndex() - 1 ]->GetTxtNode() ) )
{
Delete( aPam );
}
else
2000-09-18 23:08:29 +00:00
{
aPam.DeleteMark();
DelFullPara( aPam );
}
}
}
2000-09-18 23:08:29 +00:00
}
//
// Remove any hidden paragraph (hidden text attribute)
//
for( ULONG n = GetNodes().Count(); n; )
{
SwTxtNode* pTxtNd = GetNodes()[ --n ]->GetTxtNode();
if ( pTxtNd )
{
bool bRemoved = false;
SwPaM aPam( *pTxtNd, 0, *pTxtNd, pTxtNd->GetTxt().Len() );
if ( pTxtNd->HasHiddenCharAttribute( true ) )
{
bRemoved = TRUE;
bRet = TRUE;
// Remove hidden paragraph or delete contents:
// Delete contents if
// 1. removing the paragraph would result in an empty section or
// 2. if the paragraph is the last paragraph in the section and
// there is no paragraph in front of the paragraph:
if ( ( 2 == pTxtNd->EndOfSectionIndex() - pTxtNd->StartOfSectionIndex() ) ||
( 1 == pTxtNd->EndOfSectionIndex() - pTxtNd->GetIndex() &&
!GetNodes()[ pTxtNd->GetIndex() - 1 ]->GetTxtNode() ) )
{
Delete( aPam );
}
else
{
aPam.DeleteMark();
DelFullPara( aPam );
}
}
else if ( pTxtNd->HasHiddenCharAttribute( false ) )
{
bRemoved = TRUE;
bRet = TRUE;
SwScriptInfo::DeleteHiddenRanges( *pTxtNd );
}
// --> FME 2006-01-11 #120473#
// Footnotes/Frames may have been removed, therefore we have
// to reset n:
if ( bRemoved )
n = aPam.GetPoint()->nNode.GetIndex();
// <--
}
}
2000-09-18 23:08:29 +00:00
{
// dann noch alle versteckten Bereiche loeschen/leeren
SwSectionFmts aSectFmts;
SwSectionFmts& rSectFmts = GetSections();
USHORT n;
for( n = rSectFmts.Count(); n; )
2000-09-18 23:08:29 +00:00
{
SwSectionFmt* pSectFmt = rSectFmts[ --n ];
// don't add sections in Undo/Redo
if( !pSectFmt->IsInNodesArr())
continue;
2000-09-18 23:08:29 +00:00
SwSection* pSect = pSectFmt->GetSection();
if( pSect->CalcHiddenFlag() )
{
SwSection* pParent = pSect, *pTmp;
while( 0 != (pTmp = pParent->GetParent() ))
{
if( pTmp->IsHiddenFlag() )
pSect = pTmp;
pParent = pTmp;
}
if( USHRT_MAX == aSectFmts.GetPos( pSect->GetFmt() ) )
aSectFmts.Insert( pSect->GetFmt(), 0 );
}
if( pSect->GetCondition().Len() )
{
SwSection aSect( pSect->GetType(), pSect->GetName() );
aSect = *pSect;
aSect.SetCondition( aEmptyStr );
aSect.SetHidden( FALSE );
ChgSection( n, aSect );
}
}
if( 0 != ( n = aSectFmts.Count() ))
{
while( n )
{
SwSectionFmt* pSectFmt = aSectFmts[ --n ];
SwSectionNode* pSectNd = pSectFmt->GetSectionNode();
if( pSectNd )
{
bRet = TRUE;
SwPaM aPam( *pSectNd );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
if( pSectNd->StartOfSectionNode()->StartOfSectionIndex() ==
2000-09-18 23:08:29 +00:00
pSectNd->GetIndex() - 1 &&
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
pSectNd->StartOfSectionNode()->EndOfSectionIndex() ==
2000-09-18 23:08:29 +00:00
pSectNd->EndOfSectionIndex() + 1 )
{
// nur den Inhalt loeschen
SwCntntNode* pCNd = GetNodes().GoNext(
&aPam.GetPoint()->nNode );
aPam.GetPoint()->nContent.Assign( pCNd, 0 );
aPam.SetMark();
aPam.GetPoint()->nNode = *pSectNd->EndOfSectionNode();
pCNd = GetNodes().GoPrevious(
&aPam.GetPoint()->nNode );
aPam.GetPoint()->nContent.Assign( pCNd, pCNd->Len() );
Delete( aPam );
}
else
{
// die gesamte Section loeschen
aPam.SetMark();
aPam.GetPoint()->nNode = *pSectNd->EndOfSectionNode();
DelFullPara( aPam );
}
}
}
aSectFmts.Remove( 0, aSectFmts.Count() );
}
}
if( bRet )
SetModified();
EndUndo( UNDO_UI_DELETE_INVISIBLECNTNT, NULL );
2000-09-18 23:08:29 +00:00
return bRet;
}
/*-- 11.06.2004 08:34:04---------------------------------------------------
-----------------------------------------------------------------------*/
BOOL SwDoc::ConvertFieldsToText()
{
BOOL bRet = FALSE;
LockExpFlds();
StartUndo( UNDO_UI_REPLACE, NULL );
const SwFldTypes* pMyFldTypes = GetFldTypes();
sal_uInt16 nCount = pMyFldTypes->Count();
//go backward, field types are removed
for(sal_uInt16 nType = nCount; nType > 0; --nType)
{
const SwFieldType *pCurType = pMyFldTypes->GetObject(nType - 1);
if ( RES_POSTITFLD == pCurType->Which() )
continue;
SwClientIter aIter( *(SwFieldType*)pCurType );
const SwFmtFld* pCurFldFmt = (SwFmtFld*)aIter.First( TYPE( SwFmtFld ));
::std::vector<const SwFmtFld*> aFieldFmts;
while (pCurFldFmt)
{
aFieldFmts.push_back(pCurFldFmt);
pCurFldFmt = (SwFmtFld*)aIter.Next();
}
::std::vector<const SwFmtFld*>::iterator aBegin = aFieldFmts.begin();
::std::vector<const SwFmtFld*>::iterator aEnd = aFieldFmts.end();
while(aBegin != aEnd)
{
const SwTxtFld *pTxtFld = (*aBegin)->GetTxtFld();
// skip fields that are currently not in the document
// e.g. fields in undo or redo array
BOOL bSkip = !pTxtFld ||
!pTxtFld->GetpTxtNode()->GetNodes().IsDocNodes();
if (!bSkip)
{
BOOL bInHeaderFooter = IsInHeaderFooter(SwNodeIndex(*pTxtFld->GetpTxtNode()));
const SwFmtFld& rFmtFld = pTxtFld->GetFld();
const SwField* pField = rFmtFld.GetFld();
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
//#i55595# some fields have to be excluded in headers/footers
USHORT nWhich = pField->GetTyp()->Which();
if(!bInHeaderFooter ||
(nWhich != RES_PAGENUMBERFLD &&
nWhich != RES_CHAPTERFLD &&
nWhich != RES_GETEXPFLD&&
nWhich != RES_SETEXPFLD&&
nWhich != RES_INPUTFLD&&
nWhich != RES_REFPAGEGETFLD&&
nWhich != RES_REFPAGESETFLD))
{
String sText = pField->GetCntnt();
//database fields should not convert their command into text
if( RES_DBFLD == pCurType->Which() && !static_cast<const SwDBField*>(pField)->IsInitialized())
sText.Erase();
//now remove the field and insert the string
CWS-TOOLING: integrate CWS os132 2009-07-21 15:24:18 +0200 os r274201 : #i103696# SwXTextPortion/SwXParagraph excluded 2009-07-15 13:19:17 +0200 os r274007 : #i103564# typo 2009-07-15 13:09:30 +0200 os r274005 : #i103564# SwFrames::hasElements 2009-07-15 13:02:16 +0200 os r274003 : #i103564# SwXBookmark::getPropertySetInfo fixed 2009-06-26 10:11:00 +0200 os r273395 : CWS-TOOLING: rebase CWS os132 to trunk@272827 (milestone: DEV300:m50) 2009-06-23 08:52:24 +0200 os r273256 : #i102764# patch: attribute ListBoxes correctly handled in ::Reset() 2009-06-23 08:51:31 +0200 os r273255 : #i102764# ResetColor() added to remove background color 2009-06-22 14:57:38 +0200 os r273233 : #i102619# prevent access to already destroyed shell 2009-06-18 13:26:51 +0200 os r273112 : #i99508# ::insertTextContent: re-route to ::attach() 2009-06-18 10:59:53 +0200 os r273107 : #i85405# patch to enable 'Print grid' CheckBox correctly 2009-06-18 10:54:02 +0200 os r273106 : #i85133# dispose connection in GetColumnFmt to prevent connection locking 2009-06-18 10:24:31 +0200 os r273104 : #99535# ExportGraphic changed 2009-06-18 10:24:03 +0200 os r273103 : #99535# ExportGraphic changed 2009-06-18 10:23:11 +0200 os r273102 : #i102841# redlining mode switches to insert mode (cmc) 2009-06-17 14:05:42 +0200 os r273070 : #i102111# do not save already saved HTML documents before switching to source veiw 2009-06-17 13:18:20 +0200 os r273063 : #i101825# set rembered start position at the real start not at the initial start 2009-06-17 08:24:10 +0200 os r273048 : #99535# no dierect access to the file picker interface 2009-06-16 15:00:12 +0200 os r273020 : #i99937# notification of user options changes re-introduced 2009-06-15 14:36:03 +0200 os r272987 : #i98032# unreplaced text in protected areas must not be attributed either 2009-06-15 14:20:26 +0200 os r272985 : #i98032# replace list has to be initialised 2009-06-04 13:29:02 +0200 os r272624 : #i97810# set focus into column page 2009-06-04 11:01:14 +0200 os r272617 : #i98164# dialog resize to ease localisation 2009-06-04 10:59:44 +0200 os r272616 : #i98164# dialog resize to ease localisation 2009-05-28 16:05:03 +0200 os r272413 : #i98172# ConvertFieldsToText: take care of tabs with attributes 2009-05-28 11:12:45 +0200 os r272385 : #i59361# dialog controls resized 2009-05-28 11:03:14 +0200 os r272383 : #i59174# dialog controls moved
2009-08-06 12:44:16 +00:00
SwPaM aPam1(*pTxtFld->GetpTxtNode(), *pTxtFld->GetStart());
aPam1.Move();
Insert( aPam1, sText, true );//insert first to keep the field's attributes
SwPaM aPam2(*pTxtFld->GetpTxtNode(), *pTxtFld->GetStart());
aPam2.SetMark();
aPam2.Move();
DeleteAndJoin(aPam2);//remove the field
}
}
++aBegin;
}
}
if( bRet )
SetModified();
EndUndo( UNDO_UI_REPLACE, NULL );
UnlockExpFlds();
return bRet;
2000-09-18 23:08:29 +00:00
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::IsVisibleLinks() const
{
return mbVisibleLinks;
}
void SwDoc::SetVisibleLinks(bool bFlag)
{
mbVisibleLinks = bFlag;
}
SvxLinkManager& SwDoc::GetLinkManager()
{
return *pLinkMgr;
}
const SvxLinkManager& SwDoc::GetLinkManager() const
{
return *pLinkMgr;
}
void SwDoc::SetLinksUpdated(const bool bNewLinksUpdated)
{
mbLinksUpdated = bNewLinksUpdated;
}
bool SwDoc::LinksUpdated() const
{
return mbLinksUpdated;
}
2000-09-18 23:08:29 +00:00
// embedded alle lokalen Links (Bereiche/Grafiken)
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
bool SwDoc::EmbedAllLinks()
2000-09-18 23:08:29 +00:00
{
BOOL bRet = FALSE;
SvxLinkManager& rLnkMgr = GetLinkManager();
const ::sfx2::SvBaseLinks& rLnks = rLnkMgr.GetLinks();
2000-09-18 23:08:29 +00:00
if( rLnks.Count() )
{
BOOL bDoesUndo = DoesUndo();
DoUndo( FALSE );
for( USHORT n = 0; n < rLnks.Count(); ++n )
{
::sfx2::SvBaseLink* pLnk = &(*rLnks[ n ]);
2000-09-18 23:08:29 +00:00
if( pLnk &&
( OBJECT_CLIENT_GRF == pLnk->GetObjType() ||
OBJECT_CLIENT_FILE == pLnk->GetObjType() ) &&
pLnk->ISA( SwBaseLink ) )
{
::sfx2::SvBaseLinkRef xLink = pLnk;
2000-09-18 23:08:29 +00:00
USHORT nCount = rLnks.Count();
String sFName;
rLnkMgr.GetDisplayNames( xLink, 0, &sFName, 0, 0 );
2000-09-18 23:08:29 +00:00
INetURLObject aURL( sFName );
if( INET_PROT_FILE == aURL.GetProtocol() ||
INET_PROT_CID == aURL.GetProtocol() )
{
// dem Link sagen, das er aufgeloest wird!
xLink->Closed();
2000-09-18 23:08:29 +00:00
// falls einer vergessen hat sich auszutragen
if( xLink.Is() )
rLnkMgr.Remove( xLink );
2000-09-18 23:08:29 +00:00
if( nCount != rLnks.Count() + 1 )
n = 0; // wieder von vorne anfangen, es wurden
// mehrere Links entfernt
bRet = TRUE;
}
}
}
DelAllUndoObj();
DoUndo( bDoesUndo );
SetModified();
}
return bRet;
}
/*--------------------------------------------------------------------
Beschreibung:
--------------------------------------------------------------------*/
BOOL SwDoc::IsInsTblFormatNum() const
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
return SW_MOD()->IsInsTblFormatNum(get(IDocumentSettingAccess::HTML_MODE));
2000-09-18 23:08:29 +00:00
}
BOOL SwDoc::IsInsTblChangeNumFormat() const
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
return SW_MOD()->IsInsTblChangeNumFormat(get(IDocumentSettingAccess::HTML_MODE));
2000-09-18 23:08:29 +00:00
}
/*--------------------------------------------------------------------
Beschreibung:
--------------------------------------------------------------------*/
BOOL SwDoc::IsInsTblAlignNum() const
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
return SW_MOD()->IsInsTblAlignNum(get(IDocumentSettingAccess::HTML_MODE));
2000-09-18 23:08:29 +00:00
}
// setze das InsertDB als Tabelle Undo auf:
void SwDoc::AppendUndoForInsertFromDB( const SwPaM& rPam, BOOL bIsTable )
{
if( bIsTable )
{
const SwTableNode* pTblNd = rPam.GetPoint()->nNode.GetNode().FindTableNode();
if( pTblNd )
{
SwUndoCpyTbl* pUndo = new SwUndoCpyTbl;
pUndo->SetTableSttIdx( pTblNd->GetIndex() );
AppendUndo( pUndo );
}
}
else if( rPam.HasMark() )
{
SwUndoCpyDoc* pUndo = new SwUndoCpyDoc( rPam );
pUndo->SetInsertRange( rPam, FALSE );
AppendUndo( pUndo );
}
}
void SwDoc::ChgTOX(SwTOXBase & rTOX, const SwTOXBase & rNew)
{
if (DoesUndo())
{
DelAllUndoObj();
SwUndo * pUndo = new SwUndoTOXChange(&rTOX, rNew);
AppendUndo(pUndo);
}
rTOX = rNew;
if (rTOX.ISA(SwTOXBaseSection))
{
static_cast<SwTOXBaseSection &>(rTOX).Update();
static_cast<SwTOXBaseSection &>(rTOX).UpdatePageNum();
}
}
// #111827#
String SwDoc::GetPaMDescr(const SwPaM & rPam) const
{
String aResult;
bool bOK = false;
if (rPam.GetNode(TRUE) == rPam.GetNode(FALSE))
{
SwTxtNode * pTxtNode = rPam.GetNode(TRUE)->GetTxtNode();
if (0 != pTxtNode)
{
xub_StrLen nStart = rPam.Start()->nContent.GetIndex();
xub_StrLen nEnd = rPam.End()->nContent.GetIndex();
aResult += String(SW_RES(STR_START_QUOTE));
aResult += ShortenString(pTxtNode->GetTxt().
Copy(nStart, nEnd - nStart),
nUndoStringLength,
String(SW_RES(STR_LDOTS)));
aResult += String(SW_RES(STR_END_QUOTE));
bOK = true;
}
}
else if (0 != rPam.GetNode(TRUE))
{
if (0 != rPam.GetNode(FALSE))
aResult += String(SW_RES(STR_PARAGRAPHS));
bOK = true;
}
if (! bOK)
aResult += String("??", RTL_TEXTENCODING_ASCII_US);
return aResult;
}
// -> #111840#
SwField * SwDoc::GetField(const SwPosition & rPos)
{
SwField * pResult = NULL;
SwTxtFld * pAttr = rPos.nNode.GetNode().GetTxtNode()->
GetTxtFld(rPos.nContent);
if (pAttr)
pResult = (SwField *) pAttr->GetFld().GetFld();
return pResult;
}
SwTxtFld * SwDoc::GetTxtFld(const SwPosition & rPos)
{
SwTxtNode *pNode = rPos.nNode.GetNode().GetTxtNode();
if( pNode )
return pNode->GetTxtFld( rPos.nContent );
else
return 0;
}
// <- #111840#
bool SwDoc::ContainsHiddenChars() const
{
for( ULONG n = GetNodes().Count(); n; )
{
SwNode* pNd = GetNodes()[ --n ];
if ( ND_TEXTNODE == pNd->GetNodeType() &&
((SwTxtNode*)pNd)->HasHiddenCharAttribute( false ) )
return true;
}
2000-09-18 23:08:29 +00:00
return false;
}
2000-09-18 23:08:29 +00:00
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
SwUnoCrsr* SwDoc::CreateUnoCrsr( const SwPosition& rPos, BOOL bTblCrsr )
{
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
SwUnoCrsr* pNew;
if( bTblCrsr )
pNew = new SwUnoTableCrsr( rPos );
else
pNew = new SwUnoCrsr( rPos );
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00
pUnoCrsrTbl->Insert( pNew, pUnoCrsrTbl->Count() );
return pNew;
}
void SwDoc::ChkCondColls()
{
for (USHORT n = 0; n < pTxtFmtCollTbl->Count(); n++)
{
SwTxtFmtColl *pColl = (*pTxtFmtCollTbl)[n];
if (RES_CONDTXTFMTCOLL == pColl->Which())
{
SwClientIter aIter(*pColl);
SwClient * pClient = aIter.First(TYPE(SwTxtNode));
while (pClient)
{
SwTxtNode * pTxtNode = static_cast<SwTxtNode *>(pClient);
pTxtNode->ChkCondColl();
pClient = aIter.Next();
}
}
}
}
INTEGRATION: CWS writercorehandoff (1.37.88); FILE MERGED 2006/08/14 15:07:11 fme 1.37.88.31: #i50348# Resync 2006/07/31 06:24:00 fme 1.37.88.30: #i50348# Resync 2006/07/27 14:37:06 fme 1.37.88.29: RESYNC: (1.42-1.44); FILE MERGED 2006/04/05 15:07:22 tra 1.37.88.28: doc.cxx 2006/04/05 08:49:39 tra 1.37.88.27: #i50348# 2006/03/17 08:01:11 tra 1.37.88.26: RESYNC: (1.41-1.42); FILE MERGED 2006/01/19 08:49:58 fme 1.37.88.25: #i50348# General cleanup - removed unused header files, functions, members, declarations 2005/12/21 15:16:23 tra 1.37.88.24: #i50348# 2005/12/20 15:06:51 tra 1.37.88.23: RESYNC: (1.39-1.41); FILE MERGED 2005/11/10 21:32:46 tra 1.37.88.22: #i50348# 2005/10/25 12:27:33 tra 1.37.88.21: #i50348# 2005/10/25 08:25:02 tra 1.37.88.20: RESYNC: (1.38-1.39); FILE MERGED 2005/10/24 16:01:12 tra 1.37.88.19: #50348# 2005/09/29 13:04:20 tra 1.37.88.18: #i50348# 2005/09/28 13:59:50 tra 1.37.88.17: #i50348# 2005/09/21 13:42:06 tra 1.37.88.16: #i50348# 2005/09/13 13:15:11 tra 1.37.88.15: RESYNC: (1.37-1.38); FILE MERGED 2005/08/31 12:50:45 tra 1.37.88.14: #i50348# Introducing IDocumentRedlineAccess interface 2005/07/19 06:05:42 fme 1.37.88.13: #i50348# make SwDoc accessible via interfaces 2005/07/14 12:35:19 tra 1.37.88.12: #i50348#removed get/set methods for compatibility flags in exchange for IDocumentSettingAccess, removed useless dummy members 2005/07/13 13:24:16 fme 1.37.88.11: #i50348# Make SwDoc accessible via interfaces 2005/07/13 05:26:05 tra 1.37.88.10: #i50348#make SwDoc interface based 2005/07/12 11:21:25 tra 1.37.88.9: #i50348#make SwDoc interface based 2005/07/05 14:00:15 tra 1.37.88.8: #i50348#make SwDoc interface based 2005/07/05 08:12:37 tra 1.37.88.7: #i50348#make SwDoc interface based 2005/06/24 11:43:13 fme 1.37.88.6: #i50348# Make SwDoc accessible via interfaces 2005/06/24 11:25:08 tra 1.37.88.5: #i50348# Make SwDoc accessible via interfaces 2005/06/22 13:08:12 tra 1.37.88.4: #i50348#toward a interface based SwDoc 2005/06/22 06:39:46 tra 1.37.88.3: #i50348# make SwDoc accessible via interfaces 2005/06/07 14:13:20 fme 1.37.88.2: #i50348# General cleanup - removed unused header files, functions, members, declarations etc. 2005/06/06 09:27:00 tra 1.37.88.1: Unnecessary includes removed #i50348#
2006-08-14 14:54:56 +00:00