2010-10-14 08:30:41 +02:00
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2000-09-18 23:08:29 +00:00
/*************************************************************************
*
2008-04-10 15:16:51 +00:00
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER .
2000-09-18 23:08:29 +00:00
*
2010-02-12 15:01:35 +01:00
* Copyright 2000 , 2010 Oracle and / or its affiliates .
2000-09-18 23:08:29 +00:00
*
2008-04-10 15:16:51 +00:00
* OpenOffice . org - a multi - platform office productivity suite
2000-09-18 23:08:29 +00:00
*
2008-04-10 15:16:51 +00:00
* This file is part of OpenOffice . org .
2000-09-18 23:08:29 +00:00
*
2008-04-10 15:16:51 +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
*
2008-04-10 15:16:51 +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
*
2008-04-10 15:16:51 +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
*
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2006-09-16 20:56:58 +00:00
// MARKER(update_precomp.py): autogen include statement, do not remove
# include "precompiled_sw.hxx"
2000-09-18 23:08:29 +00:00
# include <swtypes.hxx>
# include <cmdid.h>
# include <doc.hxx>
# include <hints.hxx>
# include <fmtfld.hxx>
# include <txtfld.hxx>
# include <ndtxt.hxx>
# include <unomap.hxx>
# include <unoprnms.hxx>
2010-01-05 16:37:46 +01:00
# include <unotextrange.hxx>
2010-01-05 16:37:45 +01:00
# include <unotextcursor.hxx>
2000-09-18 23:08:29 +00:00
# include <unocoll.hxx>
2010-01-13 22:25:07 +01:00
# include <sfx2/linkmgr.hxx>
2000-09-18 23:08:29 +00:00
# include <docstat.hxx>
2005-10-05 12:22:06 +00:00
# include <editsh.hxx>
# include <viewsh.hxx>
2001-04-23 12:11:12 +00:00
# include <comphelper/types.hxx>
2004-08-02 13:19:37 +00:00
# include <comphelper/processfactory.hxx>
2011-06-01 22:40:08 +01:00
# include <comphelper/servicehelper.hxx>
2000-09-18 23:08:29 +00:00
# include <com/sun/star/util/Time.hpp>
# include <com/sun/star/util/DateTimeRange.hpp>
# include <com/sun/star/util/DateTime.hpp>
# include <com/sun/star/util/Date.hpp>
# include <com/sun/star/beans/XFastPropertySet.hpp>
# include <com/sun/star/beans/XPropertyStateChangeListener.hpp>
# include <com/sun/star/beans/PropertyAttribute.hpp>
# include <com/sun/star/beans/XPropertyContainer.hpp>
2006-08-14 15:54:19 +00:00
2001-03-08 09:15:55 +00:00
//undef to prevent error (from sfx2/docfile.cxx)
# undef SEQUENCE
2000-09-18 23:08:29 +00:00
# include <com/sun/star/text/SetVariableType.hpp>
# include <com/sun/star/text/WrapTextMode.hpp>
# include <com/sun/star/text/TextContentAnchorType.hpp>
2000-10-17 11:36:09 +00:00
# include <com/sun/star/text/PageNumberType.hpp>
2000-09-18 23:08:29 +00:00
# include <unofield.hxx>
# include <unocrsr.hxx>
2000-11-22 14:23:00 +00:00
# include <authfld.hxx>
2000-09-18 23:08:29 +00:00
# include <flddat.hxx>
# include <dbfld.hxx>
# include <usrfld.hxx>
# include <docufld.hxx>
# include <expfld.hxx>
# include <chpfld.hxx>
2003-06-30 14:52:29 +00:00
# include <flddropdown.hxx>
2000-09-18 23:08:29 +00:00
# include <poolfmt.hxx>
2000-11-07 08:58:56 +00:00
# include <poolfmt.hrc>
2000-09-18 23:08:29 +00:00
# include <pagedesc.hxx>
# include <docary.hxx>
# include <reffld.hxx>
# include <ddefld.hxx>
2005-10-05 12:22:06 +00:00
# include <SwStyleNameMapper.hxx>
# include <swunohelper.hxx>
# include <unofldmid.h>
# include <scriptinfo.hxx>
2003-04-01 14:21:47 +00:00
# include <tools/datetime.hxx>
2004-08-02 13:19:37 +00:00
# include <tools/urlobj.hxx>
# include <svx/dataaccessdescriptor.hxx>
2000-09-18 23:08:29 +00:00
# define _SVSTDARR_STRINGS
2009-10-16 00:05:16 +02:00
# include <svl/svstdarr.hxx>
2010-10-16 03:22:02 -05:00
# include <osl/mutex.hxx>
2000-09-18 23:08:29 +00:00
# include <vcl/svapp.hxx>
2008-02-19 12:49:44 +00:00
# include <textapi.hxx>
2010-01-08 18:32:51 +01:00
# include <editeng/outliner.hxx>
2008-02-19 12:49:44 +00:00
# include <docsh.hxx>
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
# include <fmtmeta.hxx> // MetaFieldManager
2010-12-17 09:02:23 +01:00
# include <switerator.hxx>
2011-11-01 22:38:51 +00:00
# include <rtl/strbuf.hxx>
2001-07-20 09:22:01 +00:00
2008-03-12 11:28:45 +00:00
using : : rtl : : OUString ;
2000-09-18 23:08:29 +00:00
using namespace : : com : : sun : : star ;
2007-09-27 08:36:28 +00:00
using namespace nsSwDocInfoSubType ;
2001-11-06 07:37:32 +00:00
# define COM_TEXT_FLDMASTER "com.sun.star.text.FieldMaster."
2000-09-18 23:08:29 +00:00
2007-01-30 14:22:46 +00:00
// case-corrected version of the first part for the service names (see #i67811)
# define COM_TEXT_FLDMASTER_CC "com.sun.star.text.fieldmaster."
2008-02-26 13:14:16 +00:00
// note: this thing is indexed as an array, so do not insert/remove entries!
2001-10-24 17:56:14 +00:00
static const sal_uInt16 aDocInfoSubTypeFromService [ ] =
{
2007-09-27 08:36:28 +00:00
DI_CHANGE | DI_SUB_AUTHOR , //PROPERTY_MAP_FLDTYP_DOCINFO_CHANGE_AUTHOR
DI_CHANGE | DI_SUB_DATE , //PROPERTY_MAP_FLDTYP_DOCINFO_CHANGE_DATE_TIME
DI_EDIT | DI_SUB_TIME , //PROPERTY_MAP_FLDTYP_DOCINFO_EDIT_TIME
2001-10-24 17:56:14 +00:00
DI_COMMENT , //PROPERTY_MAP_FLDTYP_DOCINFO_DESCRIPTION
2007-09-27 08:36:28 +00:00
DI_CREATE | DI_SUB_AUTHOR , //PROPERTY_MAP_FLDTYP_DOCINFO_CREATE_AUTHOR
DI_CREATE | DI_SUB_DATE , //PROPERTY_MAP_FLDTYP_DOCINFO_CREATE_DATE_TIME
2008-02-26 13:14:16 +00:00
0 , //DUMMY
0 , //DUMMY
0 , //DUMMY
0 , //DUMMY
2007-11-26 14:29:51 +00:00
DI_CUSTOM , //PROPERTY_MAP_FLDTYP_DOCINFO_CUSTOM
2007-09-27 08:36:28 +00:00
DI_PRINT | DI_SUB_AUTHOR , //PROPERTY_MAP_FLDTYP_DOCINFO_PRINT_AUTHOR
DI_PRINT | DI_SUB_DATE , //PROPERTY_MAP_FLDTYP_DOCINFO_PRINT_DATE_TIME
2001-10-24 17:56:14 +00:00
DI_KEYS , //PROPERTY_MAP_FLDTYP_DOCINFO_KEY_WORDS
DI_THEMA , //PROPERTY_MAP_FLDTYP_DOCINFO_SUBJECT
DI_TITEL , //PROPERTY_MAP_FLDTYP_DOCINFO_TITLE
DI_DOCNO //PROPERTY_MAP_FLDTYP_DOCINFO_REVISION
2000-09-18 23:08:29 +00:00
} ;
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
struct ServiceIdResId
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nResId ;
sal_uInt16 nServiceId ;
2000-09-18 23:08:29 +00:00
} ;
2010-10-13 16:04:59 +05:30
2001-10-24 17:56:14 +00:00
static const ServiceIdResId aServiceToRes [ ] =
2000-09-18 23:08:29 +00:00
{
{ RES_DATETIMEFLD , SW_SERVICE_FIELDTYPE_DATETIME } ,
{ RES_USERFLD , SW_SERVICE_FIELDTYPE_USER } ,
{ RES_SETEXPFLD , SW_SERVICE_FIELDTYPE_SET_EXP } ,
{ RES_GETEXPFLD , SW_SERVICE_FIELDTYPE_GET_EXP } ,
{ RES_FILENAMEFLD , SW_SERVICE_FIELDTYPE_FILE_NAME } ,
{ RES_PAGENUMBERFLD , SW_SERVICE_FIELDTYPE_PAGE_NUM } ,
{ RES_AUTHORFLD , SW_SERVICE_FIELDTYPE_AUTHOR } ,
{ RES_CHAPTERFLD , SW_SERVICE_FIELDTYPE_CHAPTER } ,
{ RES_GETREFFLD , SW_SERVICE_FIELDTYPE_GET_REFERENCE } ,
{ RES_HIDDENTXTFLD , SW_SERVICE_FIELDTYPE_CONDITIONED_TEXT } ,
{ RES_POSTITFLD , SW_SERVICE_FIELDTYPE_ANNOTATION } ,
{ RES_INPUTFLD , SW_SERVICE_FIELDTYPE_INPUT } ,
{ RES_MACROFLD , SW_SERVICE_FIELDTYPE_MACRO } ,
{ RES_DDEFLD , SW_SERVICE_FIELDTYPE_DDE } ,
{ RES_HIDDENPARAFLD , SW_SERVICE_FIELDTYPE_HIDDEN_PARA } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOC_INFO } ,
{ RES_TEMPLNAMEFLD , SW_SERVICE_FIELDTYPE_TEMPLATE_NAME } ,
{ RES_EXTUSERFLD , SW_SERVICE_FIELDTYPE_USER_EXT } ,
{ RES_REFPAGESETFLD , SW_SERVICE_FIELDTYPE_REF_PAGE_SET } ,
{ RES_REFPAGEGETFLD , SW_SERVICE_FIELDTYPE_REF_PAGE_GET } ,
{ RES_JUMPEDITFLD , SW_SERVICE_FIELDTYPE_JUMP_EDIT } ,
{ RES_SCRIPTFLD , SW_SERVICE_FIELDTYPE_SCRIPT } ,
{ RES_DBNEXTSETFLD , SW_SERVICE_FIELDTYPE_DATABASE_NEXT_SET } ,
{ RES_DBNUMSETFLD , SW_SERVICE_FIELDTYPE_DATABASE_NUM_SET } ,
{ RES_DBSETNUMBERFLD , SW_SERVICE_FIELDTYPE_DATABASE_SET_NUM } ,
{ RES_DBFLD , SW_SERVICE_FIELDTYPE_DATABASE } ,
{ RES_DBNAMEFLD , SW_SERVICE_FIELDTYPE_DATABASE_NAME } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_PAGE_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_WORD_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_CHARACTER_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_TABLE_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT } ,
{ RES_DOCSTATFLD , SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_DESCRIPTION } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_AUTHOR } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME } ,
2007-11-26 14:29:51 +00:00
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_CUSTOM } ,
2000-09-18 23:08:29 +00:00
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_AUTHOR } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_KEY_WORDS } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_SUBJECT } ,
{ RES_DOCINFOFLD , SW_SERVICE_FIELDTYPE_DOCINFO_TITLE } ,
{ RES_INPUTFLD , SW_SERVICE_FIELDTYPE_INPUT_USER } ,
{ RES_HIDDENTXTFLD , SW_SERVICE_FIELDTYPE_HIDDEN_TEXT } ,
2000-11-09 09:44:28 +00:00
{ RES_AUTHORITY , SW_SERVICE_FIELDTYPE_BIBLIOGRAPHY } ,
2001-01-29 14:29:30 +00:00
{ RES_COMBINED_CHARS , SW_SERVICE_FIELDTYPE_COMBINED_CHARACTERS } ,
2003-06-30 14:52:29 +00:00
{ RES_DROPDOWN , SW_SERVICE_FIELDTYPE_DROPDOWN } ,
2001-10-17 12:38:26 +00:00
{ RES_TABLEFLD , SW_SERVICE_FIELDTYPE_TABLE_FORMULA } ,
2000-09-18 23:08:29 +00:00
{ USHRT_MAX , USHRT_MAX }
} ;
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
sal_uInt16 lcl_ServiceIdToResId ( sal_uInt16 nServiceId )
{
2003-12-01 16:24:08 +00:00
const ServiceIdResId * pMap = aServiceToRes ;
while ( USHRT_MAX ! = pMap - > nServiceId & & nServiceId ! = pMap - > nServiceId )
+ + pMap ;
2010-11-25 17:08:45 +01:00
# if OSL_DEBUG_LEVEL > 1
2001-10-24 17:56:14 +00:00
if ( USHRT_MAX = = pMap - > nServiceId )
2011-03-01 19:09:12 +01:00
OSL_FAIL ( " service id not found " ) ;
2001-10-24 17:56:14 +00:00
# endif
return pMap - > nResId ;
}
2010-10-13 16:04:59 +05:30
2001-10-24 17:56:14 +00:00
sal_uInt16 lcl_GetServiceForField ( const SwField & rFld )
{
sal_uInt16 nWhich = rFld . Which ( ) , nSrvId = USHRT_MAX ;
//special handling for some fields
switch ( nWhich )
{
case RES_INPUTFLD :
if ( INP_USR = = ( rFld . GetSubType ( ) & 0x00ff ) )
nSrvId = SW_SERVICE_FIELDTYPE_INPUT_USER ;
break ;
case RES_DOCINFOFLD :
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nSubType = rFld . GetSubType ( ) ;
2001-10-24 17:56:14 +00:00
switch ( ( nSubType & 0xff ) )
{
case DI_CHANGE :
nSrvId = ( ( nSubType & 0x300 ) = = DI_SUB_AUTHOR )
? SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR
: SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME ;
break ;
case DI_CREATE :
nSrvId = ( ( nSubType & 0x300 ) = = DI_SUB_AUTHOR )
? SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_AUTHOR
: SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME ;
break ;
case DI_PRINT :
nSrvId = ( ( nSubType & 0x300 ) = = DI_SUB_AUTHOR )
? SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_AUTHOR
: SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME ;
break ;
case DI_EDIT : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME ; break ;
case DI_COMMENT : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_DESCRIPTION ; break ;
case DI_KEYS : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_KEY_WORDS ; break ;
case DI_THEMA : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_SUBJECT ; break ;
case DI_TITEL : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_TITLE ; break ;
case DI_DOCNO : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_REVISION ; break ;
2007-11-26 14:29:51 +00:00
case DI_CUSTOM : nSrvId = SW_SERVICE_FIELDTYPE_DOCINFO_CUSTOM ; break ;
2001-10-24 17:56:14 +00:00
}
}
break ;
case RES_HIDDENTXTFLD :
nSrvId = TYP_CONDTXTFLD = = rFld . GetSubType ( )
? SW_SERVICE_FIELDTYPE_CONDITIONED_TEXT
: SW_SERVICE_FIELDTYPE_HIDDEN_TEXT ;
break ;
case RES_DOCSTATFLD :
{
switch ( rFld . GetSubType ( ) )
{
case DS_PAGE : nSrvId = SW_SERVICE_FIELDTYPE_PAGE_COUNT ; break ;
case DS_PARA : nSrvId = SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT ; break ;
case DS_WORD : nSrvId = SW_SERVICE_FIELDTYPE_WORD_COUNT ; break ;
case DS_CHAR : nSrvId = SW_SERVICE_FIELDTYPE_CHARACTER_COUNT ; break ;
case DS_TBL : nSrvId = SW_SERVICE_FIELDTYPE_TABLE_COUNT ; break ;
case DS_GRF : nSrvId = SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT ; break ;
case DS_OLE : nSrvId = SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT ; break ;
}
}
break ;
}
if ( USHRT_MAX = = nSrvId )
{
for ( const ServiceIdResId * pMap = aServiceToRes ;
USHRT_MAX ! = pMap - > nResId ; + + pMap )
if ( nWhich = = pMap - > nResId )
{
nSrvId = pMap - > nServiceId ;
break ;
}
}
2010-11-25 17:08:45 +01:00
# if OSL_DEBUG_LEVEL > 1
2001-10-24 17:56:14 +00:00
if ( USHRT_MAX = = nSrvId )
2011-03-01 19:09:12 +01:00
OSL_FAIL ( " resid not found " ) ;
2001-10-24 17:56:14 +00:00
# endif
return nSrvId ;
}
2011-01-17 15:06:54 +01:00
sal_uInt16 lcl_GetPropMapIdForFieldType ( sal_uInt16 nWhich )
2001-10-24 17:56:14 +00:00
{
sal_uInt16 nId ;
switch ( nWhich )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
case RES_USERFLD : nId = PROPERTY_MAP_FLDMSTR_USER ; break ;
case RES_DBFLD : nId = PROPERTY_MAP_FLDMSTR_DATABASE ; break ;
case RES_SETEXPFLD : nId = PROPERTY_MAP_FLDMSTR_SET_EXP ; break ;
case RES_DDEFLD : nId = PROPERTY_MAP_FLDMSTR_DDE ; break ;
case RES_AUTHORITY : nId = PROPERTY_MAP_FLDMSTR_BIBLIOGRAPHY ; break ;
default : nId = PROPERTY_MAP_FLDMSTR_DUMMY0 ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
return nId ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
2011-01-17 15:06:54 +01:00
sal_uInt16 GetFieldTypeMId ( const OUString & rProperty , const SwFieldType & rTyp )
2001-10-24 17:56:14 +00:00
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nId = lcl_GetPropMapIdForFieldType ( rTyp . Which ( ) ) ;
2009-06-03 11:26:39 +00:00
const SfxItemPropertySet * pSet = aSwMapProvider . GetPropertySet ( nId ) ;
if ( ! pSet )
2001-10-24 17:56:14 +00:00
nId = USHRT_MAX ;
else
2002-07-24 06:15:11 +00:00
{
2009-06-03 11:26:39 +00:00
const SfxItemPropertySimpleEntry * pEntry = pSet - > getPropertyMap ( ) - > getByName ( rProperty ) ;
nId = pEntry ? pEntry - > nWID : USHRT_MAX ;
2002-07-24 06:15:11 +00:00
}
2009-06-03 11:26:39 +00:00
return nId ;
2001-10-24 17:56:14 +00:00
}
2011-01-17 15:06:54 +01:00
sal_uInt16 lcl_GetPropertyMapOfService ( sal_uInt16 nServiceId )
2000-09-18 23:08:29 +00:00
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nRet ;
2001-10-24 17:56:14 +00:00
switch ( nServiceId )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
case SW_SERVICE_FIELDTYPE_DATETIME : nRet = PROPERTY_MAP_FLDTYP_DATETIME ; break ;
case SW_SERVICE_FIELDTYPE_USER : nRet = PROPERTY_MAP_FLDTYP_USER ; break ;
case SW_SERVICE_FIELDTYPE_SET_EXP : nRet = PROPERTY_MAP_FLDTYP_SET_EXP ; break ;
case SW_SERVICE_FIELDTYPE_GET_EXP : nRet = PROPERTY_MAP_FLDTYP_GET_EXP ; break ;
case SW_SERVICE_FIELDTYPE_FILE_NAME : nRet = PROPERTY_MAP_FLDTYP_FILE_NAME ; break ;
case SW_SERVICE_FIELDTYPE_PAGE_NUM : nRet = PROPERTY_MAP_FLDTYP_PAGE_NUM ; break ;
case SW_SERVICE_FIELDTYPE_AUTHOR : nRet = PROPERTY_MAP_FLDTYP_AUTHOR ; break ;
case SW_SERVICE_FIELDTYPE_CHAPTER : nRet = PROPERTY_MAP_FLDTYP_CHAPTER ; break ;
case SW_SERVICE_FIELDTYPE_GET_REFERENCE : nRet = PROPERTY_MAP_FLDTYP_GET_REFERENCE ; break ;
case SW_SERVICE_FIELDTYPE_CONDITIONED_TEXT : nRet = PROPERTY_MAP_FLDTYP_CONDITIONED_TEXT ; break ;
case SW_SERVICE_FIELDTYPE_ANNOTATION : nRet = PROPERTY_MAP_FLDTYP_ANNOTATION ; break ;
case SW_SERVICE_FIELDTYPE_INPUT_USER :
case SW_SERVICE_FIELDTYPE_INPUT : nRet = PROPERTY_MAP_FLDTYP_INPUT ; break ;
case SW_SERVICE_FIELDTYPE_MACRO : nRet = PROPERTY_MAP_FLDTYP_MACRO ; break ;
case SW_SERVICE_FIELDTYPE_DDE : nRet = PROPERTY_MAP_FLDTYP_DDE ; break ;
case SW_SERVICE_FIELDTYPE_HIDDEN_PARA : nRet = PROPERTY_MAP_FLDTYP_HIDDEN_PARA ; break ;
case SW_SERVICE_FIELDTYPE_DOC_INFO : nRet = PROPERTY_MAP_FLDTYP_DOC_INFO ; break ;
case SW_SERVICE_FIELDTYPE_TEMPLATE_NAME : nRet = PROPERTY_MAP_FLDTYP_TEMPLATE_NAME ; break ;
case SW_SERVICE_FIELDTYPE_USER_EXT : nRet = PROPERTY_MAP_FLDTYP_USER_EXT ; break ;
case SW_SERVICE_FIELDTYPE_REF_PAGE_SET : nRet = PROPERTY_MAP_FLDTYP_REF_PAGE_SET ; break ;
case SW_SERVICE_FIELDTYPE_REF_PAGE_GET : nRet = PROPERTY_MAP_FLDTYP_REF_PAGE_GET ; break ;
case SW_SERVICE_FIELDTYPE_JUMP_EDIT : nRet = PROPERTY_MAP_FLDTYP_JUMP_EDIT ; break ;
case SW_SERVICE_FIELDTYPE_SCRIPT : nRet = PROPERTY_MAP_FLDTYP_SCRIPT ; break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NEXT_SET : nRet = PROPERTY_MAP_FLDTYP_DATABASE_NEXT_SET ; break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NUM_SET : nRet = PROPERTY_MAP_FLDTYP_DATABASE_NUM_SET ; break ;
case SW_SERVICE_FIELDTYPE_DATABASE_SET_NUM : nRet = PROPERTY_MAP_FLDTYP_DATABASE_SET_NUM ; break ;
case SW_SERVICE_FIELDTYPE_DATABASE : nRet = PROPERTY_MAP_FLDTYP_DATABASE ; break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NAME : nRet = PROPERTY_MAP_FLDTYP_DATABASE_NAME ; break ;
case SW_SERVICE_FIELDTYPE_TABLE_FORMULA : nRet = PROPERTY_MAP_FLDTYP_TABLE_FORMULA ; break ;
case SW_SERVICE_FIELDTYPE_PAGE_COUNT :
case SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT :
case SW_SERVICE_FIELDTYPE_WORD_COUNT :
case SW_SERVICE_FIELDTYPE_CHARACTER_COUNT :
case SW_SERVICE_FIELDTYPE_TABLE_COUNT :
case SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT :
case SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT : nRet = PROPERTY_MAP_FLDTYP_DOCSTAT ; break ;
case SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR :
case SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_AUTHOR :
case SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_AUTHOR : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_AUTHOR ; break ;
case SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME :
case SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME :
case SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_DATE_TIME ; break ;
case SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_EDIT_TIME ; break ;
2007-11-26 14:29:51 +00:00
case SW_SERVICE_FIELDTYPE_DOCINFO_CUSTOM : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_CUSTOM ; break ;
2001-10-24 17:56:14 +00:00
case SW_SERVICE_FIELDTYPE_DOCINFO_DESCRIPTION :
case SW_SERVICE_FIELDTYPE_DOCINFO_KEY_WORDS :
case SW_SERVICE_FIELDTYPE_DOCINFO_SUBJECT :
case SW_SERVICE_FIELDTYPE_DOCINFO_TITLE : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_MISC ; break ;
case SW_SERVICE_FIELDTYPE_DOCINFO_REVISION : nRet = PROPERTY_MAP_FLDTYP_DOCINFO_REVISION ; break ;
case SW_SERVICE_FIELDTYPE_BIBLIOGRAPHY : nRet = PROPERTY_MAP_FLDTYP_BIBLIOGRAPHY ; break ;
case SW_SERVICE_FIELDTYPE_DUMMY_0 :
case SW_SERVICE_FIELDTYPE_COMBINED_CHARACTERS : nRet = PROPERTY_MAP_FLDTYP_COMBINED_CHARACTERS ; break ;
2003-06-30 14:52:29 +00:00
case SW_SERVICE_FIELDTYPE_DROPDOWN : nRet = PROPERTY_MAP_FLDTYP_DROPDOWN ; break ;
2001-10-24 17:56:14 +00:00
case SW_SERVICE_FIELDTYPE_DUMMY_4 :
case SW_SERVICE_FIELDTYPE_DUMMY_5 :
case SW_SERVICE_FIELDTYPE_DUMMY_6 :
case SW_SERVICE_FIELDTYPE_DUMMY_7 :
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
nRet = PROPERTY_MAP_FLDTYP_DUMMY_0 ; break ;
2001-10-24 17:56:14 +00:00
case SW_SERVICE_FIELDMASTER_USER : nRet = PROPERTY_MAP_FLDMSTR_USER ; break ;
case SW_SERVICE_FIELDMASTER_DDE : nRet = PROPERTY_MAP_FLDMSTR_DDE ; break ;
case SW_SERVICE_FIELDMASTER_SET_EXP : nRet = PROPERTY_MAP_FLDMSTR_SET_EXP ; break ;
case SW_SERVICE_FIELDMASTER_DATABASE : nRet = PROPERTY_MAP_FLDMSTR_DATABASE ; break ;
case SW_SERVICE_FIELDMASTER_BIBLIOGRAPHY : nRet = PROPERTY_MAP_FLDMSTR_BIBLIOGRAPHY ; break ;
case SW_SERVICE_FIELDMASTER_DUMMY2 :
case SW_SERVICE_FIELDMASTER_DUMMY3 :
case SW_SERVICE_FIELDMASTER_DUMMY4 :
case SW_SERVICE_FIELDMASTER_DUMMY5 : nRet = PROPERTY_MAP_FLDMSTR_DUMMY0 ; break ;
case SW_SERVICE_FIELDTYPE_HIDDEN_TEXT : nRet = PROPERTY_MAP_FLDTYP_HIDDEN_TEXT ; break ;
default :
2011-03-01 19:09:12 +01:00
OSL_FAIL ( " wrong service id " ) ;
2001-10-24 17:56:14 +00:00
nRet = USHRT_MAX ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
return nRet ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
2000-09-18 23:08:29 +00:00
/******************************************************************
* SwXFieldMaster
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
TYPEINIT1 ( SwXFieldMaster , SwClient ) ;
2011-06-01 22:40:08 +01:00
namespace
{
class theSwXFieldMasterUnoTunnelId : public rtl : : Static < UnoTunnelIdInit , theSwXFieldMasterUnoTunnelId > { } ;
}
2007-06-05 16:32:51 +00:00
const uno : : Sequence < sal_Int8 > & SwXFieldMaster : : getUnoTunnelId ( )
2000-09-18 23:08:29 +00:00
{
2011-06-01 22:40:08 +01:00
return theSwXFieldMasterUnoTunnelId : : get ( ) . getSeq ( ) ;
2000-09-18 23:08:29 +00:00
}
sal_Int64 SAL_CALL SwXFieldMaster : : getSomething ( const uno : : Sequence < sal_Int8 > & rId )
throw ( uno : : RuntimeException )
{
if ( rId . getLength ( ) = = 16
& & 0 = = rtl_compareMemory ( getUnoTunnelId ( ) . getConstArray ( ) ,
rId . getConstArray ( ) , 16 ) )
{
2007-09-27 08:36:28 +00:00
return sal : : static_int_cast < sal_Int64 > ( reinterpret_cast < sal_IntPtr > ( this ) ) ;
2000-09-18 23:08:29 +00:00
}
return 0 ;
}
2007-06-05 16:32:51 +00:00
OUString SwXFieldMaster : : getImplementationName ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
return C2U ( " SwXFieldMaster " ) ;
}
2011-01-03 20:35:28 +00:00
sal_Bool SwXFieldMaster : : supportsService ( const OUString & rServiceName ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2001-04-20 10:05:28 +00:00
sal_Bool bRet = sal_False ;
2001-10-24 17:56:14 +00:00
if ( rServiceName . equalsAsciiL (
RTL_CONSTASCII_STRINGPARAM ( " com.sun.star.text.TextFieldMaster " ) ) )
2001-04-20 10:05:28 +00:00
bRet = sal_True ;
2001-06-18 13:31:32 +00:00
else
{
2001-10-17 06:55:17 +00:00
const sal_Char * pEntry ;
switch ( nResTypeId )
2001-06-18 13:31:32 +00:00
{
2001-10-17 06:55:17 +00:00
case RES_USERFLD : pEntry = " User " ; break ;
case RES_DBFLD : pEntry = " Database " ; break ;
case RES_SETEXPFLD : pEntry = " SetExpression " ; break ;
case RES_DDEFLD : pEntry = " DDE " ; break ;
case RES_AUTHORITY : pEntry = " Bibliography " ; break ;
default : pEntry = 0 ;
}
if ( pEntry )
{
2011-11-01 22:38:51 +00:00
rtl : : OString aTmp = rtl : : OStringBuffer ( RTL_CONSTASCII_STRINGPARAM (
" com.sun.star.text.fieldmaster. " ) ) . append ( pEntry ) .
makeStringAndClear ( ) ;
bRet = rServiceName . equalsAsciiL ( aTmp . getStr ( ) , aTmp . getLength ( ) ) ;
2001-06-18 13:31:32 +00:00
}
}
2001-04-20 10:05:28 +00:00
return bRet ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > SwXFieldMaster : : getSupportedServiceNames ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > aRet ( 2 ) ;
2000-09-18 23:08:29 +00:00
OUString * pArray = aRet . getArray ( ) ;
2000-10-10 07:49:24 +00:00
pArray [ 0 ] = C2U ( " com.sun.star.text.TextFieldMaster " ) ;
2001-10-17 06:55:17 +00:00
const sal_Char * pEntry1 ;
switch ( nResTypeId )
{
case RES_USERFLD : pEntry1 = " User " ; break ;
case RES_DBFLD : pEntry1 = " Database " ; break ;
case RES_SETEXPFLD : pEntry1 = " SetExpression " ; break ;
case RES_DDEFLD : pEntry1 = " DDE " ; break ;
case RES_AUTHORITY : pEntry1 = " Bibliography " ; break ;
default : pEntry1 = 0 ;
}
if ( pEntry1 )
{
String s ;
s . AppendAscii ( " com.sun.star.text.fieldmaster. " ) . AppendAscii ( pEntry1 ) ;
pArray [ 1 ] = s ;
}
2000-09-18 23:08:29 +00:00
return aRet ;
}
SwXFieldMaster : : SwXFieldMaster ( SwDoc * pDoc , sal_uInt16 nResId ) :
aLstnrCntnr ( ( XPropertySet * ) this ) ,
nResTypeId ( nResId ) ,
2007-09-27 08:36:28 +00:00
m_pDoc ( pDoc ) ,
2000-09-18 23:08:29 +00:00
m_bIsDescriptor ( sal_True ) ,
fParam1 ( 0. ) ,
2001-02-21 11:45:25 +00:00
nParam1 ( - 1 ) ,
2011-01-17 15:06:54 +01:00
bParam1 ( sal_False ) ,
2001-02-21 11:45:25 +00:00
nParam2 ( 0 )
2000-09-18 23:08:29 +00:00
{
2001-03-30 13:15:27 +00:00
pDoc - > GetPageDescFromPool ( RES_POOLPAGE_STANDARD ) - > Add ( this ) ;
2000-09-18 23:08:29 +00:00
}
SwXFieldMaster : : SwXFieldMaster ( SwFieldType & rType , SwDoc * pDoc ) :
SwClient ( & rType ) ,
aLstnrCntnr ( ( XPropertySet * ) this ) ,
nResTypeId ( rType . Which ( ) ) ,
2007-09-27 08:36:28 +00:00
m_pDoc ( pDoc ) ,
2000-09-18 23:08:29 +00:00
m_bIsDescriptor ( sal_False ) ,
fParam1 ( 0. ) ,
nParam1 ( - 1 ) ,
2011-01-17 15:06:54 +01:00
bParam1 ( sal_False )
2000-09-18 23:08:29 +00:00
{
}
SwXFieldMaster : : ~ SwXFieldMaster ( )
{
}
2007-06-05 16:32:51 +00:00
uno : : Reference < beans : : XPropertySetInfo > SwXFieldMaster : : getPropertySetInfo ( void )
2000-09-18 23:08:29 +00:00
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2009-06-03 11:26:39 +00:00
uno : : Reference < beans : : XPropertySetInfo > aRef =
aSwMapProvider . GetPropertySet (
lcl_GetPropMapIdForFieldType ( nResTypeId ) ) - > getPropertySetInfo ( ) ;
2000-09-18 23:08:29 +00:00
return aRef ;
}
2001-10-24 17:56:14 +00:00
void SwXFieldMaster : : setPropertyValue ( const OUString & rPropertyName ,
const uno : : Any & rValue )
2007-06-05 16:32:51 +00:00
throw ( beans : : UnknownPropertyException , beans : : PropertyVetoException ,
lang : : IllegalArgumentException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2001-03-30 13:15:27 +00:00
SwFieldType * pType = GetFldType ( sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( pType )
{
sal_Bool bSetValue = sal_True ;
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_SUB_TYPE ) ) )
2000-09-18 23:08:29 +00:00
{
2001-07-20 09:22:01 +00:00
const SvStringsDtor & rExtraArr = SwStyleNameMapper : : GetExtraUINameArray ( ) ;
2000-09-18 23:08:29 +00:00
String sTypeName = pType - > GetName ( ) ;
static sal_uInt16 nIds [ ] =
{
RES_POOLCOLL_LABEL_DRAWING - RES_POOLCOLL_EXTRA_BEGIN ,
RES_POOLCOLL_LABEL_ABB - RES_POOLCOLL_EXTRA_BEGIN ,
RES_POOLCOLL_LABEL_TABLE - RES_POOLCOLL_EXTRA_BEGIN ,
RES_POOLCOLL_LABEL_FRAME - RES_POOLCOLL_EXTRA_BEGIN ,
0
} ;
for ( const sal_uInt16 * pIds = nIds ; * pIds ; + + pIds )
{
if ( sTypeName = = * rExtraArr [ * pIds ] )
{
bSetValue = sal_False ;
break ;
}
}
}
2001-10-24 17:56:14 +00:00
if ( bSetValue )
{
2004-08-02 13:19:37 +00:00
// nothing special to be done here for the properties
2005-03-08 10:16:17 +00:00
// UNO_NAME_DATA_BASE_NAME and UNO_NAME_DATA_BASE_URL.
2004-08-02 13:19:37 +00:00
// We just call PutValue (empty string is allowed).
// Thus the last property set will be used as Data Source.
2011-01-17 15:06:54 +01:00
sal_uInt16 nMId = GetFieldTypeMId ( rPropertyName , * pType ) ;
2009-06-03 11:26:39 +00:00
if ( USHRT_MAX ! = nMId )
2001-10-24 17:56:14 +00:00
pType - > PutValue ( rValue , nMId ) ;
2002-07-24 06:15:11 +00:00
else
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2001-10-24 17:56:14 +00:00
}
2000-09-18 23:08:29 +00:00
}
else if ( ! pType & & m_pDoc & &
2001-06-13 10:54:27 +00:00
( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_NAME ) ) ) )
2000-09-18 23:08:29 +00:00
{
OUString uTmp ;
2001-10-24 17:56:14 +00:00
rValue > > = uTmp ;
2000-09-18 23:08:29 +00:00
String sTypeName ( uTmp ) ;
2007-09-27 08:36:28 +00:00
SwFieldType * pType2 = m_pDoc - > GetFldType ( nResTypeId , sTypeName , sal_False ) ;
2002-09-10 12:52:20 +00:00
String sTable ( SW_RES ( STR_POOLCOLL_LABEL_TABLE ) ) ;
String sDrawing ( SW_RES ( STR_POOLCOLL_LABEL_DRAWING ) ) ;
String sFrame ( SW_RES ( STR_POOLCOLL_LABEL_FRAME ) ) ;
String sIllustration ( SW_RES ( STR_POOLCOLL_LABEL_ABB ) ) ;
2007-09-27 08:36:28 +00:00
if ( pType2 | |
2002-09-10 12:52:20 +00:00
( RES_SETEXPFLD = = nResTypeId & &
( sTypeName = = sTable | | sTypeName = = sDrawing | |
sTypeName = = sFrame | | sTypeName = = sIllustration ) ) )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2000-09-18 23:08:29 +00:00
}
else
{
switch ( nResTypeId )
{
case RES_USERFLD :
{
SwUserFieldType aType ( m_pDoc , sTypeName ) ;
2007-09-27 08:36:28 +00:00
pType2 = m_pDoc - > InsertFldType ( aType ) ;
( ( SwUserFieldType * ) pType2 ) - > SetContent ( sParam1 ) ;
( ( SwUserFieldType * ) pType2 ) - > SetValue ( fParam1 ) ;
( ( SwUserFieldType * ) pType2 ) - > SetType ( bParam1 ? nsSwGetSetExpType : : GSE_EXPR : nsSwGetSetExpType : : GSE_STRING ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case RES_DDEFLD :
{
SwDDEFieldType aType ( sTypeName , sParam1 ,
2011-01-17 15:06:54 +01:00
sal : : static_int_cast < sal_uInt16 > ( bParam1 ? sfx2 : : LINKUPDATE_ALWAYS : sfx2 : : LINKUPDATE_ONCALL ) ) ;
2007-09-27 08:36:28 +00:00
pType2 = m_pDoc - > InsertFldType ( aType ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case RES_SETEXPFLD :
{
SwSetExpFieldType aType ( m_pDoc , sTypeName ) ;
if ( sParam1 . Len ( ) )
aType . SetDelimiter ( sParam1 . GetChar ( 0 ) ) ;
if ( nParam1 > - 1 & & nParam1 < MAXLEVEL )
aType . SetOutlineLvl ( nParam1 ) ;
2007-09-27 08:36:28 +00:00
pType2 = m_pDoc - > InsertFldType ( aType ) ;
2000-09-18 23:08:29 +00:00
}
break ;
2007-07-18 11:56:44 +00:00
case RES_DBFLD :
{
: : GetString ( rValue , sParam3 ) ;
pType = GetFldType ( ) ;
}
break ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
if ( pType2 )
2001-04-17 14:57:57 +00:00
{
2007-09-27 08:36:28 +00:00
pType2 - > Add ( this ) ;
2001-04-17 14:57:57 +00:00
m_bIsDescriptor = sal_False ;
}
2000-09-18 23:08:29 +00:00
else
throw uno : : RuntimeException ( ) ;
}
2011-05-08 22:14:45 +02:00
OSL_ENSURE ( pType2 , " kein FieldType gefunden! " ) ;
2000-09-18 23:08:29 +00:00
}
else
{
2001-10-24 17:56:14 +00:00
switch ( nResTypeId )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
case RES_USERFLD :
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_CONTENT ) ) )
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sParam1 ) ;
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_VALUE ) ) )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
if ( rValue . getValueType ( ) ! = : : getCppuType ( static_cast < const double * > ( 0 ) ) )
throw lang : : IllegalArgumentException ( ) ;
2001-10-24 17:56:14 +00:00
fParam1 = * ( double * ) rValue . getValue ( ) ;
2000-09-18 23:08:29 +00:00
}
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_IS_EXPRESSION ) ) )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
if ( rValue . getValueType ( ) ! = : : getBooleanCppuType ( ) )
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2001-10-24 17:56:14 +00:00
bParam1 = * ( sal_Bool * ) rValue . getValue ( ) ;
2000-09-18 23:08:29 +00:00
}
2007-03-09 12:15:38 +00:00
2001-10-24 17:56:14 +00:00
break ;
case RES_DBFLD :
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) )
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sParam1 ) ;
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_TABLE_NAME ) ) )
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sParam2 ) ;
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COLUMN_NAME ) ) )
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sParam3 ) ;
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COMMAND_TYPE ) ) )
2001-10-24 17:56:14 +00:00
rValue > > = nParam2 ;
2004-08-02 13:19:37 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) )
: : GetString ( rValue , sParam5 ) ;
2001-03-30 13:15:27 +00:00
2005-03-08 10:16:17 +00:00
if ( ( sParam1 . Len ( ) | | sParam5 . Len ( ) )
2004-08-02 13:19:37 +00:00
& & sParam2 . Len ( ) & & sParam3 . Len ( ) )
2001-03-30 13:15:27 +00:00
GetFldType ( ) ;
2001-10-24 17:56:14 +00:00
break ;
case RES_SETEXPFLD :
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_NUMBERING_SEPARATOR ) ) )
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sParam1 ) ;
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_CHAPTER_NUMBERING_LEVEL ) ) )
2001-10-24 17:56:14 +00:00
rValue > > = nParam1 ;
break ;
case RES_DDEFLD :
2000-09-18 23:08:29 +00:00
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nPart = rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_TYPE ) ) ? 0 :
2001-10-24 17:56:14 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_FILE ) ) ? 1 :
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_ELEMENT ) ) ? 2 :
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_IS_AUTOMATIC_UPDATE ) ) ? 3 : USHRT_MAX ;
if ( nPart < 3 )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
String sTmp ;
if ( ! sParam1 . Len ( ) )
2004-10-04 18:13:25 +00:00
( sParam1 = sfx2 : : cTokenSeperator )
+ = sfx2 : : cTokenSeperator ;
2001-10-24 17:56:14 +00:00
2004-10-04 18:13:25 +00:00
sParam1 . SetToken ( nPart , sfx2 : : cTokenSeperator ,
2001-10-24 17:56:14 +00:00
: : GetString ( rValue , sTmp ) ) ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
else if ( 3 = = nPart )
bParam1 = * ( sal_Bool * ) rValue . getValue ( ) ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
break ;
default :
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2001-10-24 17:56:14 +00:00
}
2000-09-18 23:08:29 +00:00
}
}
2001-03-30 13:15:27 +00:00
SwFieldType * SwXFieldMaster : : GetFldType ( sal_Bool bDontCreate ) const
{
if ( ! bDontCreate & & RES_DBFLD = = nResTypeId & & m_bIsDescriptor & & m_pDoc )
{
SwDBData aData ;
2004-08-02 13:19:37 +00:00
// set DataSource
svx : : ODataAccessDescriptor aAcc ;
if ( sParam1 . Len ( ) > 0 )
aAcc [ svx : : daDataSource ] < < = OUString ( sParam1 ) ; // DataBaseName
else if ( sParam5 . Len ( ) > 0 )
aAcc [ svx : : daDatabaseLocation ] < < = OUString ( sParam5 ) ; // DataBaseURL
2005-03-08 10:16:17 +00:00
aData . sDataSource = aAcc . getDataSource ( ) ;
2004-08-02 13:19:37 +00:00
2001-03-30 13:15:27 +00:00
aData . sCommand = sParam2 ;
aData . nCommandType = nParam2 ;
SwDBFieldType aType ( m_pDoc , sParam3 , aData ) ;
SwFieldType * pType = m_pDoc - > InsertFldType ( aType ) ;
SwXFieldMaster * pThis = ( ( SwXFieldMaster * ) this ) ;
pType - > Add ( pThis ) ;
pThis - > m_bIsDescriptor = sal_False ;
}
if ( m_bIsDescriptor )
return 0 ;
else
return ( SwFieldType * ) GetRegisteredIn ( ) ;
}
2000-09-18 23:08:29 +00:00
typedef SwFmtFld * SwFmtFldPtr ;
SV_DECL_PTRARR ( SwDependentFields , SwFmtFldPtr , 5 , 5 )
SV_IMPL_PTRARR ( SwDependentFields , SwFmtFldPtr )
uno : : Any SwXFieldMaster : : getPropertyValue ( const OUString & rPropertyName )
2007-06-05 16:32:51 +00:00
throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
uno : : Any aRet ;
2001-03-30 13:15:27 +00:00
SwFieldType * pType = GetFldType ( sal_True ) ;
2001-07-12 10:05:32 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_INSTANCE_NAME ) ) )
{
String sName ;
if ( pType )
SwXTextFieldMasters : : getInstanceName ( * pType , sName ) ;
2001-10-24 17:56:14 +00:00
aRet < < = OUString ( sName ) ;
2001-07-12 10:05:32 +00:00
}
else if ( pType )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_NAME ) ) )
2000-11-07 08:58:56 +00:00
{
2001-10-24 17:56:14 +00:00
aRet < < = SwXFieldMaster : : GetProgrammaticName ( * pType , * GetDoc ( ) ) ;
2000-11-07 08:58:56 +00:00
}
2001-06-13 10:54:27 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DEPENDENT_TEXT_FIELDS ) ) )
2000-09-18 23:08:29 +00:00
{
//fill all text fields into a sequence
SwDependentFields aFldArr ;
2010-12-17 09:02:23 +01:00
SwIterator < SwFmtFld , SwFieldType > aIter ( * pType ) ;
SwFmtFldPtr pFld = aIter . First ( ) ;
2000-09-18 23:08:29 +00:00
while ( pFld )
{
if ( pFld - > IsFldInDoc ( ) )
aFldArr . Insert ( pFld , aFldArr . Count ( ) ) ;
2010-12-17 09:02:23 +01:00
pFld = aIter . Next ( ) ;
2000-09-18 23:08:29 +00:00
}
2010-12-17 09:02:23 +01:00
2007-06-05 16:32:51 +00:00
uno : : Sequence < uno : : Reference < text : : XDependentTextField > > aRetSeq ( aFldArr . Count ( ) ) ;
uno : : Reference < text : : XDependentTextField > * pRetSeq = aRetSeq . getArray ( ) ;
2011-01-17 15:06:54 +01:00
for ( sal_uInt16 i = 0 ; i < aFldArr . Count ( ) ; i + + )
2000-09-18 23:08:29 +00:00
{
pFld = aFldArr . GetObject ( i ) ;
2010-12-17 09:02:23 +01:00
SwXTextField * pInsert = SwXTextField : : CreateSwXTextField ( * GetDoc ( ) , * pFld ) ;
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
2007-06-05 16:32:51 +00:00
pRetSeq [ i ] = uno : : Reference < text : : XDependentTextField > ( pInsert ) ;
2000-09-18 23:08:29 +00:00
}
aRet < < = aRetSeq ;
}
else if ( pType )
2001-10-24 17:56:14 +00:00
{
//TODO: Properties fuer die uebrigen Feldtypen einbauen
2011-01-17 15:06:54 +01:00
sal_uInt16 nMId = GetFieldTypeMId ( rPropertyName , * pType ) ;
2009-06-03 11:26:39 +00:00
if ( USHRT_MAX ! = nMId )
2004-08-02 13:19:37 +00:00
{
2001-10-24 17:56:14 +00:00
pType - > QueryValue ( aRet , nMId ) ;
2004-08-02 13:19:37 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) | |
2005-03-08 10:16:17 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) )
2004-08-02 13:19:37 +00:00
{
OUString aDataSource ;
aRet > > = aDataSource ;
aRet < < = OUString ( ) ;
OUString * pStr = 0 ; // only one of this properties will return
// a non-empty string.
2005-03-08 10:16:17 +00:00
INetURLObject aObj ;
aObj . SetURL ( aDataSource ) ;
2011-01-17 15:06:54 +01:00
sal_Bool bIsURL = aObj . GetProtocol ( ) ! = INET_PROT_NOT_VALID ;
2005-03-08 10:16:17 +00:00
if ( bIsURL & & rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) )
pStr = & aDataSource ; // DataBaseURL
else if ( ! bIsURL & & rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) )
pStr = & aDataSource ; // DataBaseName
2004-08-02 13:19:37 +00:00
if ( pStr )
aRet < < = * pStr ;
}
}
2002-07-24 06:15:11 +00:00
else
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2000-09-18 23:08:29 +00:00
}
2001-02-21 11:45:25 +00:00
else
{
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COMMAND_TYPE ) ) )
2001-02-21 11:45:25 +00:00
aRet < < = nParam2 ;
}
2000-09-18 23:08:29 +00:00
}
else
2001-03-01 11:19:46 +00:00
{
2001-06-13 10:54:27 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COMMAND_TYPE ) ) )
2001-03-01 11:19:46 +00:00
aRet < < = nParam2 ;
2001-07-12 10:05:32 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DEPENDENT_TEXT_FIELDS ) ) )
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < uno : : Reference < text : : XDependentTextField > > aRetSeq ( 0 ) ;
2001-07-12 10:05:32 +00:00
aRet < < = aRetSeq ;
}
2001-10-24 17:56:14 +00:00
else
2001-03-01 11:19:46 +00:00
{
2001-10-24 17:56:14 +00:00
const String * pStr = 0 ;
String sStr ;
switch ( nResTypeId )
{
case RES_USERFLD :
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_CONTENT ) ) )
pStr = & sParam1 ;
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_VALUE ) ) )
aRet < < = fParam1 ;
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_IS_EXPRESSION ) ) )
aRet . setValue ( & bParam1 , : : getBooleanCppuType ( ) ) ;
break ;
case RES_DBFLD :
2004-08-02 13:19:37 +00:00
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) | |
2005-03-08 10:16:17 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) )
2004-08-02 13:19:37 +00:00
{
pStr = 0 ; // only one of this properties will return
// a non-empty string.
2005-03-08 10:16:17 +00:00
INetURLObject aObj ;
aObj . SetURL ( sParam5 ) ; // SetSmartURL
2011-01-17 15:06:54 +01:00
sal_Bool bIsURL = aObj . GetProtocol ( ) ! = INET_PROT_NOT_VALID ;
2005-03-08 10:16:17 +00:00
if ( bIsURL & & rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) )
pStr = & sParam5 ; // DataBaseURL
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) )
2004-08-02 13:19:37 +00:00
pStr = & sParam1 ; // DataBaseName
}
2001-10-24 17:56:14 +00:00
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_TABLE_NAME ) ) )
pStr = & sParam2 ;
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COLUMN_NAME ) ) )
pStr = & sParam3 ;
break ;
case RES_SETEXPFLD :
if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_NUMBERING_SEPARATOR ) ) )
pStr = & sParam1 ;
else if ( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_CHAPTER_NUMBERING_LEVEL ) ) )
aRet < < = nParam1 ;
break ;
case RES_DDEFLD :
{
2011-01-17 15:06:54 +01:00
sal_uInt16 nPart = rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_TYPE ) ) ? 0 :
2001-10-24 17:56:14 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_FILE ) ) ? 1 :
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DDE_COMMAND_ELEMENT ) ) ? 2 :
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_IS_AUTOMATIC_UPDATE ) ) ? 3 : USHRT_MAX ;
if ( nPart < 3 )
2004-10-04 18:13:25 +00:00
pStr = & ( sStr = sParam1 . GetToken ( nPart , sfx2 : : cTokenSeperator ) ) ;
2001-10-24 17:56:14 +00:00
else if ( 3 = = nPart )
aRet . setValue ( & bParam1 , : : getBooleanCppuType ( ) ) ;
}
break ;
default :
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2001-03-01 11:19:46 +00:00
}
2001-10-24 17:56:14 +00:00
if ( pStr )
aRet < < = OUString ( * pStr ) ;
2001-03-01 11:19:46 +00:00
}
}
2000-09-18 23:08:29 +00:00
return aRet ;
}
2007-09-27 08:36:28 +00:00
void SwXFieldMaster : : addPropertyChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XPropertyChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXFieldMaster : : removePropertyChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XPropertyChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXFieldMaster : : addVetoableChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XVetoableChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXFieldMaster : : removeVetoableChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XVetoableChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
void SwXFieldMaster : : dispose ( void ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2001-03-30 13:15:27 +00:00
SwFieldType * pFldType = GetFldType ( sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( pFldType )
{
sal_uInt16 nTypeIdx = USHRT_MAX ;
const SwFldTypes * pTypes = GetDoc ( ) - > GetFldTypes ( ) ;
for ( sal_uInt16 i = 0 ; i < pTypes - > Count ( ) ; i + + )
{
if ( ( * pTypes ) [ i ] = = pFldType )
nTypeIdx = i ;
}
// zuerst alle Felder loeschen
2010-12-17 09:02:23 +01:00
SwIterator < SwFmtFld , SwFieldType > aIter ( * pFldType ) ;
SwFmtFld * pFld = aIter . First ( ) ;
2000-09-18 23:08:29 +00:00
while ( pFld )
{
// Feld im Undo?
SwTxtFld * pTxtFld = pFld - > GetTxtFld ( ) ;
if ( pTxtFld & & pTxtFld - > GetTxtNode ( ) . GetNodes ( ) . IsDocNodes ( ) )
{
SwTxtNode & rTxtNode = ( SwTxtNode & ) * pTxtFld - > GetpTxtNode ( ) ;
SwPaM aPam ( rTxtNode , * pTxtFld - > GetStart ( ) ) ;
aPam . SetMark ( ) ;
aPam . Move ( ) ;
GetDoc ( ) - > DeleteAndJoin ( aPam ) ;
}
2010-12-17 09:02:23 +01:00
pFld = aIter . Next ( ) ;
2000-09-18 23:08:29 +00:00
}
// dann den FieldType loeschen
GetDoc ( ) - > RemoveFldType ( nTypeIdx ) ;
}
else
throw uno : : RuntimeException ( ) ;
}
2007-06-05 16:32:51 +00:00
void SwXFieldMaster : : addEventListener ( const uno : : Reference < lang : : XEventListener > & aListener )
2000-09-18 23:08:29 +00:00
throw ( uno : : RuntimeException )
{
if ( ! GetRegisteredIn ( ) )
throw uno : : RuntimeException ( ) ;
aLstnrCntnr . AddListener ( aListener ) ;
}
2007-06-05 16:32:51 +00:00
void SwXFieldMaster : : removeEventListener ( const uno : : Reference < lang : : XEventListener > & aListener )
2000-09-18 23:08:29 +00:00
throw ( uno : : RuntimeException )
{
if ( ! GetRegisteredIn ( ) | | ! aLstnrCntnr . RemoveListener ( aListener ) )
throw uno : : RuntimeException ( ) ;
}
2010-12-17 09:02:23 +01:00
void SwXFieldMaster : : Modify ( const SfxPoolItem * pOld , const SfxPoolItem * pNew )
2000-09-18 23:08:29 +00:00
{
ClientModify ( this , pOld , pNew ) ;
if ( ! GetRegisteredIn ( ) )
{
aLstnrCntnr . Disposing ( ) ;
m_pDoc = 0 ;
}
}
2000-11-07 08:58:56 +00:00
OUString SwXFieldMaster : : GetProgrammaticName ( const SwFieldType & rType , SwDoc & rDoc )
{
OUString sRet ( rType . GetName ( ) ) ;
if ( RES_SETEXPFLD = = rType . Which ( ) )
{
const SwFldTypes * pTypes = rDoc . GetFldTypes ( ) ;
for ( sal_uInt16 i = 0 ; i < = INIT_FLDTYPES ; i + + )
{
if ( ( * pTypes ) [ i ] = = & rType )
{
2007-09-27 08:36:28 +00:00
sRet = SwStyleNameMapper : : GetProgName ( sRet , nsSwGetPoolIdFromName : : GET_POOLID_TXTCOLL ) ;
2000-11-07 08:58:56 +00:00
break ;
}
}
}
return sRet ;
}
OUString SwXFieldMaster : : LocalizeFormula (
const SwSetExpField & rFld ,
const OUString & rFormula ,
sal_Bool bQuery )
{
2001-07-20 09:22:01 +00:00
const OUString sTypeName ( rFld . GetTyp ( ) - > GetName ( ) ) ;
2007-09-27 08:36:28 +00:00
OUString sProgName = SwStyleNameMapper : : GetProgName ( sTypeName , nsSwGetPoolIdFromName : : GET_POOLID_TXTCOLL ) ;
2000-11-07 08:58:56 +00:00
if ( sProgName ! = sTypeName )
{
OUString sSource = bQuery ? sTypeName : sProgName ;
OUString sDest = bQuery ? sProgName : sTypeName ;
if ( ! rFormula . compareTo ( sSource , sSource . getLength ( ) ) )
{
OUString sTmpFormula = sDest ;
sTmpFormula + = rFormula . copy ( sSource . getLength ( ) ) ;
return sTmpFormula ;
}
}
return rFormula ;
}
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
2010-12-17 09:02:23 +01:00
SwXTextField * SwXTextField : : CreateSwXTextField ( SwDoc & rDoc , SwFmtFld const & rFmt )
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
{
2010-12-17 09:02:23 +01:00
SwIterator < SwXTextField , SwFieldType > aIter ( * rFmt . GetFld ( ) - > GetTyp ( ) ) ;
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
SwXTextField * pField = 0 ;
2010-12-17 09:02:23 +01:00
SwXTextField * pTemp = aIter . First ( ) ;
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
while ( pTemp )
{
if ( pTemp - > GetFldFmt ( ) = = & rFmt )
{
pField = pTemp ;
break ;
}
2010-12-17 09:02:23 +01:00
pTemp = aIter . Next ( ) ;
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
}
return pField ? pField : new SwXTextField ( rFmt , & rDoc ) ;
}
2000-09-18 23:08:29 +00:00
struct SwFieldProperties_Impl
{
String sPar1 ;
String sPar2 ;
String sPar3 ;
String sPar4 ;
2004-08-02 13:19:37 +00:00
String sPar5 ;
String sPar6 ;
2001-10-24 17:56:14 +00:00
Date aDate ;
double fDouble ;
2007-06-05 16:32:51 +00:00
uno : : Sequence < beans : : PropertyValue > aPropSeq ;
uno : : Sequence < OUString > aStrings ;
2001-10-24 17:56:14 +00:00
util : : DateTime * pDateTime ;
2000-09-18 23:08:29 +00:00
sal_Int32 nSubType ;
sal_Int32 nFormat ;
sal_uInt16 nUSHORT1 ;
sal_uInt16 nUSHORT2 ;
sal_Int16 nSHORT1 ;
sal_Int8 nByte1 ;
2001-10-24 17:56:14 +00:00
sal_Bool bFormatIsDefault ;
2000-09-18 23:08:29 +00:00
sal_Bool bBool1 ;
sal_Bool bBool2 ;
sal_Bool bBool3 ;
2002-11-15 10:17:38 +00:00
sal_Bool bBool4 ;
2000-09-18 23:08:29 +00:00
SwFieldProperties_Impl ( ) :
2007-09-27 08:36:28 +00:00
fDouble ( 0. ) ,
pDateTime ( 0 ) ,
2000-09-18 23:08:29 +00:00
nSubType ( 0 ) ,
nFormat ( 0 ) ,
nUSHORT1 ( 0 ) ,
nUSHORT2 ( 0 ) ,
nSHORT1 ( 0 ) ,
nByte1 ( 0 ) ,
2007-09-27 08:36:28 +00:00
bFormatIsDefault ( sal_True ) ,
2000-09-18 23:08:29 +00:00
bBool1 ( sal_False ) ,
bBool2 ( sal_False ) ,
2000-11-17 15:24:47 +00:00
bBool3 ( sal_False ) ,
2007-09-27 08:36:28 +00:00
bBool4 ( sal_True ) //Automatic language
2000-09-18 23:08:29 +00:00
{ }
2000-11-17 15:24:47 +00:00
~ SwFieldProperties_Impl ( )
{ delete pDateTime ; }
2000-09-18 23:08:29 +00:00
} ;
TYPEINIT1 ( SwXTextField , SwClient ) ;
2011-06-01 22:40:08 +01:00
namespace
{
class theSwXTextFieldUnoTunnelId : public rtl : : Static < UnoTunnelIdInit , theSwXTextFieldUnoTunnelId > { } ;
}
2007-06-05 16:32:51 +00:00
const uno : : Sequence < sal_Int8 > & SwXTextField : : getUnoTunnelId ( )
2000-09-18 23:08:29 +00:00
{
2011-06-01 22:40:08 +01:00
return theSwXTextFieldUnoTunnelId : : get ( ) . getSeq ( ) ;
2000-09-18 23:08:29 +00:00
}
sal_Int64 SAL_CALL SwXTextField : : getSomething ( const uno : : Sequence < sal_Int8 > & rId )
throw ( uno : : RuntimeException )
{
if ( rId . getLength ( ) = = 16
& & 0 = = rtl_compareMemory ( getUnoTunnelId ( ) . getConstArray ( ) ,
rId . getConstArray ( ) , 16 ) )
{
2007-09-27 08:36:28 +00:00
return sal : : static_int_cast < sal_Int64 > ( reinterpret_cast < sal_IntPtr > ( this ) ) ;
2000-09-18 23:08:29 +00:00
}
return 0 ;
}
2003-06-30 14:52:29 +00:00
2008-02-19 12:49:44 +00:00
SwXTextField : : SwXTextField ( sal_uInt16 nServiceId , SwDoc * pDoc ) :
2000-09-18 23:08:29 +00:00
aLstnrCntnr ( ( XTextContent * ) this ) ,
2007-09-27 08:36:28 +00:00
pFmtFld ( 0 ) ,
2008-02-19 12:49:44 +00:00
m_pDoc ( pDoc ) ,
m_pTextObject ( 0 ) ,
2000-09-18 23:08:29 +00:00
m_bIsDescriptor ( nServiceId ! = USHRT_MAX ) ,
2007-09-27 08:36:28 +00:00
m_bCallUpdate ( sal_False ) ,
m_nServiceId ( nServiceId ) ,
m_pProps ( new SwFieldProperties_Impl )
2000-09-18 23:08:29 +00:00
{
//Set visible as default!
2003-04-17 13:43:00 +00:00
if ( SW_SERVICE_FIELDTYPE_SET_EXP = = nServiceId | |
SW_SERVICE_FIELDTYPE_DATABASE_SET_NUM = = nServiceId | |
SW_SERVICE_FIELDTYPE_DATABASE = = nServiceId | |
SW_SERVICE_FIELDTYPE_DATABASE_NAME = = nServiceId )
2000-09-18 23:08:29 +00:00
m_pProps - > bBool2 = sal_True ;
2001-10-17 12:38:26 +00:00
else if ( SW_SERVICE_FIELDTYPE_TABLE_FORMULA = = nServiceId )
m_pProps - > bBool1 = sal_True ;
2007-07-18 11:56:44 +00:00
if ( SW_SERVICE_FIELDTYPE_SET_EXP = = nServiceId )
m_pProps - > nUSHORT2 = USHRT_MAX ;
2001-10-17 12:38:26 +00:00
2000-09-18 23:08:29 +00:00
}
SwXTextField : : SwXTextField ( const SwFmtFld & rFmt , SwDoc * pDc ) :
aLstnrCntnr ( ( XTextContent * ) this ) ,
2007-09-27 08:36:28 +00:00
pFmtFld ( & rFmt ) ,
2000-09-18 23:08:29 +00:00
m_pDoc ( pDc ) ,
2008-02-19 12:49:44 +00:00
m_pTextObject ( 0 ) ,
2000-09-18 23:08:29 +00:00
m_bIsDescriptor ( sal_False ) ,
2007-09-27 08:36:28 +00:00
m_bCallUpdate ( sal_False ) ,
m_nServiceId ( lcl_GetServiceForField ( * pFmtFld - > GetFld ( ) ) ) ,
m_pProps ( 0 )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
pDc - > GetUnoCallBack ( ) - > Add ( this ) ;
2000-09-18 23:08:29 +00:00
}
SwXTextField : : ~ SwXTextField ( )
{
2008-02-19 12:49:44 +00:00
if ( m_pTextObject )
{
m_pTextObject - > DisposeEditSource ( ) ;
m_pTextObject - > release ( ) ;
}
2000-09-18 23:08:29 +00:00
delete m_pProps ;
}
2007-06-05 16:32:51 +00:00
void SwXTextField : : attachTextFieldMaster ( const uno : : Reference < beans : : XPropertySet > & xFieldMaster )
throw ( lang : : IllegalArgumentException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! m_bIsDescriptor )
throw uno : : RuntimeException ( ) ;
2007-06-05 16:32:51 +00:00
uno : : Reference < lang : : XUnoTunnel > xMasterTunnel ( xFieldMaster , uno : : UNO_QUERY ) ;
2003-03-27 14:45:43 +00:00
if ( ! xMasterTunnel . is ( ) )
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2007-09-27 08:36:28 +00:00
SwXFieldMaster * pMaster = reinterpret_cast < SwXFieldMaster * > (
sal : : static_int_cast < sal_IntPtr > ( xMasterTunnel - > getSomething ( SwXFieldMaster : : getUnoTunnelId ( ) ) ) ) ;
2000-09-18 23:08:29 +00:00
SwFieldType * pFieldType = pMaster ? pMaster - > GetFldType ( ) : 0 ;
if ( pFieldType & & pFieldType - > Which ( ) = = lcl_ServiceIdToResId ( m_nServiceId ) )
{
m_sTypeName = pFieldType - > GetName ( ) ;
2007-07-18 11:56:44 +00:00
pFieldType - > Add ( & m_aFieldTypeClient ) ;
2000-09-18 23:08:29 +00:00
}
else
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Reference < beans : : XPropertySet > SwXTextField : : getTextFieldMaster ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2007-07-18 11:56:44 +00:00
SwFieldType * pType = 0 ;
if ( m_bIsDescriptor & & m_aFieldTypeClient . GetRegisteredIn ( ) )
{
pType = ( SwFieldType * ) m_aFieldTypeClient . GetRegisteredIn ( ) ;
}
else
{
if ( ! GetRegisteredIn ( ) )
throw uno : : RuntimeException ( ) ;
pType = pFmtFld - > GetFld ( ) - > GetTyp ( ) ;
}
2010-12-17 09:02:23 +01:00
SwXFieldMaster * pMaster = SwIterator < SwXFieldMaster , SwFieldType > : : FirstElement ( * pType ) ;
2000-09-18 23:08:29 +00:00
if ( ! pMaster )
pMaster = new SwXFieldMaster ( * pType , GetDoc ( ) ) ;
return pMaster ;
}
OUString SwXTextField : : getPresentation ( sal_Bool bShowCommand ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2010-10-04 17:14:34 +02:00
SwField const * const pField = GetField ( ) ;
if ( ! pField )
{
2000-09-18 23:08:29 +00:00
throw uno : : RuntimeException ( ) ;
2010-10-04 17:14:34 +02:00
}
: : rtl : : OUString const ret ( ( bShowCommand )
? pField - > GetFieldName ( )
2010-10-22 17:53:18 +02:00
: pField - > ExpandField ( true ) ) ;
2010-10-04 17:14:34 +02:00
return ret ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
void SwXTextField : : attachToRange (
2007-06-05 16:32:51 +00:00
const uno : : Reference < text : : XTextRange > & xTextRange )
throw ( lang : : IllegalArgumentException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! m_bIsDescriptor )
throw uno : : RuntimeException ( ) ;
2007-06-05 16:32:51 +00:00
uno : : Reference < lang : : XUnoTunnel > xRangeTunnel ( xTextRange , uno : : UNO_QUERY ) ;
2000-09-18 23:08:29 +00:00
SwXTextRange * pRange = 0 ;
2003-04-01 14:33:41 +00:00
OTextCursorHelper * pCursor = 0 ;
2000-09-18 23:08:29 +00:00
if ( xRangeTunnel . is ( ) )
{
2007-09-27 08:36:28 +00:00
pRange = reinterpret_cast < SwXTextRange * > (
sal : : static_int_cast < sal_IntPtr > ( xRangeTunnel - > getSomething ( SwXTextRange : : getUnoTunnelId ( ) ) ) ) ;
pCursor = reinterpret_cast < OTextCursorHelper * > (
sal : : static_int_cast < sal_IntPtr > ( xRangeTunnel - > getSomething ( OTextCursorHelper : : getUnoTunnelId ( ) ) ) ) ;
2000-09-18 23:08:29 +00:00
}
SwDoc * pDoc = pRange ? ( SwDoc * ) pRange - > GetDoc ( ) : pCursor ? ( SwDoc * ) pCursor - > GetDoc ( ) : 0 ;
//wurde ein FieldMaster attached, dann ist das Dokument schon festgelegt!
if ( pDoc & & ( ! m_pDoc | | m_pDoc = = pDoc ) )
{
SwUnoInternalPaM aPam ( * pDoc ) ;
//das muss jetzt sal_True liefern
2010-01-08 17:13:53 +01:00
: : sw : : XTextRangeToSwPaM ( aPam , xTextRange ) ;
2000-09-18 23:08:29 +00:00
SwField * pFld = 0 ;
switch ( m_nServiceId )
{
case SW_SERVICE_FIELDTYPE_ANNOTATION :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_POSTITFLD ) ;
2008-02-19 12:49:44 +00:00
DateTime aDateTime ;
2008-05-30 08:28:43 +00:00
if ( m_pProps - > pDateTime )
{
aDateTime . SetYear ( m_pProps - > pDateTime - > Year ) ;
aDateTime . SetMonth ( m_pProps - > pDateTime - > Month ) ;
aDateTime . SetDay ( m_pProps - > pDateTime - > Day ) ;
aDateTime . SetHour ( m_pProps - > pDateTime - > Hours ) ;
aDateTime . SetMin ( m_pProps - > pDateTime - > Minutes ) ;
aDateTime . SetSec ( m_pProps - > pDateTime - > Seconds ) ;
}
2000-09-18 23:08:29 +00:00
pFld = new SwPostItField ( ( SwPostItFieldType * ) pFldType ,
2008-02-19 12:49:44 +00:00
m_pProps - > sPar1 , m_pProps - > sPar2 , aDateTime ) ;
if ( m_pTextObject )
{
( ( SwPostItField * ) pFld ) - > SetTextObject ( m_pTextObject - > CreateText ( ) ) ;
( ( SwPostItField * ) pFld ) - > SetPar2 ( m_pTextObject - > GetText ( ) ) ;
}
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_SCRIPT :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_SCRIPTFLD ) ;
pFld = new SwScriptField ( ( SwScriptFieldType * ) pFldType ,
m_pProps - > sPar1 , m_pProps - > sPar2 ,
m_pProps - > bBool1 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_DATETIME :
{
sal_uInt16 nSub = 0 ;
if ( m_pProps - > bBool1 )
nSub | = FIXEDFLD ;
if ( m_pProps - > bBool2 )
nSub | = DATEFLD ;
else
nSub | = TIMEFLD ;
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_DATETIMEFLD ) ;
pFld = new SwDateTimeField ( ( SwDateTimeFieldType * ) pFldType ,
nSub , m_pProps - > nFormat ) ;
if ( m_pProps - > fDouble > 0. )
( ( SwDateTimeField * ) pFld ) - > SetValue ( m_pProps - > fDouble ) ;
2000-11-17 15:24:47 +00:00
if ( m_pProps - > pDateTime )
{
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = * m_pProps - > pDateTime ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_DATE_TIME ) ;
2000-11-17 15:24:47 +00:00
}
2000-09-18 23:08:29 +00:00
( ( SwDateTimeField * ) pFld ) - > SetOffset ( m_pProps - > nSubType ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_FILE_NAME :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_FILENAMEFLD ) ;
sal_Int32 nFormat = m_pProps - > nFormat ;
if ( m_pProps - > bBool2 )
nFormat | = FF_FIXED ;
pFld = new SwFileNameField ( ( SwFileNameFieldType * ) pFldType , nFormat ) ;
if ( m_pProps - > sPar3 . Len ( ) )
( ( SwFileNameField * ) pFld ) - > SetExpansion ( m_pProps - > sPar3 ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aFormat ( & m_pProps - > nFormat , : : getCppuType ( & m_pProps - > nFormat ) ) ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aFormat , FIELD_PROP_FORMAT ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_TEMPLATE_NAME :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_TEMPLNAMEFLD ) ;
pFld = new SwTemplNameField ( ( SwTemplNameFieldType * ) pFldType ,
m_pProps - > nFormat ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aFormat ( & m_pProps - > nFormat , : : getCppuType ( & m_pProps - > nFormat ) ) ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aFormat , FIELD_PROP_FORMAT ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_CHAPTER :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_CHAPTERFLD ) ;
pFld = new SwChapterField ( ( SwChapterFieldType * ) pFldType , m_pProps - > nUSHORT1 ) ;
( ( SwChapterField * ) pFld ) - > SetLevel ( m_pProps - > nByte1 ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = ( sal_Int16 ) m_pProps - > nUSHORT1 ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_USHORT1 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_AUTHOR :
{
long nFormat = m_pProps - > bBool1 ? AF_NAME : AF_SHORTCUT ;
if ( m_pProps - > bBool2 )
nFormat | = AF_FIXED ;
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_AUTHORFLD ) ;
pFld = new SwAuthorField ( ( SwAuthorFieldType * ) pFldType , nFormat ) ;
( ( SwAuthorField * ) pFld ) - > SetExpansion ( m_pProps - > sPar1 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_CONDITIONED_TEXT :
case SW_SERVICE_FIELDTYPE_HIDDEN_TEXT :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_HIDDENTXTFLD ) ;
pFld = new SwHiddenTxtField ( ( ( SwHiddenTxtFieldType * ) pFldType ) ,
m_pProps - > sPar1 ,
m_pProps - > sPar2 , m_pProps - > sPar3 ,
2011-01-17 15:06:54 +01:00
static_cast < sal_uInt16 > ( SW_SERVICE_FIELDTYPE_HIDDEN_TEXT = = m_nServiceId ?
2007-09-27 08:36:28 +00:00
TYP_HIDDENTXTFLD : TYP_CONDTXTFLD ) ) ;
2001-03-13 09:43:01 +00:00
( ( SwHiddenTxtField * ) pFld ) - > SetValue ( m_pProps - > bBool1 ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = ( OUString ) m_pProps - > sPar4 ;
2003-08-19 10:57:15 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_PAR4 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_HIDDEN_PARA :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_HIDDENPARAFLD ) ;
pFld = new SwHiddenParaField ( ( SwHiddenParaFieldType * ) pFldType ,
m_pProps - > sPar1 ) ;
2001-03-13 09:43:01 +00:00
( ( SwHiddenParaField * ) pFld ) - > SetHidden ( m_pProps - > bBool1 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_GET_REFERENCE :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_GETREFFLD ) ;
pFld = new SwGetRefField ( ( SwGetRefFieldType * ) pFldType ,
m_pProps - > sPar1 ,
0 ,
0 ,
0 ) ;
if ( m_pProps - > sPar3 . Len ( ) )
( ( SwGetRefField * ) pFld ) - > SetExpand ( m_pProps - > sPar3 ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = ( sal_Int16 ) m_pProps - > nUSHORT1 ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_USHORT1 ) ;
2000-09-18 23:08:29 +00:00
aVal < < = ( sal_Int16 ) m_pProps - > nUSHORT2 ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_USHORT2 ) ;
2000-09-18 23:08:29 +00:00
aVal < < = ( sal_Int16 ) m_pProps - > nSHORT1 ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_SHORT1 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_JUMP_EDIT :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_JUMPEDITFLD ) ;
pFld = new SwJumpEditField ( ( SwJumpEditFieldType * ) pFldType ,
2001-10-24 17:56:14 +00:00
m_pProps - > nUSHORT1 , m_pProps - > sPar2 , m_pProps - > sPar1 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR :
case SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME :
case SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME :
case SW_SERVICE_FIELDTYPE_DOCINFO_DESCRIPTION :
case SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_AUTHOR :
case SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME :
2007-11-26 14:29:51 +00:00
case SW_SERVICE_FIELDTYPE_DOCINFO_CUSTOM :
2000-09-18 23:08:29 +00:00
case SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_AUTHOR :
case SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME :
case SW_SERVICE_FIELDTYPE_DOCINFO_KEY_WORDS :
case SW_SERVICE_FIELDTYPE_DOCINFO_SUBJECT :
case SW_SERVICE_FIELDTYPE_DOCINFO_TITLE :
case SW_SERVICE_FIELDTYPE_DOCINFO_REVISION :
case SW_SERVICE_FIELDTYPE_DOC_INFO :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_DOCINFOFLD ) ;
sal_uInt16 nSubType = aDocInfoSubTypeFromService [
m_nServiceId - SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR ] ;
2001-10-24 17:56:14 +00:00
if ( SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME = = m_nServiceId | |
SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME = = m_nServiceId | |
SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME = = m_nServiceId | |
SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME = = m_nServiceId )
2000-09-18 23:08:29 +00:00
{
2000-12-07 11:06:41 +00:00
if ( m_pProps - > bBool2 ) //IsDate
{
nSubType & = 0xf0ff ;
nSubType | = DI_SUB_DATE ;
}
else
{
nSubType & = 0xf0ff ;
nSubType | = DI_SUB_TIME ;
}
2000-09-18 23:08:29 +00:00
}
if ( m_pProps - > bBool1 )
nSubType | = DI_SUB_FIXED ;
2007-11-26 14:29:51 +00:00
pFld = new SwDocInfoField ( ( SwDocInfoFieldType * ) pFldType , nSubType , m_pProps - > sPar4 , m_pProps - > nFormat ) ;
2000-09-18 23:08:29 +00:00
if ( m_pProps - > sPar3 . Len ( ) )
( ( SwDocInfoField * ) pFld ) - > SetExpansion ( m_pProps - > sPar3 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_USER_EXT :
{
sal_Int32 nFormat = 0 ;
if ( m_pProps - > bBool1 )
nFormat = AF_FIXED ;
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_EXTUSERFLD ) ;
pFld = new SwExtUserField ( ( SwExtUserFieldType * ) pFldType , m_pProps - > nUSHORT1 , nFormat ) ;
( ( SwExtUserField * ) pFld ) - > SetExpansion ( m_pProps - > sPar1 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_USER :
{
2005-07-18 11:25:55 +00:00
SwFieldType * pFldType = pDoc - > GetFldType ( RES_USERFLD , m_sTypeName , sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( ! pFldType )
throw uno : : RuntimeException ( ) ;
2011-01-17 15:06:54 +01:00
sal_uInt16 nUserSubType = m_pProps - > bBool1 ? nsSwExtendedSubType : : SUB_INVISIBLE : 0 ;
2000-09-18 23:08:29 +00:00
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nUserSubType | = nsSwExtendedSubType : : SUB_CMD ;
2001-10-25 12:23:13 +00:00
if ( m_pProps - > bFormatIsDefault & &
2007-09-27 08:36:28 +00:00
nsSwGetSetExpType : : GSE_STRING = = ( ( SwUserFieldType * ) pFldType ) - > GetType ( ) )
2001-10-25 12:23:13 +00:00
m_pProps - > nFormat = - 1 ;
2000-09-18 23:08:29 +00:00
pFld = new SwUserField ( ( SwUserFieldType * ) pFldType ,
nUserSubType ,
m_pProps - > nFormat ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_REF_PAGE_SET :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_REFPAGESETFLD ) ;
pFld = new SwRefPageSetField ( ( SwRefPageSetFieldType * ) pFldType ,
m_pProps - > nUSHORT1 ,
m_pProps - > bBool1 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_REF_PAGE_GET :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_REFPAGEGETFLD ) ;
pFld = new SwRefPageGetField ( ( SwRefPageGetFieldType * ) pFldType ,
m_pProps - > nUSHORT1 ) ;
2002-01-18 08:45:31 +00:00
( ( SwRefPageGetField * ) pFld ) - > SetText ( m_pProps - > sPar1 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_PAGE_NUM :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_PAGENUMBERFLD ) ;
pFld = new SwPageNumberField ( ( SwPageNumberFieldType * ) pFldType ,
PG_RANDOM ,
m_pProps - > nFormat ,
m_pProps - > nUSHORT1 ) ;
( ( SwPageNumberField * ) pFld ) - > SetUserString ( m_pProps - > sPar1 ) ;
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = m_pProps - > nSubType ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_SUBTYPE ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DDE :
{
2005-07-18 11:25:55 +00:00
SwFieldType * pFldType = pDoc - > GetFldType ( RES_DDEFLD , m_sTypeName , sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( ! pFldType )
throw uno : : RuntimeException ( ) ;
pFld = new SwDDEField ( ( SwDDEFieldType * ) pFldType ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NAME :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_DBNAMEFLD ) ;
2001-02-21 11:45:25 +00:00
SwDBData aData ;
aData . sDataSource = m_pProps - > sPar1 ;
aData . sCommand = m_pProps - > sPar2 ;
aData . nCommandType = m_pProps - > nSHORT1 ;
pFld = new SwDBNameField ( ( SwDBNameFieldType * ) pFldType , aData ) ;
2003-04-17 13:43:00 +00:00
sal_uInt16 nSubType = pFld - > GetSubType ( ) ;
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
pFld - > SetSubType ( nSubType ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NEXT_SET :
{
2001-02-21 11:45:25 +00:00
SwDBData aData ;
aData . sDataSource = m_pProps - > sPar1 ;
aData . sCommand = m_pProps - > sPar2 ;
aData . nCommandType = m_pProps - > nSHORT1 ;
2000-09-18 23:08:29 +00:00
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_DBNEXTSETFLD ) ;
pFld = new SwDBNextSetField ( ( SwDBNextSetFieldType * ) pFldType ,
m_pProps - > sPar3 , aEmptyStr ,
2001-02-21 11:45:25 +00:00
aData ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DATABASE_NUM_SET :
{
2001-02-21 11:45:25 +00:00
SwDBData aData ;
aData . sDataSource = m_pProps - > sPar1 ;
aData . sCommand = m_pProps - > sPar2 ;
aData . nCommandType = m_pProps - > nSHORT1 ;
2001-10-31 19:53:42 +00:00
pFld = new SwDBNumSetField ( ( SwDBNumSetFieldType * )
pDoc - > GetSysFldType ( RES_DBNUMSETFLD ) ,
m_pProps - > sPar3 ,
String : : CreateFromInt32 ( m_pProps - > nFormat ) ,
aData ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DATABASE_SET_NUM :
{
2001-02-21 11:45:25 +00:00
SwDBData aData ;
aData . sDataSource = m_pProps - > sPar1 ;
aData . sCommand = m_pProps - > sPar2 ;
aData . nCommandType = m_pProps - > nSHORT1 ;
2001-10-31 19:53:42 +00:00
pFld = new SwDBSetNumberField ( ( SwDBSetNumberFieldType * )
pDoc - > GetSysFldType ( RES_DBSETNUMBERFLD ) ,
2001-02-21 11:45:25 +00:00
aData ,
2000-09-18 23:08:29 +00:00
m_pProps - > nUSHORT1 ) ;
( ( SwDBSetNumberField * ) pFld ) - > SetSetNumber ( m_pProps - > nFormat ) ;
2003-04-17 13:43:00 +00:00
sal_uInt16 nSubType = pFld - > GetSubType ( ) ;
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
pFld - > SetSubType ( nSubType ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_DATABASE :
{
2005-07-18 11:25:55 +00:00
SwFieldType * pFldType = pDoc - > GetFldType ( RES_DBFLD , m_sTypeName , sal_False ) ;
2000-09-18 23:08:29 +00:00
if ( ! pFldType )
throw uno : : RuntimeException ( ) ;
pFld = new SwDBField ( ( SwDBFieldType * ) pFldType , m_pProps - > nFormat ) ;
( ( SwDBField * ) pFld ) - > InitContent ( m_pProps - > sPar1 ) ;
2003-04-17 13:43:00 +00:00
sal_uInt16 nSubType = pFld - > GetSubType ( ) ;
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_INVISIBLE ;
2003-04-17 13:43:00 +00:00
pFld - > SetSubType ( nSubType ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_SET_EXP :
{
2005-07-18 11:25:55 +00:00
SwFieldType * pFldType = pDoc - > GetFldType ( RES_SETEXPFLD , m_sTypeName , sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( ! pFldType )
throw uno : : RuntimeException ( ) ;
2011-03-04 18:18:09 +01:00
// detect the field type's sub type and set an appropriate number format
2001-10-17 07:54:43 +00:00
if ( m_pProps - > bFormatIsDefault & &
2007-09-27 08:36:28 +00:00
nsSwGetSetExpType : : GSE_STRING = = ( ( SwSetExpFieldType * ) pFldType ) - > GetType ( ) )
2001-10-17 07:54:43 +00:00
m_pProps - > nFormat = - 1 ;
2000-09-18 23:08:29 +00:00
pFld = new SwSetExpField ( ( SwSetExpFieldType * ) pFldType ,
m_pProps - > sPar2 ,
2007-07-18 11:56:44 +00:00
m_pProps - > nUSHORT2 ! = USHRT_MAX ? //#i79471# the field can have a number format or a number_ing_ format
m_pProps - > nUSHORT2 : m_pProps - > nFormat ) ;
2000-09-18 23:08:29 +00:00
sal_uInt16 nSubType = pFld - > GetSubType ( ) ;
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_INVISIBLE ;
2000-09-18 23:08:29 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_INVISIBLE ;
2000-09-18 23:08:29 +00:00
if ( m_pProps - > bBool3 )
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_CMD ;
2000-09-18 23:08:29 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_CMD ;
2000-09-18 23:08:29 +00:00
pFld - > SetSubType ( nSubType ) ;
( ( SwSetExpField * ) pFld ) - > SetSeqNumber ( m_pProps - > nUSHORT1 ) ;
( ( SwSetExpField * ) pFld ) - > SetInputFlag ( m_pProps - > bBool1 ) ;
( ( SwSetExpField * ) pFld ) - > SetPromptText ( m_pProps - > sPar3 ) ;
if ( m_pProps - > sPar4 . Len ( ) )
( ( SwSetExpField * ) pFld ) - > ChgExpStr ( m_pProps - > sPar4 ) ;
}
break ;
case SW_SERVICE_FIELDTYPE_GET_EXP :
{
sal_uInt16 nSubType ;
switch ( m_pProps - > nSubType )
{
2007-09-27 08:36:28 +00:00
case text : : SetVariableType : : STRING : nSubType = nsSwGetSetExpType : : GSE_STRING ; break ;
case text : : SetVariableType : : VAR : nSubType = nsSwGetSetExpType : : GSE_EXPR ; break ;
2008-02-19 12:49:44 +00:00
//case text::SetVariableType::SEQUENCE: nSubType = nsSwGetSetExpType::GSE_SEQ; break;
2007-09-27 08:36:28 +00:00
case text : : SetVariableType : : FORMULA : nSubType = nsSwGetSetExpType : : GSE_FORMULA ; break ;
2000-09-18 23:08:29 +00:00
default :
2011-03-01 19:09:12 +01:00
OSL_FAIL ( " wrong value " ) ;
2007-09-27 08:36:28 +00:00
nSubType = nsSwGetSetExpType : : GSE_EXPR ;
2000-09-18 23:08:29 +00:00
}
2007-08-03 11:58:14 +00:00
//make sure the SubType matches the field type
SwFieldType * pSetExpFld = pDoc - > GetFldType ( RES_SETEXPFLD , m_pProps - > sPar1 , sal_False ) ;
2008-07-07 06:24:59 +00:00
bool bSetGetExpFieldUninitialized = false ;
if ( pSetExpFld )
{
if ( nSubType ! = nsSwGetSetExpType : : GSE_STRING & &
static_cast < SwSetExpFieldType * > ( pSetExpFld ) - > GetType ( ) = = nsSwGetSetExpType : : GSE_STRING )
2007-09-27 08:36:28 +00:00
nSubType = nsSwGetSetExpType : : GSE_STRING ;
2008-07-07 06:24:59 +00:00
}
else
bSetGetExpFieldUninitialized = true ; // #i82544#
2007-08-03 11:58:14 +00:00
2000-09-18 23:08:29 +00:00
if ( m_pProps - > bBool2 )
2007-09-27 08:36:28 +00:00
nSubType | = nsSwExtendedSubType : : SUB_CMD ;
2000-09-18 23:08:29 +00:00
else
2007-09-27 08:36:28 +00:00
nSubType & = ~ nsSwExtendedSubType : : SUB_CMD ;
2001-10-31 19:53:42 +00:00
pFld = new SwGetExpField ( ( SwGetExpFieldType * )
pDoc - > GetSysFldType ( RES_GETEXPFLD ) ,
2000-09-18 23:08:29 +00:00
m_pProps - > sPar1 , nSubType , m_pProps - > nFormat ) ;
//TODO: SubType auswerten!
if ( m_pProps - > sPar4 . Len ( ) )
( ( SwGetExpField * ) pFld ) - > ChgExpStr ( m_pProps - > sPar4 ) ;
2008-07-07 06:24:59 +00:00
// #i82544#
if ( bSetGetExpFieldUninitialized )
( ( SwGetExpField * ) pFld ) - > SetLateInitialization ( ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_INPUT_USER :
case SW_SERVICE_FIELDTYPE_INPUT :
{
2005-07-18 11:25:55 +00:00
SwFieldType * pFldType = pDoc - > GetFldType ( RES_INPUTFLD , m_sTypeName , sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( ! pFldType )
throw uno : : RuntimeException ( ) ;
2011-01-17 15:06:54 +01:00
sal_uInt16 nInpSubType = sal : : static_int_cast < sal_uInt16 > ( SW_SERVICE_FIELDTYPE_INPUT_USER = = m_nServiceId ? INP_USR : INP_TXT ) ;
2007-03-09 12:15:38 +00:00
SwInputField * pTxtField =
new SwInputField ( ( SwInputFieldType * ) pFldType ,
m_pProps - > sPar1 , m_pProps - > sPar2 ,
nInpSubType ) ;
pTxtField - > SetHelp ( m_pProps - > sPar3 ) ;
pTxtField - > SetToolTip ( m_pProps - > sPar4 ) ;
pFld = pTxtField ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_MACRO :
{
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_MACROFLD ) ;
2001-08-02 17:37:24 +00:00
String aName ;
2004-05-19 07:51:18 +00:00
// support for Scripting Framework macros
if ( m_pProps - > sPar4 . Len ( ) ! = 0 )
{
aName = m_pProps - > sPar4 ;
}
else
{
SwMacroField : : CreateMacroString (
aName , m_pProps - > sPar1 , m_pProps - > sPar3 ) ;
}
2001-08-02 17:37:24 +00:00
pFld = new SwMacroField ( ( SwMacroFieldType * ) pFldType , aName ,
m_pProps - > sPar2 ) ;
2000-09-18 23:08:29 +00:00
}
break ;
case SW_SERVICE_FIELDTYPE_PAGE_COUNT :
case SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT :
case SW_SERVICE_FIELDTYPE_WORD_COUNT :
case SW_SERVICE_FIELDTYPE_CHARACTER_COUNT :
case SW_SERVICE_FIELDTYPE_TABLE_COUNT :
case SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT :
case SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT :
{
sal_uInt16 nSubType = DS_PAGE ;
switch ( m_nServiceId )
{
// case SW_SERVICE_FIELDTYPE_PAGE_COUNT : break;
case SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT : nSubType = DS_PARA ; break ;
case SW_SERVICE_FIELDTYPE_WORD_COUNT : nSubType = DS_WORD ; break ;
case SW_SERVICE_FIELDTYPE_CHARACTER_COUNT : nSubType = DS_CHAR ; break ;
case SW_SERVICE_FIELDTYPE_TABLE_COUNT : nSubType = DS_TBL ; break ;
case SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT : nSubType = DS_GRF ; break ;
case SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT : nSubType = DS_OLE ; break ;
}
SwFieldType * pFldType = pDoc - > GetSysFldType ( RES_DOCSTATFLD ) ;
pFld = new SwDocStatField ( ( SwDocStatFieldType * ) pFldType , nSubType , m_pProps - > nUSHORT2 ) ;
}
break ;
2000-11-22 14:23:00 +00:00
case SW_SERVICE_FIELDTYPE_BIBLIOGRAPHY :
2001-10-31 19:53:42 +00:00
pFld = new SwAuthorityField ( ( SwAuthorityFieldType * )
pDoc - > InsertFldType ( SwAuthorityFieldType ( pDoc ) ) ,
aEmptyStr ) ;
2000-11-22 14:23:00 +00:00
if ( m_pProps - > aPropSeq . getLength ( ) )
{
2007-06-05 16:32:51 +00:00
uno : : Any aVal ; aVal < < = m_pProps - > aPropSeq ;
2001-10-24 17:56:14 +00:00
pFld - > PutValue ( aVal , FIELD_PROP_PROP_SEQ ) ;
2000-11-22 14:23:00 +00:00
}
2001-10-31 19:53:42 +00:00
break ;
2001-01-29 14:29:30 +00:00
case SW_SERVICE_FIELDTYPE_COMBINED_CHARACTERS :
// create field
2001-10-31 19:53:42 +00:00
pFld = new SwCombinedCharField ( ( SwCombinedCharFieldType * )
pDoc - > GetSysFldType ( RES_COMBINED_CHARS ) ,
m_pProps - > sPar1 ) ;
break ;
2003-06-30 14:52:29 +00:00
case SW_SERVICE_FIELDTYPE_DROPDOWN :
pFld = new SwDropDownField
( ( SwDropDownFieldType * )
pDoc - > GetSysFldType ( RES_DROPDOWN ) ) ;
( ( SwDropDownField * ) pFld ) - > SetItems ( m_pProps - > aStrings ) ;
( ( SwDropDownField * ) pFld ) - > SetSelectedItem ( m_pProps - > sPar1 ) ;
( ( SwDropDownField * ) pFld ) - > SetName ( m_pProps - > sPar2 ) ;
2007-03-09 12:15:38 +00:00
( ( SwDropDownField * ) pFld ) - > SetHelp ( m_pProps - > sPar3 ) ;
( ( SwDropDownField * ) pFld ) - > SetToolTip ( m_pProps - > sPar4 ) ;
2003-06-30 14:52:29 +00:00
break ;
2001-10-17 12:38:26 +00:00
case SW_SERVICE_FIELDTYPE_TABLE_FORMULA :
{
// create field
2011-01-17 15:06:54 +01:00
sal_uInt16 nType = nsSwGetSetExpType : : GSE_FORMULA ;
2001-10-25 10:45:15 +00:00
if ( m_pProps - > bBool1 )
2001-10-17 12:38:26 +00:00
{
2007-09-27 08:36:28 +00:00
nType | = nsSwExtendedSubType : : SUB_CMD ;
2001-10-17 12:38:26 +00:00
if ( m_pProps - > bFormatIsDefault )
m_pProps - > nFormat = - 1 ;
}
2001-10-31 19:53:42 +00:00
pFld = new SwTblField ( ( SwTblFieldType * )
pDoc - > GetSysFldType ( RES_TABLEFLD ) ,
m_pProps - > sPar2 ,
2001-10-17 12:38:26 +00:00
nType ,
m_pProps - > nFormat ) ;
( ( SwTblField * ) pFld ) - > ChgExpStr ( m_pProps - > sPar1 ) ;
}
break ;
2011-03-01 19:09:12 +01:00
default : OSL_FAIL ( " was ist das fuer ein Typ? " ) ;
2000-09-18 23:08:29 +00:00
}
if ( pFld )
{
2002-11-21 14:31:59 +00:00
pFld - > SetAutomaticLanguage ( ! m_pProps - > bBool4 ) ;
2000-09-18 23:08:29 +00:00
SwFmtFld aFmt ( * pFld ) ;
UnoActionContext aCont ( pDoc ) ;
SwTxtAttr * pTxtAttr = 0 ;
if ( aPam . HasMark ( ) )
pDoc - > DeleteAndJoin ( aPam ) ;
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
SwXTextCursor const * const pTextCursor (
dynamic_cast < SwXTextCursor * > ( pCursor ) ) ;
const bool bForceExpandHints ( ( pTextCursor )
? pTextCursor - > IsAtEndOfMeta ( ) : false ) ;
const SetAttrMode nInsertFlags = ( bForceExpandHints )
? nsSetAttrMode : : SETATTR_FORCEHINTEXPAND
: nsSetAttrMode : : SETATTR_DEFAULT ;
pDoc - > InsertPoolItem ( aPam , aFmt , nInsertFlags ) ;
pTxtAttr = aPam . GetNode ( ) - > GetTxtNode ( ) - > GetTxtAttrForCharAt (
2002-02-01 11:51:13 +00:00
aPam . GetPoint ( ) - > nContent . GetIndex ( ) - 1 , RES_TXTATR_FIELD ) ;
2000-09-18 23:08:29 +00:00
// was passiert mit dem Update der Felder ? (siehe fldmgr.cxx)
if ( pTxtAttr )
{
const SwFmtFld & rFld = pTxtAttr - > GetFld ( ) ;
pFmtFld = & rFld ;
}
}
delete pFld ;
m_pDoc = pDoc ;
2001-04-03 14:07:00 +00:00
m_pDoc - > GetUnoCallBack ( ) - > Add ( this ) ;
2000-09-18 23:08:29 +00:00
m_bIsDescriptor = sal_False ;
2007-07-18 11:56:44 +00:00
if ( m_aFieldTypeClient . GetRegisteredIn ( ) )
const_cast < SwModify * > ( m_aFieldTypeClient . GetRegisteredIn ( ) ) - > Remove ( & m_aFieldTypeClient ) ;
2000-09-18 23:08:29 +00:00
DELETEZ ( m_pProps ) ;
2001-03-23 14:29:03 +00:00
if ( m_bCallUpdate )
update ( ) ;
2000-09-18 23:08:29 +00:00
}
else
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
void SwXTextField : : attach ( const uno : : Reference < text : : XTextRange > & xTextRange )
throw ( lang : : IllegalArgumentException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2002-09-12 12:12:13 +00:00
attachToRange ( xTextRange ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Reference < text : : XTextRange > SwXTextField : : getAnchor ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2007-06-05 16:32:51 +00:00
uno : : Reference < text : : XTextRange > aRef ;
2000-09-18 23:08:29 +00:00
SwField * pField = ( SwField * ) GetField ( ) ;
if ( pField )
{
const SwTxtFld * pTxtFld = pFmtFld - > GetTxtFld ( ) ;
2002-07-05 07:40:42 +00:00
if ( ! pTxtFld )
throw uno : : RuntimeException ( ) ;
2000-09-18 23:08:29 +00:00
const SwTxtNode & rTxtNode = pTxtFld - > GetTxtNode ( ) ;
SwPaM aPam ( rTxtNode , * pTxtFld - > GetStart ( ) + 1 , rTxtNode , * pTxtFld - > GetStart ( ) ) ;
2010-01-08 17:13:53 +01:00
aRef = SwXTextRange : : CreateXTextRange (
* m_pDoc , * aPam . GetPoint ( ) , aPam . GetMark ( ) ) ;
2000-09-18 23:08:29 +00:00
}
return aRef ;
}
void SwXTextField : : dispose ( void ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
SwField * pField = ( SwField * ) GetField ( ) ;
if ( pField )
{
UnoActionContext aContext ( GetDoc ( ) ) ;
const SwTxtFld * pTxtFld = pFmtFld - > GetTxtFld ( ) ;
SwTxtNode & rTxtNode = ( SwTxtNode & ) * pTxtFld - > GetpTxtNode ( ) ;
SwPaM aPam ( rTxtNode , * pTxtFld - > GetStart ( ) ) ;
aPam . SetMark ( ) ;
aPam . Move ( ) ;
GetDoc ( ) - > DeleteAndJoin ( aPam ) ;
}
2008-02-19 12:49:44 +00:00
if ( m_pTextObject )
{
m_pTextObject - > DisposeEditSource ( ) ;
m_pTextObject - > release ( ) ;
m_pTextObject = 0 ;
}
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
void SwXTextField : : addEventListener ( const uno : : Reference < lang : : XEventListener > & aListener ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
if ( ! GetRegisteredIn ( ) )
throw uno : : RuntimeException ( ) ;
aLstnrCntnr . AddListener ( aListener ) ;
}
2007-06-05 16:32:51 +00:00
void SwXTextField : : removeEventListener ( const uno : : Reference < lang : : XEventListener > & aListener ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
if ( ! GetRegisteredIn ( ) | | ! aLstnrCntnr . RemoveListener ( aListener ) )
throw uno : : RuntimeException ( ) ;
}
2007-06-05 16:32:51 +00:00
uno : : Reference < beans : : XPropertySetInfo > SwXTextField : : getPropertySetInfo ( void )
2000-09-18 23:08:29 +00:00
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
//kein static
2007-06-05 16:32:51 +00:00
uno : : Reference < beans : : XPropertySetInfo > aRef ;
2000-11-22 15:49:53 +00:00
if ( m_nServiceId ! = USHRT_MAX )
2000-09-18 23:08:29 +00:00
{
2009-06-03 11:26:39 +00:00
const SfxItemPropertySet * pPropSet = aSwMapProvider . GetPropertySet (
2001-10-24 17:56:14 +00:00
lcl_GetPropertyMapOfService ( m_nServiceId ) ) ;
2009-06-03 11:26:39 +00:00
uno : : Reference < beans : : XPropertySetInfo > xInfo = pPropSet - > getPropertySetInfo ( ) ;
2000-09-18 23:08:29 +00:00
// extend PropertySetInfo!
const uno : : Sequence < beans : : Property > aPropSeq = xInfo - > getProperties ( ) ;
aRef = new SfxExtItemPropertySetInfo (
2009-06-03 11:26:39 +00:00
aSwMapProvider . GetPropertyMapEntries ( PROPERTY_MAP_PARAGRAPH_EXTENSIONS ) ,
2000-09-18 23:08:29 +00:00
aPropSeq ) ;
}
else
throw uno : : RuntimeException ( ) ;
return aRef ;
}
2001-10-24 17:56:14 +00:00
void SwXTextField : : setPropertyValue ( const OUString & rPropertyName , const uno : : Any & rValue )
2007-06-05 16:32:51 +00:00
throw ( beans : : UnknownPropertyException , beans : : PropertyVetoException , lang : : IllegalArgumentException ,
lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
SwField * pField = ( SwField * ) GetField ( ) ;
2009-06-03 11:26:39 +00:00
const SfxItemPropertySet * _pPropSet = aSwMapProvider . GetPropertySet (
2001-10-24 17:56:14 +00:00
lcl_GetPropertyMapOfService ( m_nServiceId ) ) ;
2009-06-03 11:26:39 +00:00
const SfxItemPropertySimpleEntry * pEntry = _pPropSet - > getPropertyMap ( ) - > getByName ( rPropertyName ) ;
2001-11-28 19:12:55 +00:00
2009-06-03 11:26:39 +00:00
if ( ! pEntry )
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2009-06-03 11:26:39 +00:00
if ( pEntry - > nFlags & beans : : PropertyAttribute : : READONLY )
2007-06-05 16:32:51 +00:00
throw beans : : PropertyVetoException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Property is read-only: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2001-10-24 17:56:14 +00:00
2000-09-18 23:08:29 +00:00
if ( pField )
{
// Sonderbehandlung Serienbrieffeld
2001-10-24 17:56:14 +00:00
sal_uInt16 nWhich = pField - > Which ( ) ;
2000-09-18 23:08:29 +00:00
if ( RES_DBFLD = = nWhich & &
2001-06-13 10:54:27 +00:00
( rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_NAME ) ) | |
2004-08-02 13:19:37 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_BASE_URL ) ) | |
2001-10-24 17:56:14 +00:00
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_TABLE_NAME ) ) | |
rPropertyName . equalsAsciiL ( SW_PROP_NAME ( UNO_NAME_DATA_COLUMN_NAME ) ) ) )
2000-09-18 23:08:29 +00:00
{
// hier muss ein neuer Feldtyp angelegt werden und
// das Feld an den neuen Typ umgehaengt werden
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
else
2004-05-18 13:09:14 +00:00
{
SwDoc * pDoc = GetDoc ( ) ;
if ( NULL ! = pDoc )
{
2009-08-26 11:47:12 +00:00
const SwTxtFld * pTxtFld = pFmtFld - > GetTxtFld ( ) ;
if ( ! pTxtFld )
throw uno : : RuntimeException ( ) ;
SwPosition aPosition ( pTxtFld - > GetTxtNode ( ) ) ;
aPosition . nContent = * pTxtFld - > GetStart ( ) ;
pDoc - > PutValueToField ( aPosition , rValue , pEntry - > nWID ) ;
2004-05-18 13:09:14 +00:00
}
}
2009-06-03 11:26:39 +00:00
pField - > PutValue ( rValue , pEntry - > nWID ) ;
2009-05-07 13:54:35 +00:00
//#i100374# notify SwPostIt about new field content
if ( RES_POSTITFLD = = nWhich & & pFmtFld )
{
const_cast < SwFmtFld * > ( pFmtFld ) - > Broadcast ( SwFmtFldHint ( 0 , SWFMTFLD_CHANGED ) ) ;
}
2011-03-04 18:18:09 +01:00
// changes of the expanded string have to be notified
2004-05-18 13:09:14 +00:00
//#to the SwTxtFld
2004-03-17 11:16:48 +00:00
if ( RES_DBFLD = = nWhich & & pFmtFld - > GetTxtFld ( ) )
{
pFmtFld - > GetTxtFld ( ) - > Expand ( ) ;
}
2009-05-07 13:54:35 +00:00
//#i100374# changing a document field should set the modify flag
SwDoc * pDoc = GetDoc ( ) ;
if ( pDoc )
pDoc - > SetModified ( ) ;
2000-09-18 23:08:29 +00:00
}
else if ( m_pProps )
{
2001-10-24 17:56:14 +00:00
String * pStr = 0 ;
2011-01-17 15:06:54 +01:00
sal_Bool * pBool = 0 ;
2009-06-03 11:26:39 +00:00
switch ( pEntry - > nWID )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
case FIELD_PROP_PAR1 :
pStr = & m_pProps - > sPar1 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_PAR2 :
pStr = & m_pProps - > sPar2 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_PAR3 :
pStr = & m_pProps - > sPar3 ;
2000-11-10 12:49:21 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_PAR4 :
pStr = & m_pProps - > sPar4 ;
2000-11-10 12:49:21 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_FORMAT :
rValue > > = m_pProps - > nFormat ;
m_pProps - > bFormatIsDefault = sal_False ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_SUBTYPE :
m_pProps - > nSubType = SWUnoHelper : : GetEnumAsInt32 ( rValue ) ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_BYTE1 :
rValue > > = m_pProps - > nByte1 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_BOOL1 :
pBool = & m_pProps - > bBool1 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_BOOL2 :
pBool = & m_pProps - > bBool2 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_BOOL3 :
pBool = & m_pProps - > bBool3 ;
2000-09-18 23:08:29 +00:00
break ;
2002-11-15 10:17:38 +00:00
case FIELD_PROP_BOOL4 :
2002-11-21 14:31:59 +00:00
pBool = & m_pProps - > bBool4 ;
2002-11-15 10:17:38 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_DATE :
{
2007-06-05 16:32:51 +00:00
if ( rValue . getValueType ( ) ! = : : getCppuType ( static_cast < const util : : Date * > ( 0 ) ) )
throw lang : : IllegalArgumentException ( ) ;
2000-09-18 23:08:29 +00:00
2001-10-24 17:56:14 +00:00
util : : Date aTemp = * ( const util : : Date * ) rValue . getValue ( ) ;
m_pProps - > aDate = Date ( aTemp . Day , aTemp . Month , aTemp . Year ) ;
}
break ;
case FIELD_PROP_USHORT1 :
case FIELD_PROP_USHORT2 :
2000-09-18 23:08:29 +00:00
{
2007-11-12 15:27:00 +00:00
sal_Int16 nVal = 0 ;
2001-10-24 17:56:14 +00:00
rValue > > = nVal ;
2009-06-03 11:26:39 +00:00
if ( FIELD_PROP_USHORT1 = = pEntry - > nWID )
2001-10-24 17:56:14 +00:00
m_pProps - > nUSHORT1 = nVal ;
else
m_pProps - > nUSHORT2 = nVal ;
2000-09-18 23:08:29 +00:00
}
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_SHORT1 :
rValue > > = m_pProps - > nSHORT1 ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_DOUBLE :
2007-06-05 16:32:51 +00:00
if ( rValue . getValueType ( ) ! = : : getCppuType ( static_cast < const double * > ( 0 ) ) )
throw lang : : IllegalArgumentException ( ) ;
2001-10-24 17:56:14 +00:00
m_pProps - > fDouble = * ( double * ) rValue . getValue ( ) ;
2000-09-18 23:08:29 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_DATE_TIME :
if ( ! m_pProps - > pDateTime )
m_pProps - > pDateTime = new util : : DateTime ;
rValue > > = ( * m_pProps - > pDateTime ) ;
2000-11-17 15:24:47 +00:00
break ;
2001-10-24 17:56:14 +00:00
case FIELD_PROP_PROP_SEQ :
rValue > > = m_pProps - > aPropSeq ;
2000-11-22 14:23:00 +00:00
break ;
2003-06-30 14:52:29 +00:00
case FIELD_PROP_STRINGS :
rValue > > = m_pProps - > aStrings ;
break ;
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
if ( pStr )
: : GetString ( rValue , * pStr ) ;
else if ( pBool )
{
if ( rValue . getValueType ( ) = = getCppuBooleanType ( ) )
* pBool = * ( sal_Bool * ) rValue . getValue ( ) ;
else
2007-06-05 16:32:51 +00:00
throw lang : : IllegalArgumentException ( ) ;
2001-10-24 17:56:14 +00:00
}
2000-09-18 23:08:29 +00:00
}
else
throw uno : : RuntimeException ( ) ;
}
uno : : Any SwXTextField : : getPropertyValue ( const OUString & rPropertyName )
2007-06-05 16:32:51 +00:00
throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
uno : : Any aRet ;
const SwField * pField = GetField ( ) ;
2009-06-03 11:26:39 +00:00
const SfxItemPropertySet * _pPropSet = aSwMapProvider . GetPropertySet (
2001-10-24 17:56:14 +00:00
lcl_GetPropertyMapOfService ( m_nServiceId ) ) ;
2009-06-03 11:26:39 +00:00
const SfxItemPropertySimpleEntry * pEntry = _pPropSet - > getPropertyMap ( ) - > getByName ( rPropertyName ) ;
if ( ! pEntry )
2000-09-18 23:08:29 +00:00
{
2009-06-03 11:26:39 +00:00
const SfxItemPropertySet * _pParaPropSet = aSwMapProvider . GetPropertySet ( PROPERTY_MAP_PARAGRAPH_EXTENSIONS ) ;
pEntry = _pParaPropSet - > getPropertyMap ( ) - > getByName ( rPropertyName ) ;
2000-09-18 23:08:29 +00:00
}
2009-06-03 11:26:39 +00:00
if ( ! pEntry )
2007-06-05 16:32:51 +00:00
throw beans : : UnknownPropertyException ( OUString ( RTL_CONSTASCII_USTRINGPARAM ( " Unknown property: " ) ) + rPropertyName , static_cast < cppu : : OWeakObject * > ( this ) ) ;
2001-10-24 17:56:14 +00:00
2009-06-03 11:26:39 +00:00
switch ( pEntry - > nWID )
2000-09-18 23:08:29 +00:00
{
2001-10-24 17:56:14 +00:00
case FN_UNO_TEXT_WRAP :
2007-06-05 16:32:51 +00:00
aRet < < = text : : WrapTextMode_NONE ;
2001-10-24 17:56:14 +00:00
break ;
case FN_UNO_ANCHOR_TYPE :
2007-06-05 16:32:51 +00:00
aRet < < = text : : TextContentAnchorType_AS_CHARACTER ;
2001-10-24 17:56:14 +00:00
break ;
case FN_UNO_ANCHOR_TYPES :
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < text : : TextContentAnchorType > aTypes ( 1 ) ;
text : : TextContentAnchorType * pArray = aTypes . getArray ( ) ;
pArray [ 0 ] = text : : TextContentAnchorType_AS_CHARACTER ;
aRet . setValue ( & aTypes , : : getCppuType ( static_cast < uno : : Sequence < text : : TextContentAnchorType > * > ( 0 ) ) ) ;
2001-10-24 17:56:14 +00:00
}
break ;
default :
if ( pField )
2005-10-05 12:22:06 +00:00
{
2009-06-03 11:26:39 +00:00
if ( FIELD_PROP_IS_FIELD_USED = = pEntry - > nWID | |
FIELD_PROP_IS_FIELD_DISPLAYED = = pEntry - > nWID )
2005-10-05 12:22:06 +00:00
{
sal_Bool bIsFieldUsed = sal_False ;
sal_Bool bIsFieldDisplayed = sal_False ;
// in order to have the information about fields
// correctly evaluated the document needs a layout
// (has to be already formatted)
SwDoc * pDoc = GetDoc ( ) ;
ViewShell * pViewShell = 0 ;
SwEditShell * pEditShell = pDoc ? pDoc - > GetEditShell ( & pViewShell ) : 0 ;
if ( pEditShell )
pEditShell - > CalcLayout ( ) ;
else if ( pViewShell ) // a page preview has no SwEditShell it should only have a view shell
pViewShell - > CalcLayout ( ) ;
else
throw uno : : RuntimeException ( ) ;
// get text node for the text field
const SwFmtFld * pFldFmt = GetFldFmt ( ) ;
const SwTxtFld * pTxtFld = pFldFmt ? pFmtFld - > GetTxtFld ( ) : 0 ;
if ( ! pTxtFld )
throw uno : : RuntimeException ( ) ;
const SwTxtNode & rTxtNode = pTxtFld - > GetTxtNode ( ) ;
// skip fields that are currently not in the document
// e.g. fields in undo or redo array
if ( rTxtNode . GetNodes ( ) . IsDocNodes ( ) )
{
sal_Bool bFrame = 0 ! = rTxtNode . FindLayoutRect ( ) . Width ( ) ; // oder so
sal_Bool bHidden = rTxtNode . IsHidden ( ) ;
if ( ! bHidden )
{
xub_StrLen nHiddenStart ;
xub_StrLen nHiddenEnd ;
2009-08-26 11:47:12 +00:00
SwPosition aPosition ( pTxtFld - > GetTxtNode ( ) ) ;
aPosition . nContent = * pTxtFld - > GetStart ( ) ;
2005-10-05 12:22:06 +00:00
2009-08-26 11:47:12 +00:00
bHidden = SwScriptInfo : : GetBoundsOfHiddenRange ( pTxtFld - > GetTxtNode ( ) ,
* pTxtFld - > GetStart ( ) ,
2005-10-05 12:22:06 +00:00
nHiddenStart , nHiddenEnd ) ;
}
// !bFrame && !bHidden: aller Wahrscheinlichkeit handelt es
// sich um ein Feld in einem unbenutzten Seitenstyle
//
// bHidden: Feld ist versteckt
// FME: Problem: Verstecktes Feld in unbenutzter Seitenvorlage =>
// bIsFieldUsed = true
// bIsFieldDisplayed = false
bIsFieldUsed = bFrame | | bHidden ;
bIsFieldDisplayed = bIsFieldUsed & & ! bHidden ;
}
2009-06-03 11:26:39 +00:00
sal_Bool bRetVal = ( FIELD_PROP_IS_FIELD_USED = = pEntry - > nWID ) ?
2005-10-05 12:22:06 +00:00
bIsFieldUsed : bIsFieldDisplayed ;
aRet . setValue ( & bRetVal , : : getCppuBooleanType ( ) ) ;
}
else
2009-06-03 11:26:39 +00:00
pField - > QueryValue ( aRet , pEntry - > nWID ) ;
2005-10-05 12:22:06 +00:00
}
else if ( m_pProps ) // currently just a descriptor...
2000-09-18 23:08:29 +00:00
{
2009-06-03 11:26:39 +00:00
switch ( pEntry - > nWID )
2001-10-24 17:56:14 +00:00
{
2008-02-19 12:49:44 +00:00
case FIELD_PROP_TEXT :
{
if ( ! m_pTextObject )
{
2008-07-01 13:35:26 +00:00
SwTextAPIEditSource * pObj = new SwTextAPIEditSource ( m_pDoc ) ;
2008-02-19 12:49:44 +00:00
m_pTextObject = new SwTextAPIObject ( pObj ) ;
m_pTextObject - > acquire ( ) ;
}
uno : : Reference < text : : XText > xText ( m_pTextObject ) ;
aRet < < = xText ;
break ;
}
2000-09-18 23:08:29 +00:00
case FIELD_PROP_PAR1 :
aRet < < = OUString ( m_pProps - > sPar1 ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_PAR2 :
aRet < < = OUString ( m_pProps - > sPar2 ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-11-10 12:49:21 +00:00
case FIELD_PROP_PAR3 :
aRet < < = OUString ( m_pProps - > sPar3 ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-11-10 12:49:21 +00:00
case FIELD_PROP_PAR4 :
aRet < < = OUString ( m_pProps - > sPar4 ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_FORMAT :
aRet < < = m_pProps - > nFormat ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_SUBTYPE :
aRet < < = m_pProps - > nSubType ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_BYTE1 :
aRet < < = m_pProps - > nByte1 ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_BOOL1 :
aRet . setValue ( & m_pProps - > bBool1 , : : getCppuBooleanType ( ) ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_BOOL2 :
aRet . setValue ( & m_pProps - > bBool2 , : : getCppuBooleanType ( ) ) ;
2001-10-24 17:56:14 +00:00
break ;
2002-11-15 10:17:38 +00:00
case FIELD_PROP_BOOL3 :
aRet . setValue ( & m_pProps - > bBool3 , : : getCppuBooleanType ( ) ) ;
break ;
case FIELD_PROP_BOOL4 :
aRet . setValue ( & m_pProps - > bBool4 , : : getCppuBooleanType ( ) ) ;
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_DATE :
2007-06-05 16:32:51 +00:00
aRet . setValue ( & m_pProps - > aDate , : : getCppuType ( static_cast < const util : : Date * > ( 0 ) ) ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_USHORT1 :
aRet < < = ( sal_Int16 ) m_pProps - > nUSHORT1 ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_USHORT2 :
aRet < < = ( sal_Int16 ) m_pProps - > nUSHORT2 ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_SHORT1 :
aRet < < = m_pProps - > nSHORT1 ;
2001-10-24 17:56:14 +00:00
break ;
2000-09-18 23:08:29 +00:00
case FIELD_PROP_DOUBLE :
aRet < < = m_pProps - > fDouble ;
2001-10-24 17:56:14 +00:00
break ;
2000-11-17 15:24:47 +00:00
case FIELD_PROP_DATE_TIME :
if ( m_pProps - > pDateTime )
aRet < < = ( * m_pProps - > pDateTime ) ;
2001-10-24 17:56:14 +00:00
break ;
2000-11-22 14:23:00 +00:00
case FIELD_PROP_PROP_SEQ :
aRet < < = m_pProps - > aPropSeq ;
2001-10-24 17:56:14 +00:00
break ;
2003-06-30 14:52:29 +00:00
case FIELD_PROP_STRINGS :
aRet < < = m_pProps - > aStrings ;
break ;
2005-10-05 12:22:06 +00:00
case FIELD_PROP_IS_FIELD_USED :
case FIELD_PROP_IS_FIELD_DISPLAYED :
aRet . setValue ( sal_False , : : getCppuBooleanType ( ) ) ;
break ;
2001-10-24 17:56:14 +00:00
}
2000-09-18 23:08:29 +00:00
}
2001-10-24 17:56:14 +00:00
else
throw uno : : RuntimeException ( ) ;
2000-09-18 23:08:29 +00:00
}
return aRet ;
}
2007-09-27 08:36:28 +00:00
void SwXTextField : : addPropertyChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XPropertyChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXTextField : : removePropertyChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XPropertyChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXTextField : : addVetoableChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XVetoableChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2007-09-27 08:36:28 +00:00
void SwXTextField : : removeVetoableChangeListener ( const OUString & /*PropertyName*/ , const uno : : Reference < beans : : XVetoableChangeListener > & /*aListener*/ ) throw ( beans : : UnknownPropertyException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2011-05-08 22:14:45 +02:00
OSL_FAIL ( " not implemented " ) ;
2000-09-18 23:08:29 +00:00
}
2001-03-23 12:37:54 +00:00
2007-06-05 16:32:51 +00:00
void SwXTextField : : update ( ) throw ( uno : : RuntimeException )
2001-03-23 12:37:54 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2001-03-23 12:37:54 +00:00
const SwField * pFld = GetField ( ) ;
if ( pFld )
{
switch ( pFld - > Which ( ) )
{
case RES_DATETIMEFLD :
2003-04-01 14:21:47 +00:00
( ( SwDateTimeField * ) pFld ) - > SetDateTime ( : : DateTime ( ) ) ;
2001-03-23 12:37:54 +00:00
break ;
case RES_EXTUSERFLD :
{
SwExtUserField * pExtUserFld = ( SwExtUserField * ) pFld ;
pExtUserFld - > SetExpansion ( ( ( SwExtUserFieldType * ) pFld - > GetTyp ( ) ) - > Expand (
pExtUserFld - > GetSubType ( ) ,
pExtUserFld - > GetFormat ( ) ) ) ;
}
break ;
case RES_AUTHORFLD :
{
SwAuthorField * pAuthorFld = ( SwAuthorField * ) pFld ;
pAuthorFld - > SetExpansion ( ( ( SwAuthorFieldType * ) pFld - > GetTyp ( ) ) - > Expand (
pAuthorFld - > GetFormat ( ) ) ) ;
}
break ;
case RES_FILENAMEFLD :
{
SwFileNameField * pFileNameFld = ( SwFileNameField * ) pFld ;
pFileNameFld - > SetExpansion ( ( ( SwFileNameFieldType * ) pFld - > GetTyp ( ) ) - > Expand (
pFileNameFld - > GetFormat ( ) ) ) ;
}
break ;
case RES_DOCINFOFLD :
{
SwDocInfoField * pDocInfFld = ( SwDocInfoField * ) pFld ;
pDocInfFld - > SetExpansion ( ( ( SwDocInfoFieldType * ) pFld - > GetTyp ( ) ) - > Expand (
pDocInfFld - > GetSubType ( ) ,
pDocInfFld - > GetFormat ( ) ,
2007-11-26 14:29:51 +00:00
pDocInfFld - > GetLanguage ( ) ,
pDocInfFld - > GetName ( ) ) ) ;
2001-03-23 12:37:54 +00:00
}
break ;
}
2004-11-27 08:01:50 +00:00
// Text formatting has to be triggered.
2010-12-17 09:02:23 +01:00
const_cast < SwFmtFld * > ( pFmtFld ) - > ModifyNotification ( 0 , 0 ) ;
2001-03-23 12:37:54 +00:00
}
2001-03-23 14:29:03 +00:00
else
m_bCallUpdate = sal_True ;
2001-03-23 12:37:54 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
OUString SwXTextField : : getImplementationName ( void ) throw ( uno : : RuntimeException )
{
return C2U ( " SwXTextField " ) ;
}
2007-01-30 14:22:46 +00:00
static OUString OldNameToNewName_Impl ( const OUString & rOld )
{
2010-10-27 11:38:46 +01:00
static OUString aOldNamePart1 ( RTL_CONSTASCII_USTRINGPARAM ( " .TextField.DocInfo. " ) ) ;
static OUString aOldNamePart2 ( RTL_CONSTASCII_USTRINGPARAM ( " .TextField. " ) ) ;
static OUString aNewNamePart1 ( RTL_CONSTASCII_USTRINGPARAM ( " .textfield.docinfo. " ) ) ;
static OUString aNewNamePart2 ( RTL_CONSTASCII_USTRINGPARAM ( " .textfield. " ) ) ;
2007-01-30 14:22:46 +00:00
OUString sServiceNameCC ( rOld ) ;
sal_Int32 nIdx = sServiceNameCC . indexOf ( aOldNamePart1 ) ;
if ( nIdx > = 0 )
sServiceNameCC = sServiceNameCC . replaceAt ( nIdx , aOldNamePart1 . getLength ( ) , aNewNamePart1 ) ;
nIdx = sServiceNameCC . indexOf ( aOldNamePart2 ) ;
if ( nIdx > = 0 )
sServiceNameCC = sServiceNameCC . replaceAt ( nIdx , aOldNamePart2 . getLength ( ) , aNewNamePart2 ) ;
return sServiceNameCC ;
}
2000-09-18 23:08:29 +00:00
sal_Bool SwXTextField : : supportsService ( const OUString & rServiceName ) throw ( uno : : RuntimeException )
{
OUString sServiceName = SwXServiceProvider : : GetProviderName ( m_nServiceId ) ;
2007-01-30 14:22:46 +00:00
// case-corected version of service-name (see #i67811)
// (need to supply both because of compatibility to older versions)
OUString sServiceNameCC ( OldNameToNewName_Impl ( sServiceName ) ) ;
return sServiceName = = rServiceName | | sServiceNameCC = = rServiceName | |
2001-11-06 07:37:32 +00:00
rServiceName . equalsAsciiL (
RTL_CONSTASCII_STRINGPARAM ( " com.sun.star.text.TextContent " ) ) ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
uno : : Sequence < OUString > SwXTextField : : getSupportedServiceNames ( void ) throw ( uno : : RuntimeException )
{
OUString sServiceName = SwXServiceProvider : : GetProviderName ( m_nServiceId ) ;
2007-01-30 14:22:46 +00:00
// case-corected version of service-name (see #i67811)
// (need to supply both because of compatibility to older versions)
OUString sServiceNameCC ( OldNameToNewName_Impl ( sServiceName ) ) ;
sal_Int32 nLen = sServiceName = = sServiceNameCC ? 2 : 3 ;
uno : : Sequence < OUString > aRet ( nLen ) ;
OUString * pArray = aRet . getArray ( ) ;
* pArray + + = sServiceName ;
if ( nLen = = 3 )
* pArray + + = sServiceNameCC ;
* pArray + + = C2U ( " com.sun.star.text.TextContent " ) ;
2000-09-18 23:08:29 +00:00
return aRet ;
}
2001-04-03 14:07:00 +00:00
void SwXTextField : : Invalidate ( )
{
if ( GetRegisteredIn ( ) )
{
( ( SwModify * ) GetRegisteredIn ( ) ) - > Remove ( this ) ;
aLstnrCntnr . Disposing ( ) ;
pFmtFld = 0 ;
m_pDoc = 0 ;
}
}
2010-12-17 09:02:23 +01:00
void SwXTextField : : Modify ( const SfxPoolItem * pOld , const SfxPoolItem * pNew )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
switch ( pOld ? pOld - > Which ( ) : 0 )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
case RES_REMOVE_UNO_OBJECT :
case RES_OBJECTDYING :
if ( ( void * ) GetRegisteredIn ( ) = = ( ( SwPtrMsgPoolItem * ) pOld ) - > pObject )
Invalidate ( ) ;
break ;
case RES_FMT_CHG :
// wurden wir an das neue umgehaengt und wird das alte geloscht?
if ( ( ( SwFmtChg * ) pNew ) - > pChangedFmt = = GetRegisteredIn ( ) & &
( ( SwFmtChg * ) pOld ) - > pChangedFmt - > IsFmtInDTOR ( ) )
Invalidate ( ) ;
break ;
case RES_FIELD_DELETED :
if ( ( void * ) pFmtFld = = ( ( SwPtrMsgPoolItem * ) pOld ) - > pObject )
Invalidate ( ) ;
break ;
2000-09-18 23:08:29 +00:00
}
}
const SwField * SwXTextField : : GetField ( ) const
{
2001-04-03 14:07:00 +00:00
if ( GetRegisteredIn ( ) & & pFmtFld )
return pFmtFld - > GetFld ( ) ;
2000-09-18 23:08:29 +00:00
return 0 ;
}
2004-05-18 13:09:14 +00:00
2000-09-18 23:08:29 +00:00
/******************************************************************
* SwXTextFieldMasters
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2007-06-05 16:32:51 +00:00
OUString SwXTextFieldMasters : : getImplementationName ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
return C2U ( " SwXTextFieldMasters " ) ;
}
2011-01-03 20:35:28 +00:00
sal_Bool SwXTextFieldMasters : : supportsService ( const OUString & rServiceName ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
return rServiceName . equalsAsciiL ( RTL_CONSTASCII_STRINGPARAM (
" com.sun.star.text.TextFieldMasters " ) ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > SwXTextFieldMasters : : getSupportedServiceNames ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > aRet ( 1 ) ;
2000-09-18 23:08:29 +00:00
OUString * pArray = aRet . getArray ( ) ;
pArray [ 0 ] = C2U ( " com.sun.star.text.TextFieldMasters " ) ;
return aRet ;
}
2007-09-27 08:36:28 +00:00
SwXTextFieldMasters : : SwXTextFieldMasters ( SwDoc * _pDoc ) :
SwUnoCollection ( _pDoc )
2000-09-18 23:08:29 +00:00
{
}
SwXTextFieldMasters : : ~ SwXTextFieldMasters ( )
{
}
2010-10-13 16:04:59 +05:30
2011-01-17 21:50:08 +01:00
/*-----------------------------------------------------------------------
2000-09-18 23:08:29 +00:00
Iteration ueber nicht - Standard Feldtypen
USER / SETEXP / DDE / DATABASE
Der Name ist demnach :
2007-01-30 14:22:46 +00:00
" com.sun.star.text.fieldmaster.User " + < Feltypname >
" com.sun.star.text.fieldmaster.DDE " + < Feltypname >
" com.sun.star.text.fieldmaster.SetExpression " + < Feltypname >
" com.sun.star.text.fieldmaster.DataBase " + < Feltypname >
2000-09-18 23:08:29 +00:00
Falls wir grosszuegig werden wollen , dann koennte man com . sun . star . text
auch optional weglassen
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
2001-11-06 07:37:32 +00:00
sal_uInt16 lcl_GetIdByName ( String & rName , String & rTypeName )
2000-09-18 23:08:29 +00:00
{
2007-01-30 14:22:46 +00:00
if ( rName . EqualsAscii ( COM_TEXT_FLDMASTER , 0 , RTL_CONSTASCII_LENGTH ( COM_TEXT_FLDMASTER ) )
| | rName . EqualsAscii ( COM_TEXT_FLDMASTER_CC , 0 , RTL_CONSTASCII_LENGTH ( COM_TEXT_FLDMASTER_CC ) ) )
2001-11-06 07:37:32 +00:00
rName . Erase ( 0 , 30 ) ;
2000-09-18 23:08:29 +00:00
sal_uInt16 nResId = USHRT_MAX ;
xub_StrLen nFound = 0 ;
2001-11-06 07:37:32 +00:00
rTypeName = rName . GetToken ( 0 , ' . ' , nFound ) ;
if ( rTypeName . EqualsAscii ( " User " ) )
2000-09-18 23:08:29 +00:00
nResId = RES_USERFLD ;
2001-11-06 07:37:32 +00:00
else if ( rTypeName . EqualsAscii ( " DDE " ) )
2000-09-18 23:08:29 +00:00
nResId = RES_DDEFLD ;
2001-11-06 07:37:32 +00:00
else if ( rTypeName . EqualsAscii ( " SetExpression " ) )
2000-11-07 08:58:56 +00:00
{
2000-09-18 23:08:29 +00:00
nResId = RES_SETEXPFLD ;
2001-11-06 07:37:32 +00:00
2002-07-04 07:05:55 +00:00
String sFldTypName ( rName . GetToken ( 1 , ' . ' ) ) ;
2005-03-08 12:54:32 +00:00
String sUIName ( SwStyleNameMapper : : GetSpecialExtraUIName ( sFldTypName ) ) ;
2002-07-04 07:05:55 +00:00
2001-11-06 07:37:32 +00:00
if ( sUIName ! = sFldTypName )
rName . SetToken ( 1 , ' . ' , sUIName ) ;
2000-11-07 08:58:56 +00:00
}
2001-11-06 07:37:32 +00:00
else if ( rTypeName . EqualsAscii ( " DataBase " ) )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
rName . Erase ( 0 , RTL_CONSTASCII_LENGTH ( " DataBase. " ) ) ;
2011-01-17 15:06:54 +01:00
sal_uInt16 nDotCount = rName . GetTokenCount ( ' . ' ) ;
2001-11-21 12:28:48 +00:00
if ( 2 < = nDotCount )
2001-11-06 07:37:32 +00:00
{
2005-07-18 11:25:55 +00:00
// #i51815#
//rName.SearchAndReplace('.', DB_DELIM);
//rName.SetChar( rName.SearchBackward( '.' ), DB_DELIM );
2001-11-06 07:37:32 +00:00
rName . InsertAscii ( " DataBase. " , 0 ) ;
nResId = RES_DBFLD ;
}
2000-09-18 23:08:29 +00:00
}
2001-11-06 07:37:32 +00:00
else if ( rTypeName . EqualsAscii ( " Bibliography " ) )
2000-12-06 10:15:25 +00:00
nResId = RES_AUTHORITY ;
2001-11-06 07:37:32 +00:00
return nResId ;
}
uno : : Any SwXTextFieldMasters : : getByName ( const OUString & rName )
2007-06-05 16:32:51 +00:00
throw ( container : : NoSuchElementException , lang : : WrappedTargetException , uno : : RuntimeException )
2001-11-06 07:37:32 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2001-11-06 07:37:32 +00:00
if ( ! GetDoc ( ) )
throw uno : : RuntimeException ( ) ;
String sName ( rName ) , sTypeName ;
sal_uInt16 nResId = lcl_GetIdByName ( sName , sTypeName ) ;
if ( USHRT_MAX = = nResId )
2007-06-05 16:32:51 +00:00
throw container : : NoSuchElementException ( ) ;
2000-09-18 23:08:29 +00:00
2001-11-06 07:37:32 +00:00
sName . Erase ( 0 , sTypeName . Len ( ) + 1 ) ;
2005-07-18 11:25:55 +00:00
SwFieldType * pType = GetDoc ( ) - > GetFldType ( nResId , sName , sal_True ) ;
2000-09-18 23:08:29 +00:00
if ( ! pType )
2007-06-05 16:32:51 +00:00
throw container : : NoSuchElementException ( ) ;
2010-12-17 09:02:23 +01:00
SwXFieldMaster * pMaster = SwIterator < SwXFieldMaster , SwFieldType > : : FirstElement ( * pType ) ;
2000-09-18 23:08:29 +00:00
if ( ! pMaster )
pMaster = new SwXFieldMaster ( * pType , GetDoc ( ) ) ;
2007-06-05 16:32:51 +00:00
uno : : Reference < beans : : XPropertySet > aRef = pMaster ;
uno : : Any aRet ( & aRef , : : getCppuType ( static_cast < const uno : : Reference < beans : : XPropertySet > * > ( 0 ) ) ) ;
2000-09-18 23:08:29 +00:00
return aRet ;
}
2001-03-08 13:14:56 +00:00
sal_Bool SwXTextFieldMasters : : getInstanceName (
const SwFieldType & rFldType , String & rName )
{
sal_Bool bRet = sal_True ;
2001-10-17 06:55:17 +00:00
switch ( rFldType . Which ( ) )
2001-03-08 13:14:56 +00:00
{
2001-10-17 06:55:17 +00:00
case RES_USERFLD :
2007-01-30 14:22:46 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( COM_TEXT_FLDMASTER_CC ) ) ;
2001-11-06 07:37:32 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( " User. " ) ) ;
2001-03-08 13:14:56 +00:00
rName + = rFldType . GetName ( ) ;
2001-10-17 06:55:17 +00:00
break ;
case RES_DDEFLD :
2007-01-30 14:22:46 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( COM_TEXT_FLDMASTER_CC ) ) ;
2001-11-06 07:37:32 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( " DDE. " ) ) ;
2001-03-08 13:14:56 +00:00
rName + = rFldType . GetName ( ) ;
2001-10-17 06:55:17 +00:00
break ;
case RES_SETEXPFLD :
2007-01-30 14:22:46 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( COM_TEXT_FLDMASTER_CC ) ) ;
2001-11-06 07:37:32 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( " SetExpression. " ) ) ;
2005-03-08 12:54:32 +00:00
rName + = String ( SwStyleNameMapper : : GetSpecialExtraProgName ( rFldType . GetName ( ) ) ) ;
2001-10-17 06:55:17 +00:00
break ;
case RES_DBFLD :
{
2007-01-30 14:22:46 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( COM_TEXT_FLDMASTER_CC ) ) ;
2001-11-06 07:37:32 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( " DataBase. " ) ) ;
2001-10-17 06:55:17 +00:00
String sDBName ( rFldType . GetName ( ) ) ;
sDBName . SearchAndReplaceAll ( DB_DELIM , ' . ' ) ;
rName + = sDBName ;
}
break ;
case RES_AUTHORITY :
2007-01-30 14:22:46 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( COM_TEXT_FLDMASTER_CC ) ) ;
2001-11-06 07:37:32 +00:00
rName . AppendAscii ( RTL_CONSTASCII_STRINGPARAM ( " Bibliography " ) ) ;
2001-10-17 06:55:17 +00:00
break ;
default :
2001-03-08 13:14:56 +00:00
bRet = sal_False ;
2001-10-17 06:55:17 +00:00
}
2001-03-08 13:14:56 +00:00
return bRet ;
}
2000-09-18 23:08:29 +00:00
uno : : Sequence < OUString > SwXTextFieldMasters : : getElementNames ( void )
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! GetDoc ( ) )
throw uno : : RuntimeException ( ) ;
const SwFldTypes * pFldTypes = GetDoc ( ) - > GetFldTypes ( ) ;
sal_uInt16 nCount = pFldTypes - > Count ( ) ;
SvStrings aFldNames ;
2001-03-08 13:14:56 +00:00
String * pString = new String ( ) ;
2003-12-01 16:24:08 +00:00
sal_uInt16 i ;
for ( i = 0 ; i < nCount ; i + + )
2000-09-18 23:08:29 +00:00
{
SwFieldType & rFldType = * ( ( * pFldTypes ) [ i ] ) ;
2001-03-08 13:14:56 +00:00
if ( SwXTextFieldMasters : : getInstanceName ( rFldType , * pString ) )
2000-12-06 10:15:25 +00:00
{
aFldNames . Insert ( pString , aFldNames . Count ( ) ) ;
2001-03-08 13:14:56 +00:00
pString = new String ( ) ;
2000-12-06 10:15:25 +00:00
}
2000-09-18 23:08:29 +00:00
}
2001-03-08 13:14:56 +00:00
delete pString ;
2000-09-18 23:08:29 +00:00
uno : : Sequence < OUString > aSeq ( aFldNames . Count ( ) ) ;
OUString * pArray = aSeq . getArray ( ) ;
for ( i = 0 ; i < aFldNames . Count ( ) ; i + + )
{
pArray [ i ] = * aFldNames . GetObject ( i ) ;
}
aFldNames . DeleteAndDestroy ( 0 , aFldNames . Count ( ) ) ;
return aSeq ;
}
2007-06-05 16:32:51 +00:00
sal_Bool SwXTextFieldMasters : : hasByName ( const OUString & rName ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! GetDoc ( ) )
throw uno : : RuntimeException ( ) ;
2001-11-06 07:37:32 +00:00
String sName ( rName ) , sTypeName ;
sal_uInt16 nResId = lcl_GetIdByName ( sName , sTypeName ) ;
2002-06-17 12:06:17 +00:00
sal_Bool bRet = sal_False ;
if ( USHRT_MAX ! = nResId )
{
sName . Erase ( 0 , sTypeName . Len ( ) + 1 ) ;
2005-07-18 11:25:55 +00:00
bRet = USHRT_MAX ! = nResId & & 0 ! = GetDoc ( ) - > GetFldType ( nResId , sName , sal_True ) ;
2002-06-17 12:06:17 +00:00
}
2000-09-18 23:08:29 +00:00
return bRet ;
}
uno : : Type SwXTextFieldMasters : : getElementType ( void ) throw ( uno : : RuntimeException )
{
2007-06-05 16:32:51 +00:00
return : : getCppuType ( static_cast < const uno : : Reference < beans : : XPropertySet > * > ( 0 ) ) ;
2000-09-18 23:08:29 +00:00
}
sal_Bool SwXTextFieldMasters : : hasElements ( void ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! IsValid ( ) )
throw uno : : RuntimeException ( ) ;
return sal_True ;
}
2007-06-05 16:32:51 +00:00
OUString SwXTextFieldTypes : : getImplementationName ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
return C2U ( " SwXTextFieldTypes " ) ;
}
2011-01-03 20:35:28 +00:00
sal_Bool SwXTextFieldTypes : : supportsService ( const OUString & rServiceName ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
return rServiceName . equalsAsciiL ( RTL_CONSTASCII_STRINGPARAM (
" com.sun.star.text.TextFields " ) ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > SwXTextFieldTypes : : getSupportedServiceNames ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > aRet ( 1 ) ;
2000-09-18 23:08:29 +00:00
OUString * pArray = aRet . getArray ( ) ;
2001-10-05 13:32:40 +00:00
pArray [ 0 ] = C2U ( " com.sun.star.text.TextFields " ) ;
2000-09-18 23:08:29 +00:00
return aRet ;
}
2007-09-27 08:36:28 +00:00
SwXTextFieldTypes : : SwXTextFieldTypes ( SwDoc * _pDoc ) :
SwUnoCollection ( _pDoc ) ,
2002-07-12 09:31:33 +00:00
aRefreshCont ( static_cast < XEnumerationAccess * > ( this ) )
2000-09-18 23:08:29 +00:00
{
}
SwXTextFieldTypes : : ~ SwXTextFieldTypes ( )
{
}
2002-07-12 09:31:33 +00:00
void SwXTextFieldTypes : : Invalidate ( )
{
SwUnoCollection : : Invalidate ( ) ;
aRefreshCont . Disposing ( ) ;
}
2000-09-18 23:08:29 +00:00
2007-06-05 16:32:51 +00:00
uno : : Reference < container : : XEnumeration > SwXTextFieldTypes : : createEnumeration ( void )
2000-09-18 23:08:29 +00:00
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! IsValid ( ) )
throw uno : : RuntimeException ( ) ;
return new SwXFieldEnumeration ( GetDoc ( ) ) ;
}
uno : : Type SwXTextFieldTypes : : getElementType ( void ) throw ( uno : : RuntimeException )
{
2007-06-05 16:32:51 +00:00
return : : getCppuType ( static_cast < const uno : : Reference < text : : XDependentTextField > * > ( 0 ) ) ;
2000-09-18 23:08:29 +00:00
}
sal_Bool SwXTextFieldTypes : : hasElements ( void ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! IsValid ( ) )
throw uno : : RuntimeException ( ) ;
//es gibt sie immer
return sal_True ;
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
void SwXTextFieldTypes : : refresh ( void ) throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
if ( ! IsValid ( ) )
throw uno : : RuntimeException ( ) ;
UnoActionContext aContext ( GetDoc ( ) ) ;
2011-08-23 16:25:52 +01:00
GetDoc ( ) - > UpdateDocStat ( ) ;
2000-09-18 23:08:29 +00:00
GetDoc ( ) - > UpdateFlds ( 0 , sal_False ) ;
2002-07-12 09:31:33 +00:00
// call refresh listeners
aRefreshCont . Refreshed ( ) ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
void SwXTextFieldTypes : : addRefreshListener ( const uno : : Reference < util : : XRefreshListener > & l )
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2002-07-12 09:31:33 +00:00
if ( ! IsValid ( ) )
2007-06-05 16:32:51 +00:00
throw uno : : RuntimeException ( ) ;
aRefreshCont . AddListener ( reinterpret_cast < const uno : : Reference < lang : : XEventListener > & > ( l ) ) ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
void SwXTextFieldTypes : : removeRefreshListener ( const uno : : Reference < util : : XRefreshListener > & l )
throw ( uno : : RuntimeException )
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2007-06-05 16:32:51 +00:00
if ( ! IsValid ( ) | | ! aRefreshCont . RemoveListener ( reinterpret_cast < const uno : : Reference < lang : : XEventListener > & > ( l ) ) )
throw uno : : RuntimeException ( ) ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
/******************************************************************
* SwXFieldEnumeration
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2007-06-05 16:32:51 +00:00
OUString SwXFieldEnumeration : : getImplementationName ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
return C2U ( " SwXFieldEnumeration " ) ;
}
2011-01-03 20:35:28 +00:00
sal_Bool SwXFieldEnumeration : : supportsService ( const OUString & rServiceName ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2001-11-06 07:37:32 +00:00
return rServiceName . equalsAsciiL ( RTL_CONSTASCII_STRINGPARAM (
" com.sun.star.text.FieldEnumeration " ) ) ;
2000-09-18 23:08:29 +00:00
}
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > SwXFieldEnumeration : : getSupportedServiceNames ( void ) throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2007-06-05 16:32:51 +00:00
uno : : Sequence < OUString > aRet ( 1 ) ;
2000-09-18 23:08:29 +00:00
OUString * pArray = aRet . getArray ( ) ;
pArray [ 0 ] = C2U ( " com.sun.star.text.FieldEnumeration " ) ;
return aRet ;
}
2010-10-13 16:04:59 +05:30
2000-09-18 23:08:29 +00:00
SwXFieldEnumeration : : SwXFieldEnumeration ( SwDoc * pDc ) :
2007-09-27 08:36:28 +00:00
nNextIndex ( 0 ) ,
pDoc ( pDc )
2000-09-18 23:08:29 +00:00
{
pDoc - > GetPageDescFromPool ( RES_POOLPAGE_STANDARD ) - > Add ( this ) ;
2002-07-05 07:40:42 +00:00
// build sequence
sal_Int32 nSize = 32 ;
aItems . realloc ( nSize ) ;
2007-06-05 16:32:51 +00:00
uno : : Reference < text : : XTextField > * pItems = aItems . getArray ( ) ;
2002-07-05 07:40:42 +00:00
sal_Int32 nFillPos = 0 ;
//
const SwFldTypes * pFldTypes = pDoc - > GetFldTypes ( ) ;
sal_uInt16 nCount = pFldTypes - > Count ( ) ;
for ( sal_uInt16 nType = 0 ; nType < nCount ; + + nType )
{
const SwFieldType * pCurType = pFldTypes - > GetObject ( nType ) ;
2010-12-17 09:02:23 +01:00
SwIterator < SwFmtFld , SwFieldType > aIter ( * pCurType ) ;
const SwFmtFld * pCurFldFmt = aIter . First ( ) ;
2002-07-05 07:40:42 +00:00
while ( pCurFldFmt )
{
const SwTxtFld * pTxtFld = pCurFldFmt - > GetTxtFld ( ) ;
// skip fields that are currently not in the document
// e.g. fields in undo or redo array
2011-01-17 15:06:54 +01:00
sal_Bool bSkip = ! pTxtFld | |
2002-07-05 07:40:42 +00:00
! pTxtFld - > GetpTxtNode ( ) - > GetNodes ( ) . IsDocNodes ( ) ;
if ( ! bSkip )
pItems [ nFillPos + + ] = new SwXTextField ( * pCurFldFmt , pDoc ) ;
2010-12-17 09:02:23 +01:00
pCurFldFmt = aIter . Next ( ) ;
2002-07-05 07:40:42 +00:00
// enlarge sequence if necessary
if ( aItems . getLength ( ) = = nFillPos )
{
aItems . realloc ( 2 * aItems . getLength ( ) ) ;
pItems = aItems . getArray ( ) ;
}
}
}
CWS-TOOLING: integrate CWS odfmetadata3
2009-09-11 Michael Stahl merge DEV300_m58
2009-09-07 Michael Stahl SwFmtFld::Modify(): do nothing on RES_OBJECTDYING
2009-08-27 Michael Stahl #i91565#, #i91566#: TextPortionEnumerationTest.java: add test document
2009-08-27 Michael Stahl #i91565#, #i91566#: add complex test: TextPortionEnumerationTest.java
2009-08-27 Michael Stahl CLiteral::initialize(): zero-length literals probably not an error
2009-08-27 Michael Stahl #i91565#, #i91566#: offapi: new InContentMetadata and MetadataField services
adapt TextPortion for InContentMetadata
2009-08-27 Michael Stahl #i91564#: xmloff: load/store xml:id and RDFa for text:bookmark(-start).
2009-08-27 Michael Stahl #i91564#: sw core: add support for xml:id at bookmarks:
sw::mark::Bookmark: derive from Metadatable.
SwHistoryBookmark, SaveBookmark: store a MetadatableUndo.
ndcopy.cxx: lcl_CopyBookmarks(): copy the xml:id.
SwXBookmark: derive from MetadatableMixin.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: refactor ruby import so nested meta(-field) works:
remove XMLRubyHint_Impl.
XMLImpRubyContext_Impl::~XMLImpRubyContext_Impl(): insert ruby directly.
2009-08-27 Michael Stahl #i91565#, #i91566#: xmloff: fix text:meta(-field) import/export:
new XMLTextParagraphExport::exportTextField() overload for XTextField.
CreateAndInsertMark(): set xml:id after insertion.
fix meta(-field) service names, bugs etc.
2009-08-27 Michael Stahl #i91565#, #i91566#: sw text formatting: paint background of meta(-field) body:
SwFont: add member m_nMetaCount.
txttypes.hxx: add POR_META.
atrstck.cxx: handle RES_TXTATR_META(FIELD).
itrform2.cxx: SwTxtFormatter::WhichTxtPor(): create new class SwMetaPortion.
2009-08-27 Michael Stahl #i91566#: sw text formatting: display meta-field prefix and suffix:
SwAttrIter::GetAttr(): replace with call to GetTxtAttrForCharAt().
SwTxtFormatter::NewExtraPortion(): handle meta-field prefix.
SwTxtFormatter: new member m_nHintEndIndex.
SwTxtFormatter::WhichFirstPortion(): call TryNewNoLengthPortion().
SwTxtFormatter::TryNewNoLengthPortion(): new; handle suffix of meta-field.
SwTxtFormatter::UnderFlow(): UGLY HACK: decrement m_nHintEndIndex.
SwFldPortion: add flag m_bNoLength: portion has zero length (for suffix).
2009-08-27 Michael Stahl #i91565#, #i91566#: extend text:meta(-field) uno wrapper with XText interface:
unoobj.hxx: new CursorType CURSOR_META.
unoobj2.cxx: refactor SwXText implementation to ensure that when the SwXText
belongs to a SwXMeta, content is always inserted inside the meta(-field).
unoobj.cxx: new SwXTextCursor::ForceIntoMeta(): cursor stays in meta(-field).
unometa.hxx: SwXMeta implements XText, forwarding to a member SwXMetaText.
DocInsertStringSplitCR(), SwX*::attachToRange(), SwX*::DeleteAndInsert():
use FORCEHINTEXPAND hack to ensure insert into the meta(-field) at the end.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) uno wrapper to sw:
fmtmeta.hxx, fmtatr2.cxx: new class sw::MetaField, new sw::MetaFieldManager.
doc.hxx, docnew.cxx: new SwDoc::GetMetaFieldManager().
unocoll.hxx,.cxx: new SW_SERVICE_FIELDTYPE_METAFIELD, SW_SERVICE_TYPE_META.
unomap.hxx,.cxx: new PROPERTY_MAP_METAFIELD.
unoprnms.hxx: new UNO_NAME_META.
unoport.hxx: new PORTION_META; add "InContentMetadata" prop to SwXTextPortion.
new unometa.hxx: new class SwXMeta and SwXMetaField.
unofield.cxx: SwXFieldEnumeration: include meta-fields.
unoportenum.cxx: handle RES_TXTATR_META(FIELD) by using a portion list stack.
unotext.cxx: SwXText::insertTextContent(): handle meta(-field) as attribute.
2009-08-27 Michael Stahl #i91565#, #i91566#: ndhints.cxx: remove sort number from SwTxtAttrNesting
2009-08-27 Michael Stahl #i91565#, #i91566#: add support for hints with end and CH_TXTATR to sw core:
doc.hxx, docedt.cxx: replace SwDoc::Delete(), DeleteAndJoin(), ReplaceRange()
with wrappers that split at left-overlapped end+CH_TXTATR hints.
txatbase.hxx: new member SwTxtAttr::m_bHasDummyChar.
ndtxt.hxx: rename SwTxtNode::GetTxtAttr() to GetTxtAttrForCharAt().
ndtxt.cxx: SwTxtNode::CopyText(): copy end+CH_TXTATR hints iff copy CH_TXTATR.
txtatr2.cxx, thints.cxx: SwTxtMeta gets a CH_TXTATR.
2009-08-27 Michael Stahl #i91565#, #i91566#: add text:meta(-field) to sw core:
txatbase.hxx: new member SwTxtAttr::m_bNesting.
hintids.hxx: new ids RES_TXTATR_META, RES_TXTATR_METAFIELD.
txtatr.hxx: new base class SwTxtAttrNesting.
new hint SwTxtMeta.
SwTxtRuby derives from SwTxtAttrNesting.
txtinet.hxx: SwTxtINetFmt derives from SwTxtAttrNesting.
new header fmtmeta.hxx: new pool item SwFmtMeta. new class sw::Meta.
ndhints.hxx, thints.cxx: new method SwpHints::TryInsertNesting().
thints.cxx: refactoring: BuildPortions() no longer handles Ruby/Hyperlink,
but TryInsertNesting(), which also handles meta(-field).
SwTxtNode::InsertItem(): check if the hint is actually inserted.
ndhints.cxx: sort nesting hints based on sort number.
ndtxt.cxx: lcl_CopyHint(): handle copy of meta/meta-field.
2009-08-27 Michael Stahl enable expanding hints with m_bLockExpandFlag set:
add new InsertFlag: INS_FORCEHINTEXPAND.
add new SetAttrMode: SETATTR_FORCEHINTEXPAND.
rename SwEditShell::Insert() to Insert2() because changed signature fails
to compile when SwWrtShell tries to overwrite these non-virtual members...
SwWrtShell::Insert() sets FOCEHINTEXPAND if range was selected/deleted.
adapt SwUndoInsert to store flags.
2009-08-27 Michael Stahl change formal parameters of item insertion methods to type SetAttrMode
2009-08-27 Michael Stahl fix incorrect resetting of text attributes in SwUndoInsSection, SwUndoInserts
2009-08-27 Michael Stahl clean up SwTxtNode::CutImpl() and lcl_CopyHint()
2009-08-27 Michael Stahl rename SwDoc::Copy() to CopyRange(), and _Copy() to CopyImpl()
2009-08-27 Michael Stahl rename SwNodes::Move() to MoveRange(), and remove unused parameter
2009-08-27 Michael Stahl rename SwDoc::Move() to MoveRange()/MoveNodeRange()
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertString(), and remove sal_Unicode variant
2009-08-27 Michael Stahl rename SwDoc::Insert() to InsertPoolItem()/InsertItemSet()/InsertSwSection()
2009-08-27 Michael Stahl rename SwDoc::Replace() to ReplaceRange()
2009-08-27 Michael Stahl remove SwDoc::Overwrite() sal_Unicode variant
2009-08-27 Michael Stahl split up SwDoc::DeleteAndJoin(): factor out DeleteAndJoinWithRedline()
2009-08-27 Michael Stahl rename overloaded SwDoc::Delete() to DeleteRange()/DeleteTOXMark()
2009-08-27 Michael Stahl rename SwTxtNode::Copy() to CopyText()
2009-08-27 Michael Stahl rename SwTxtNode::Cut() to CutText(), and _Cut() to CutImpl()
2009-08-27 Michael Stahl rename SwTxtNode::Delete() to DeleteAttribute()/DeleteAttributes()
2009-08-27 Michael Stahl rename SwTxtNode::Replace() to ReplaceText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl rename SwTxtNode::Erase() to EraseText()
2009-08-27 Michael Stahl rename SwTxtNode::Insert() to InsertText(), and remove the xub_Unicode variant
2009-08-27 Michael Stahl clean up SwTxtNode::Update()
2009-08-27 Michael Stahl remove SwTxtAttr::RemoveFromPool() and make destructor non-public,
to be invoked by new method SwTxtAttr::Destroy()
2009-08-27 Michael Stahl ensure that SwDoc::Insert() for item (set) returns success indicator:
replace SwRegHistory constructor with method InsertItems(), returning bool.
refactor InsAttr() so that it checks if InsertItems() succeeds.
2009-08-27 Michael Stahl move SwXTextPortionEnumeration from unoobj.hxx to unoport.hxx
2009-08-27 Michael Stahl add missing SolarMutex in SwXTextPortion methods
2009-08-27 Michael Stahl SwXTextPortion: new member m_xTextField (so the TextField property need not
be returned indirectly via SwUnoCursorHelper).
factor out function CreateSwXTextField().
2009-08-27 Michael Stahl SwXTextPortion: remove PORTION_CONTROL_CHAR and implementation of XTextField
2009-08-27 Michael Stahl remove obsolete hint SwTxtHardBlank and formats SwFmtHardBlank/SwFmtSoftHyph
2009-08-27 Michael Stahl clean up SwTxtAttr and friends:
remove many accessor methods for obsolete (due to autofmt) char format items.
remove unused flag SwTxtAttr::m_bDontMergeAttr.
MakeRedlineTxtAttr() now dedicated function, no longer calls MakeTxtAttr().
2009-08-27 Michael Stahl remove obsolete attribute SwTxt2Lines
2009-08-27 Michael Stahl SwXTextPortionEnumeration: finish refactoring CreatePortions
change ExportHints so it always returns a text portion for hint w/ CH_TXTATR.
remove special case for handling end of paragraph.
unfortunately had to refactor the fieldmarks export as well (got in the way).
2009-08-27 Michael Stahl SwXTextPortionEnumeration: refactor CreatePortions: frames export
extract function ExportFrames() from CreatePortions().
remove (un)dead code that calls evil MovePara(fnParaCurr, fnParaEnd)
2009-08-27 Michael Stahl clean up SwXParaFrameEnumeration
2009-08-27 Michael Stahl CollectFrameAtNode: replace SwDependArr with STL based FrameDependList_t
2009-08-27 Michael Stahl SwXTextPortionEnumeration: tweak refmark/toxmark export
so ExportHints returns the portion for point marks
2009-08-27 Michael Stahl clean up SwXTextPortionEnumeration:
prefix members, remove casts, replace SvWeirdArray with STL, etc.
make CreatePortions() method a function, and remove lots of members.
extract fieldmarks function from CreatePortions.
2009-08-27 Michael Stahl remove FOREACHUNOPAM_START/END macros
2009-08-27 Michael Stahl clean up SwXTextPortion:
prefix members, remove casts, etc.
remove SwXRubyPortion: replace it with another SwXTextPortion constructor
2009-08-27 Michael Stahl #i102541# SwXReferenceMark::InsertRefMark(): use flag SETATTR_DONTEXPAND
2009-08-27 Michael Stahl rename SwTxtNode::Insert to SwTxtNode::InsertHint, and
fix constness in SwTxtNode::InsertItem
2009-08-27 Michael Stahl turn SwTxtNode::MakeTxtAttr() methods into global functions in ndhints.hxx
2009-08-27 Michael Stahl remove obsolete sw/inc/bookmrk.hxx
2009-08-27 Michael Stahl pam.cxx: fix ComparePosition functions (returned wrong result in one case)
2009-08-27 Michael Stahl #i103613# only import RDF metadata on normal open of a document
2009-09-11 kz CWS-TOOLING: integrate CWS impress176
2009-09-08 20:18:24 +0200 sj r275957 : fixed warning (shadowed variable)
2009-09-08 18:02:05 +0200 cl r275948 : #i104315# added missing tab pages
2009-09-08 17:35:18 +0200 cl r275947 : #i104866# fixed angle import
2009-09-08 17:32:53 +0200 cl r275946 : #i104841# fixed angle import
2009-09-08 17:01:25 +0200 cl r275943 : #i103935# fixed the SID_EVENTCONFIG mess
2009-09-08 14:32:57 +0200 sj r275928 : #i104685# only comments
2009-09-07 12:37:36 +0200 sj r275886 : #i104683# fixed import of bold/italic attributes for normal text shapes
2009-09-04 15:07:46 +0200 sj r275808 : #104689# fixed bullet color problem
2009-09-03 15:25:07 +0200 sj r275753 : #160200# added vertical alignment of table cells
2009-09-11 kz CWS-TOOLING: integrate CWS dv14
2009-09-10 15:16:32 +0200 sg r276035 : #160513# updated wfs scheme to accept ports
2009-09-10 07:41:47 +0200 dv r276019 : #i104942# Better renaming algorithmen
2009-08-31 13:41:11 +0200 dv r275604 : #160505# Setting APP1PRODUCTNAME must not overwrite APP1PRODUCTDEF
2009-09-11 kz CWS-TOOLING: integrate CWS jl131
2009-09-02 16:42:40 +0200 jl r275720 : #i97896#
2009-08-31 13:01:53 +0200 jl r275599 : CWS-TOOLING: rebase CWS jl131 to trunk@275331 (milestone: DEV300:m56)
2009-07-31 14:35:30 +0200 jl r274531 : CWS-TOOLING: rebase CWS jl131 to trunk@274203 (milestone: DEV300:m53)
2009-07-23 14:20:32 +0200 jl r274272 : #i79839# better error text when trying to modify shared layer without having write permission, eg. unopkg add --shared, unopkg remove --shared, unopkg reinstall --shared
2009-07-22 16:38:02 +0200 jl r274252 : #i97896# localize error message for lock file
2009-07-22 16:37:22 +0200 jl r274251 : #i80462# unprecise wording in updatedialog
2009-07-22 16:36:06 +0200 jl r274250 : #i97896# localize error message for lock file
2009-07-22 16:35:20 +0200 jl r274249 : #i97896# localize error message for lock file
2009-07-22 15:07:30 +0200 jl r274242 : #i98873# minimum java version is 1.5 since OOo 3.0
2009-09-11 kz CWS-TOOLING: integrate CWS changehc
2009-08-31 19:38:50 +0200 pl r275633 : remove dbug printf
2009-08-31 17:41:50 +0200 pl r275623 : CWS-TOOLING: rebase CWS changehc to trunk@275331 (milestone: DEV300:m56)
2009-07-15 19:45:46 +0200 pl r274028 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:40:52 +0200 pl r274020 : #i35482# use HC flag to decide high contrast mode
2009-07-15 17:39:50 +0200 pl r274019 : #i35482# update autohc correctly in MergeSystemSettings
2009-07-15 17:38:57 +0200 pl r274018 : #i35482# update autohc correctly in MergeSystemSettings
2009-09-11 kz CWS-TOOLING: integrate CWS notes10
2009-08-24 07:25:57 +0200 mod r275287 : 2009-07-26 02:38:32 +0200 mod r274343 : #i#i103645#
2009-07-26 02:01:53 +0200 mod r274342 : #i103645#
2009-07-26 01:52:42 +0200 mod r274341 : #i103490#
2009-07-22 08:31:48 +0200 mod r274215 : #i103373#
2009-07-15 00:55:11 +0200 mod r273987 : #i101419#
2009-07-14 07:07:55 +0200 mod r273956 : #i101419#
2009-07-14 07:07:43 +0200 mod r273955 : #i101419#
2009-07-14 07:02:10 +0200 mod r273954 : changes from notes9
2009-07-14 06:14:25 +0200 mod r273953 : #i103476#
2009-09-11 kz CWS-TOOLING: integrate CWS ab70
2009-09-10 15:12:54 +0200 jsk r276034 : #i85434# - mandatory automatic update test
2009-09-10 15:11:06 +0200 jsk r276033 : #i85434# - mandatory automatic update test
2009-09-02 09:49:24 +0200 ab r275698 : #i85434# Dialog Import
2009-09-11 kz CWS-TOOLING: integrate CWS hb32bugs02
2009-09-02 Henning Brinkmann #i102420# revert changes
2009-08-26 Henning Brinkmann merged DEV300_m56
2009-08-19 Henning Brinkmann merged DEV300_m55
2009-08-14 Henning Brinkmann merged changes from wntmsci12
2009-08-12 Henning Brinkmann Implemented NoSpaceEdit constructor and destructor in .cxx to allow compile with debug on wntmsci12.
2009-08-12 Henning Brinkmann Added some SW_DLLPUBLIC to make compilable on wntmsci12.
2009-08-11 Henning Brinkmann #i102420# dbg_out: surround output for SwNodes with <nodes-array>.
2009-08-10 Henning Brinkmann #i102420# rewritten debug output for SwNodes.
2009-08-07 Henning Brinkmann #i102420# debug _MoveNodes: output the destination, too. Break after two iterations.
2009-08-07 Henning Brinkmann #i102420# _MoveNodes: Additionally check if destination index is inside source => false
Check if current range was already handled => loop
Debug output current range
2009-08-06 Henning Brinkmann merged DEV300_m54
2009-08-06 Henning Brinkmann added master fix
2009-08-06 Henning Brinkmann debug output for SwNodeRange
2009-08-04 Henning Brinkmann #i102844# robustness: check for NULL pointer to prevent crash
2009-08-03 Henning Brinkmann #i103475# applied patch and verified
2009-08-03 Henning Brinkmann Removed code preventing build of sw with DEBUG.
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 convert-repo update tags
2009-09-10 kz CWS-TOOLING: integrate CWS os2port06dev300
2009-09-05 22:49:00 +0200 ydario r275858 : #i99588# applied os2port06 diff to DEV300 tree.
2009-09-10 kz CWS-TOOLING: integrate CWS mingwport23
2009-08-29 07:07:53 +0200 tono r275555 : i#104522: mingw port graphite
2009-08-29 07:07:26 +0200 tono r275554 : i#104522: mingw port printf format fix
2009-09-10 kz CWS-TOOLING: integrate CWS mh232
2009-08-26 03:52:57 +0200 mh r275385 : #i102182# FreeBSD patch
2009-08-26 03:43:20 +0200 mh r275384 : #i101333# patch for FreeBSD
2009-08-26 03:11:20 +0200 mh r275383 : #i39230
2009-08-26 03:07:51 +0200 mh r275382 : #i39230# more space for initials field
2009-08-26 02:41:19 +0200 mh r275380 : #i39230# use vos::osecurity for reading the user name
2009-08-18 22:06:00 +0200 mh r275130 : #i104243#, line ending problem with newer perl
2009-08-18 21:53:21 +0200 mh r275129 : #i39230# read initials via getpwnam
2009-08-18 21:34:05 +0200 mh r275128 : enable CAIROCANVAS for Linux and Mac, #i88613#
2009-08-17 18:02:59 +0200 mh r275067 : #i95498# make compile with gcc3
2009-09-10 kz CWS-TOOLING: integrate CWS tkr24
2009-09-07 14:31:06 +0200 is r275898 : #160081# adding NO_LICENSE_INTO_COPYRIGHT
2009-09-10 releng #i10000# change KeyMapping to SingletonRef<framework::KeyMapping>
2009-09-11 14:29:45 +00:00
// now handle meta-fields, which are not SwFields
const : : std : : vector < uno : : Reference < text : : XTextField > > MetaFields (
pDc - > GetMetaFieldManager ( ) . getMetaFields ( ) ) ;
for ( size_t i = 0 ; i < MetaFields . size ( ) ; + + i )
{
pItems [ nFillPos ] = MetaFields [ i ] ;
nFillPos + + ;
//FIXME UGLY
// enlarge sequence if necessary
if ( aItems . getLength ( ) = = nFillPos )
{
aItems . realloc ( 2 * aItems . getLength ( ) ) ;
pItems = aItems . getArray ( ) ;
}
}
2002-07-05 07:40:42 +00:00
// resize sequence to actual used size
aItems . realloc ( nFillPos ) ;
2000-09-18 23:08:29 +00:00
}
SwXFieldEnumeration : : ~ SwXFieldEnumeration ( )
{
}
2002-07-05 07:40:42 +00:00
sal_Bool SwXFieldEnumeration : : hasMoreElements ( void )
throw ( uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2002-07-05 07:40:42 +00:00
return nNextIndex < aItems . getLength ( ) ;
2000-09-18 23:08:29 +00:00
}
uno : : Any SwXFieldEnumeration : : nextElement ( void )
2007-06-05 16:32:51 +00:00
throw ( container : : NoSuchElementException , lang : : WrappedTargetException , uno : : RuntimeException )
2000-09-18 23:08:29 +00:00
{
2010-10-13 01:44:10 -05:00
SolarMutexGuard aGuard ;
2000-09-18 23:08:29 +00:00
2002-07-05 07:40:42 +00:00
if ( ! ( nNextIndex < aItems . getLength ( ) ) )
2007-06-05 16:32:51 +00:00
throw container : : NoSuchElementException ( ) ;
2002-07-05 07:40:42 +00:00
2003-04-15 15:58:08 +00:00
# if OSL_DEBUG_LEVEL > 1
2007-06-05 16:32:51 +00:00
uno : : Reference < text : : XTextField > * pItems = aItems . getArray ( ) ;
2007-09-27 08:36:28 +00:00
( void ) pItems ;
2002-07-05 07:40:42 +00:00
# endif
2007-06-05 16:32:51 +00:00
uno : : Reference < text : : XTextField > & rxFld = aItems . getArray ( ) [ nNextIndex + + ] ;
uno : : Any aRet ( & rxFld , : : getCppuType ( static_cast < const uno : : Reference < text : : XTextField > * > ( 0 ) ) ) ;
2002-07-05 07:40:42 +00:00
rxFld = 0 ; // free memory for item that is not longer used
return aRet ;
2000-09-18 23:08:29 +00:00
}
2010-10-13 16:04:59 +05:30
2010-12-17 09:02:23 +01:00
void SwXFieldEnumeration : : Modify ( const SfxPoolItem * pOld , const SfxPoolItem * pNew )
2000-09-18 23:08:29 +00:00
{
ClientModify ( this , pOld , pNew ) ;
if ( ! GetRegisteredIn ( ) )
pDoc = 0 ;
}
2007-06-05 16:32:51 +00:00
String & GetString ( const uno : : Any & rAny , String & rStr )
2001-10-24 17:56:14 +00:00
{
OUString aStr ;
rAny > > = aStr ;
rStr = String ( aStr ) ;
return rStr ;
}
2010-10-14 08:30:41 +02:00
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */