diff --git a/sw/inc/acmplwrd.hxx b/sw/inc/acmplwrd.hxx new file mode 100644 index 000000000000..046c44affe91 --- /dev/null +++ b/sw/inc/acmplwrd.hxx @@ -0,0 +1,105 @@ +/************************************************************************* + * + * $RCSfile: acmplwrd.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _ACMPLWRD_HXX +#define _ACMPLWRD_HXX + + +#define _SVSTDARR_STRINGSISORTDTOR +#include + + +class SwAutoCompleteWord +{ + SvStringsISortDtor aWordLst; + SvPtrarr aLRULst; + USHORT nMaxCount, nMinWrdLen; + BOOL bLockWordLst; +public: + SwAutoCompleteWord( USHORT nWords = 500, USHORT nMWrdLen = 10 ); + ~SwAutoCompleteWord(); + + BOOL InsertWord( const String& rWord ); + BOOL RemoveWord( const String& rWord ); + BOOL SearchWord( const String& rWord, USHORT* pFndPos = 0 ) const; + + BOOL GetRange( const String& rWord, USHORT& rStt, USHORT& rEnd ) const; + + BOOL SetToTop( const String& rWord ); + + USHORT Count() const { return aWordLst.Count(); } + + const String& operator[]( USHORT n ) const { return *aWordLst[ n ]; } + + BOOL IsLockWordLstLocked() const { return bLockWordLst; } + void SetLockWordLstLocked( BOOL bFlag ) { bLockWordLst = bFlag; } + + USHORT GetMaxCount() const { return nMaxCount; } + void SetMaxCount( USHORT n ); + + USHORT GetMinWordLen() const { return nMinWrdLen; } + void SetMinWordLen( USHORT n ); + + const SvStringsISortDtor& GetWordList() const { return aWordLst; } + void CheckChangedList( const SvStringsISortDtor& rNewLst ); +}; + + +#endif diff --git a/sw/inc/authfld.hxx b/sw/inc/authfld.hxx new file mode 100644 index 000000000000..d0d69c949d28 --- /dev/null +++ b/sw/inc/authfld.hxx @@ -0,0 +1,222 @@ +/************************************************************************* + * + * $RCSfile: authfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _AUTHFLD_HXX +#define _AUTHFLD_HXX + +#ifndef _FLDBAS_HXX +#include +#endif +#ifndef _TOXE_HXX +#include +#endif + +class SwAuthDataArr; +/* -----------------21.09.99 13:32------------------- + + --------------------------------------------------*/ +class SwAuthEntry +{ + String aAuthFields[AUTH_FIELD_END]; + USHORT nRefCount; +public: + SwAuthEntry() : nRefCount(0){} + SwAuthEntry( const SwAuthEntry& rCopy ); + BOOL operator==(const SwAuthEntry& rComp); + + BOOL GetFirstAuthorField(USHORT& nPos, String& rToFill)const; + BOOL GetNextAuthorField(USHORT& nPos, String& rToFill)const; + inline const String& GetAuthorField(ToxAuthorityField ePos)const; + inline void SetAuthorField(ToxAuthorityField ePos, + const String& rField); + + void AddRef() { ++nRefCount; } + void RemoveRef() { --nRefCount; } + USHORT GetRefCount() { return nRefCount; } +}; +/* -----------------20.10.99 16:49------------------- + + --------------------------------------------------*/ +struct SwTOXSortKey +{ + ToxAuthorityField eField; + BOOL bSortAscending; + SwTOXSortKey() : + eField(AUTH_FIELD_END), + bSortAscending(TRUE){} +}; + +/* -----------------14.09.99 16:15------------------- + + --------------------------------------------------*/ +class SvUShorts; +class SwAuthorityField; +class SvLongs; +class SortKeyArr; +class SwAuthorityFieldType : public SwFieldType +{ + SwDoc* m_pDoc; + SwAuthDataArr* m_pDataArr; + SvLongs* m_pSequArr; + SortKeyArr* m_pSortKeyArr; + char m_cPrefix; + char m_cSuffix; + BOOL m_bIsSequence :1; + BOOL m_bSortByDocument :1; + + const SwAuthorityFieldType& operator=( const SwAuthorityFieldType& ); + +public: + SwAuthorityFieldType(SwDoc* pDoc); + SwAuthorityFieldType( const SwAuthorityFieldType& ); + ~SwAuthorityFieldType(); + + virtual SwFieldType* Copy() const; + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + + inline SwDoc* GetDoc() const { return m_pDoc; } + inline void SetDoc(SwDoc* pNewDoc) { m_pDoc = pNewDoc; } + + void RemoveField(long nHandle); + long AddField(const String& rFieldContents); + BOOL AddField(long nHandle); + + const SwAuthEntry* GetEntryByHandle(long nHandle) const; + + void GetAllEntryIdentifiers( SvStringsDtor& rToFill )const; + const SwAuthEntry* GetEntryByIdentifier(const String& rIdentifier)const; + + void ChangeEntryContent(const SwAuthEntry* pNewEntry); + // import interface + USHORT AppendField(const SwAuthEntry& rInsert); + void MergeFieldType(const SwAuthorityFieldType& rNew, SvUShorts& rMap); + void RemoveUnusedFields(); + long GetHandle(USHORT nPos); + USHORT GetPosition(long nHandle); + + USHORT GetEntryCount() const; + const SwAuthEntry* GetEntryByPosition(USHORT nPos) const; + + USHORT GetSequencePos(long nHandle); + + BOOL IsSequence() const {return m_bIsSequence;} + void SetSequence(BOOL bSet) {m_bIsSequence = bSet;} + + void SetPreSuffix(char cPre, char cSuf) + { + m_cPrefix = cPre; + m_cSuffix = cSuf; + } + char GetPrefix() const { return m_cPrefix;} + char GetSuffix() const { return m_cSuffix;} + + BOOL IsSortByDocument() const {return m_bSortByDocument;} + void SetSortByDocument(BOOL bSet) {m_bSortByDocument = bSet;} + + USHORT GetSortKeyCount() const ; + const SwTOXSortKey* GetSortKey(USHORT nIdx) const ; + void SetSortKeys(USHORT nKeyCount, SwTOXSortKey nKeys[]); + + //initui.cxx + static const String& GetAuthFieldName(ToxAuthorityField eType); + static const String& GetAuthTypeName(ToxAuthorityType eType); + +}; +/* -----------------14.09.99 16:15------------------- + + --------------------------------------------------*/ +class SwAuthorityField : public SwField +{ + long nHandle; + +public: + SwAuthorityField(SwAuthorityFieldType* pType, const String& rFieldContents); + SwAuthorityField(SwAuthorityFieldType* pType, long nHandle); + ~SwAuthorityField(); + + const String& GetFieldText(ToxAuthorityField eField) const; + + virtual String Expand() const; + virtual SwField* Copy() const; + virtual void SetPar1(const String& rStr); + virtual SwFieldType* ChgTyp( SwFieldType* ); + + long GetHandle() const { return nHandle; } + + //import interface + USHORT GetHandlePosition() const; +}; + +// --- inlines ----------------------------------------------------------- +inline const String& SwAuthEntry::GetAuthorField(ToxAuthorityField ePos)const +{ + if(AUTH_FIELD_END > ePos) + return aAuthFields[ePos]; + else + return aEmptyStr; +} +inline void SwAuthEntry::SetAuthorField(ToxAuthorityField ePos, const String& rField) +{ + if(AUTH_FIELD_END > ePos) + aAuthFields[ePos] = rField; +} + +#endif + diff --git a/sw/inc/authratr.hxx b/sw/inc/authratr.hxx new file mode 100644 index 000000000000..c69d1fd3b4c3 --- /dev/null +++ b/sw/inc/authratr.hxx @@ -0,0 +1,92 @@ +/************************************************************************* + * + * $RCSfile: authratr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _AUTHRATR_HXX +#define _AUTHRATR_HXX + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _SV_COLOR_HXX //autogen +#include +#endif + +#define COL_NONE TRGB_COLORDATA( 0x80, 0xFF, 0xFF, 0xFF ) + +class AuthorCharAttr +{ +public: + USHORT nItemId; + USHORT nAttr; + ULONG nColor; + + AuthorCharAttr(); + + inline BOOL operator == ( const AuthorCharAttr& rAttr ) const + { + return nItemId == rAttr.nItemId && nAttr == rAttr.nAttr && + nColor == rAttr.nColor; + } +}; + + +#endif diff --git a/sw/inc/bookmrk.hxx b/sw/inc/bookmrk.hxx new file mode 100644 index 000000000000..ade83966be93 --- /dev/null +++ b/sw/inc/bookmrk.hxx @@ -0,0 +1,177 @@ +/************************************************************************* + * + * $RCSfile: bookmrk.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _BOOKMRK_HXX +#define _BOOKMRK_HXX + +#include "hintids.hxx" //die Ids der Attribute, vor macitem damit die + //die Attribut richtig angezogen werden. +#ifndef _SFXMACITEM_HXX +#include +#endif + +#ifndef _KEYCOD_HXX //autogen +#include +#endif +#ifndef _SO2REF_HXX //autogen +#include +#endif +#ifndef _BKMRKE_HXX //autogen +#include +#endif + +#include "calbck.hxx" + +#ifndef SW_DECL_SWSERVEROBJECT_DEFINED +#define SW_DECL_SWSERVEROBJECT_DEFINED +class SvPseudoObject; +SO2_DECL_REF( SwServerObject ) +#endif + + +struct SwPosition; // fwd Decl. wg. UI + +class SwBookmark : public SwModify +{ + friend class SwDoc; // fuers Loeschen + friend class Sw3IoImp; // fuers Setzen der Position(en) + + SwPosition *pPos1, *pPos2; // wird im CTOR gesetzt, im DTOR geloescht + SwServerObjectRef refObj; // falls DataServer -> Pointer gesetzt + +protected: + SvxMacro aStartMacro; + SvxMacro aEndMacro; + String aName; + String aShortName; + KeyCode aCode; + BOOKMARK_TYPE eMarkType; + +public: + TYPEINFO(); + + SwBookmark(const SwPosition& aPos); + SwBookmark(const SwPosition& aPos, + const KeyCode& rCode, + const String& rName, const String& rShortName); + // Beim Loeschen von Text werden Bookmarks mitgeloescht! + ~SwBookmark(); + + const SwPosition& GetPos() const { return *pPos1; } + const SwPosition* GetOtherPos() const { return pPos2; } + + // nicht undofaehig + void SetName(const String& rNewName) { aName = rNewName; } + const String& GetName() const { return aName; } + // nicht undofaehig + void SetShortName(const String& rNewSName) { aShortName = rNewSName; } + const String& GetShortName() const { return aShortName; } + // nicht undofaehig + void SetKeyCode(const KeyCode& rNewCode) { aCode = rNewCode; } + const KeyCode& GetKeyCode() const { return aCode; } + + // Vergleiche auf Basis der Dokumentposition + BOOL operator < (const SwBookmark &) const; + BOOL operator ==(const SwBookmark &) const; + // falls man wirklich auf gleiche Position abfragen will. + BOOL IsEqualPos( const SwBookmark &rBM ) const; + + BOOL IsBookMark() const { return BOOKMARK == eMarkType; } + BOOL IsMark() const { return MARK == eMarkType; } + BOOL IsDDEMark() const { return DDE_BOOKMARK == eMarkType; } + BOOL IsUNOMark() const { return UNO_BOOKMARK == eMarkType; } + void SetType( BOOKMARK_TYPE eNewType ) { eMarkType = eNewType; } + + void SetStartMacro(const SvxMacro& rSt) { aStartMacro = rSt; } + const SvxMacro& GetStartMacro() { return aStartMacro; } + void SetEndMacro(const SvxMacro& rSt) { aEndMacro = rSt; } + const SvxMacro& GetEndMacro() { return aEndMacro; } + + // Daten Server-Methoden + void SetRefObject( SvPseudoObject* pObj ); + const SwServerObject* GetObject() const { return &refObj; } + SwServerObject* GetObject() { return &refObj; } + BOOL IsServer() const { return refObj.Is(); } + +private: + // fuer METWARE: + // es wird (vorerst) nicht kopiert und nicht zugewiesen + SwBookmark(const SwBookmark &); + SwBookmark &operator=(const SwBookmark &); +}; + +class SwMark: public SwBookmark +{ +public: + SwMark(const SwPosition& aPos, + const KeyCode& rCode, + const String& rName, const String& rShortName); +}; + +class SwUNOMark: public SwBookmark +{ +public: + SwUNOMark(const SwPosition& aPos, + const KeyCode& rCode, + const String& rName, const String& rShortName); +}; + + +#endif diff --git a/sw/inc/bparr.hxx b/sw/inc/bparr.hxx new file mode 100644 index 000000000000..365fb2d66363 --- /dev/null +++ b/sw/inc/bparr.hxx @@ -0,0 +1,164 @@ +/************************************************************************* + * + * $RCSfile: bparr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _BPARR_HXX +#define _BPARR_HXX + +#ifndef _SOLAR_H +#include +#endif +#ifndef _DEBUG_HXX //autogen +#include +#endif + +struct BlockInfo; +class BigPtrArray; + +class BigPtrEntry +{ + friend class BigPtrArray; + BlockInfo* pBlock; + USHORT nOffset; +protected: + BigPtrEntry() : pBlock(0), nOffset(0) {} + virtual ~BigPtrEntry() {} + + inline ULONG GetPos() const; + inline BigPtrArray& GetArray() const; +}; +typedef BigPtrEntry* ElementPtr; + + +typedef BOOL (*FnForEach)( const ElementPtr&, void* pArgs ); + +// 1000 Eintr„ge pro Block = etwas weniger als 4K +#define MAXENTRY 1000 + + +// Anzahl Eintraege, die bei der Kompression frei bleiben duerfen +// dieser Wert ist fuer den Worst Case, da wir MAXBLOCK mit ca 25% +// Overhead definiert haben, reichen 80% = 800 Eintraege vollkommen aus +// Will mann voellige Kompression haben, muss eben 100 angegeben werden. + +#define COMPRESSLVL 80 + +struct BlockInfo { // Block-Info: + BigPtrArray* pBigArr; // in diesem Array steht der Block + ElementPtr* pData; // Datenblock + ULONG nStart, nEnd; // Start- und EndIndex + USHORT nElem; // Anzahl Elemente +}; + +class BigPtrArray +{ + BlockInfo** ppInf; // Block-Infos + ULONG nSize; // Anzahl Elemente + USHORT nMaxBlock; // akt. max Anzahl Bloecke + USHORT nBlock; // Anzahl Bloecke + USHORT nCur; // letzter Block + + USHORT Index2Block( ULONG ) const; // Blocksuche + BlockInfo* InsBlock( USHORT ); // Block einfuegen + void BlockDel( USHORT ); // es wurden Bloecke geloescht + void UpdIndex( USHORT ); // Indexe neu berechnen + +protected: + // fuelle alle Bloecke auf. + // Der short gibt in Prozent an, wie voll die Bloecke werden sollen. + // Der ReturnWert besagt, das irgendetwas "getan" wurde + USHORT Compress( short = COMPRESSLVL ); + +public: + BigPtrArray(); + ~BigPtrArray(); + + ULONG Count() const { return nSize; } + + void Insert( const ElementPtr& r, ULONG pos ); +// void Insert( const ElementPtr* p, ULONG n, ULONG pos ); + void Remove( ULONG pos, ULONG n = 1 ); + void Move( ULONG from, ULONG to ); + void Replace( ULONG pos, const ElementPtr& r); + + ElementPtr operator[]( ULONG ) const; + ULONG GetIndex( const ElementPtr, ULONG, ULONG ) const; + void ForEach( FnForEach fn, void* pArgs = NULL ) + { + ForEach( 0, nSize, fn, pArgs ); + } + void ForEach( ULONG nStart, ULONG nEnd, FnForEach fn, void* pArgs = NULL ); +}; + + + +inline ULONG BigPtrEntry::GetPos() const +{ + DBG_ASSERT( this == pBlock->pData[ nOffset ], "Element nicht im Block" ); + return pBlock->nStart + nOffset; +} + +inline BigPtrArray& BigPtrEntry::GetArray() const +{ + return *pBlock->pBigArr; +} + + +#endif diff --git a/sw/inc/calbck.hxx b/sw/inc/calbck.hxx new file mode 100644 index 000000000000..e84370e4fc24 --- /dev/null +++ b/sw/inc/calbck.hxx @@ -0,0 +1,260 @@ +/************************************************************************* + * + * $RCSfile: calbck.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +/************************************************************* +#* Service-Klassen + *************************************************************/ + +/* +#* Aendert sich ein Attribut in einem Format, so muss diese +#* Aenderung an alle abhaengigen Formate und ueber sie an +#* alle betroffenen Nodes propagiert werden. Dabei muss +#* festgestellt werden, ob die Aenderung einen Effekt haben +#* kann, oder ob das geaenderte Attribut von dem abhaengigen +#* Format ueberdefiniert wird (so dass ohnehin der +#* Attributwert des abhaengigen Formates den geaenderten +#* Wert verdeckt). Weiterhin kann der betroffene Node +#* feststellen, ob er von dem geaenderten Attribut Gebrauch +#* macht (Beispiel: Linienabstand fuer Unterstreichung wurde +#* geaendert, das Attribut Unterstreichung wurde aber nicht +#* verwendet). So wird bei Aenderungen der minimale Aufwand +#* zum Reformatieren erkannt. + */ +#ifndef _CALBCK_HXX +#define _CALBCK_HXX + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _RTTI_HXX +#include +#endif + +class SwModify; +class SwClientIter; +class SfxPoolItem; +class SvStream; + +// ---------- +// SwClient +// ---------- + +class SwClient +{ + friend class SwModify; + friend class SwClientIter; + + SwClient *pLeft, *pRight; // fuer die AVL-Sortierung + BOOL bModifyLocked : 1; // wird in SwModify::Modify benutzt, + // eigentlich ein Member des SwModify + // aber aus Platzgruenden hier. + BOOL bInModify : 1; // ist in einem Modify. (Debug!!!) + BOOL bInDocDTOR : 1; // Doc wird zerstoert, nicht "abmelden" + BOOL bInCache : 1; // Ist im BorderAttrCache des Layout, + // Traegt sich dann im Modify aus! + BOOL bInSwFntCache : 1; // Ist im SwFont-Cache der Formatierung + +protected: + SwModify *pRegisteredIn; + SwClient(SwModify *pToRegisterIn); + +public: + inline SwClient(); + virtual ~SwClient(); + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + const SwModify* GetRegisteredIn() const { return pRegisteredIn; } + + //rtti, abgeleitete moegens gleichtun oder nicht. Wenn sie es gleichtun + //kann ueber die Abhaengigkeitsliste eines Modify typsicher gecastet + //werden. + TYPEINFO(); + + void LockModify() { bModifyLocked = TRUE; } + void UnlockModify() { bModifyLocked = FALSE; } + void SetInCache( BOOL bNew ) { bInCache = bNew; } + void SetInSwFntCache( BOOL bNew ) { bInSwFntCache = bNew; } + int IsModifyLocked() const { return bModifyLocked; } + int IsInDocDTOR() const { return bInDocDTOR; } + int IsInCache() const { return bInCache; } + int IsInSwFntCache() const { return bInSwFntCache; } + + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + +private: + SwClient( const SwClient& ); + SwClient &operator=( const SwClient& ); +}; + +inline SwClient::SwClient() : + pLeft(0), pRight(0), pRegisteredIn(0) +{ bModifyLocked = bInModify = bInDocDTOR = bInCache = bInSwFntCache = FALSE; } + + +// ---------- +// SwModify +// ---------- + +// Klasse hat eine doppelt Verkette Liste fuer die Abhaengigen. + +class SwModify: public SwClient +{ + friend SvStream& operator<<( SvStream& aS, SwModify & ); + + friend class SwClientIter; + SwClient* pRoot; + + SwClient *_Remove(SwClient *pDepend); + +public: + SwModify(SwModify *pToRegisterIn ); + virtual ~SwModify(); + virtual void Modify( SfxPoolItem *pOldValue, SfxPoolItem *pNewValue ); + void Add(SwClient *pDepend); + SwClient *Remove(SwClient *pDepend) + { return bInDocDTOR ? 0 : _Remove( pDepend ); } + + const SwClient* GetDepends() const { return pRoot; } + + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + void SetInDocDTOR() { bInDocDTOR = TRUE; } + + void CheckCaching( const USHORT nWhich ); + + BOOL IsLastDepend() const + { return pRoot && !pRoot->pLeft && !pRoot->pRight; } +}; + +// ---------- +// SwDepend +// ---------- + +/* + * Sehr sinnvolle Klasse, wenn ein Objekt von mehreren Objekten + * abhaengig ist. Diese sollte fuer jede Abhaengigkeit ein Objekt + * der Klasse SwDepend als Member haben. + */ +class SwDepend: public SwClient +{ +private: + SwClient *pToTell; +public: + SwClient* GetToTell() { return pToTell; } + virtual void Modify( SfxPoolItem *pOldValue, SfxPoolItem *pNewValue ); + SwDepend(SwClient *pTellHim, SwModify *pDepend); + + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem & ) const; +}; + + +class SwClientIter +{ + friend SwClient* SwModify::_Remove(SwClient *); // fuer Ptr-Korrektur + friend void SwModify::Add(SwClient *); // nur fuer ASSERT ! + + SwModify& rRoot; + SwClient *pAkt, *pDelNext; + // fuers Updaten der aller Iteratoren beim Einfuegen/Loeschen von + // Clients, wenn der Iterator gerade draufsteht. + SwClientIter *pNxtIter; + TypeId aSrchId; // fuer First/Next - suche diesen Type + +public: + SwClientIter( SwModify& ); + ~SwClientIter(); + + const SwModify& GetModify() const { return rRoot; } + SwModify& GetModify() { return rRoot; } + +#ifndef CFRONT + SwClient* operator++(int); // zum Naechsten + SwClient* operator--(int); // zum Vorherigen +#endif + SwClient* operator++(); // zum Naechsten + SwClient* operator--(); // zum Vorherigen + + SwClient* GoStart(); // zum Anfang + SwClient* GoEnd(); // zum Ende + + inline SwClient* GoRoot(); // wieder ab Root (==Start) anfangen + + SwClient* operator()() const + { return pDelNext == pAkt ? pAkt : pDelNext; } + + int IsChanged() const { return pDelNext != pAkt; } + + SwClient* First( TypeId nType ); + SwClient* Next(); +}; + +inline SwClient* SwClientIter::GoRoot() // wieder ab Root anfangen +{ + pAkt = rRoot.pRoot; + return (pDelNext = pAkt); +} + + + +#endif diff --git a/sw/inc/calc.hxx b/sw/inc/calc.hxx new file mode 100644 index 000000000000..b839ffe26463 --- /dev/null +++ b/sw/inc/calc.hxx @@ -0,0 +1,261 @@ +/************************************************************************* + * + * $RCSfile: calc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CALC_HXX +#define _CALC_HXX + + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef __SBX_SBXVALUE //autogen +#include +#endif + +class CharClass; +class International; +class SwFieldType; +class SwDoc; + +#define TBLSZ 47 // sollte Primzahl sein, wegen HashTable + +const sal_Unicode cListDelim = '|'; + +/****************************************************************************** + * Calculate Operations + ******************************************************************************/ +enum SwCalcOper +{ + CALC_NAME, CALC_NUMBER, CALC_ENDCALC, + CALC_PLUS='+', CALC_MINUS='-', CALC_MUL='*', + CALC_DIV='/', CALC_PRINT=';', CALC_ASSIGN='=', + CALC_LP='(', CALC_RP=')', CALC_PHD='%', + CALC_POW='^', + CALC_LISTOP = cListDelim, + CALC_NOT=256, CALC_AND=257, CALC_OR=258, + CALC_XOR=259, CALC_EQ=260, CALC_NEQ=261, + CALC_LEQ=262, CALC_GEQ=263, CALC_LES=264, + CALC_GRE=265, CALC_SUM=266, CALC_MEAN=267, + CALC_SQRT=268, CALC_MIN=269, CALC_MIN_IN=270, + CALC_MAX=271, CALC_MAX_IN=272, CALC_SIN=273, + CALC_COS=274, CALC_TAN=275, CALC_ASIN=276, + CALC_ACOS=278, CALC_ATAN=279, CALC_TDIF=280, + CALC_ROUND=281 +}; + +//-- Calculate Operations Strings ----------------------------------------- + +extern const sal_Char __FAR_DATA sCalc_Add[]; +extern const sal_Char __FAR_DATA sCalc_Sub[]; +extern const sal_Char __FAR_DATA sCalc_Mul[]; +extern const sal_Char __FAR_DATA sCalc_Div[]; +extern const sal_Char __FAR_DATA sCalc_Phd[]; +extern const sal_Char __FAR_DATA sCalc_Sqrt[]; +extern const sal_Char __FAR_DATA sCalc_Pow[]; +extern const sal_Char __FAR_DATA sCalc_Or[]; +extern const sal_Char __FAR_DATA sCalc_Xor[]; +extern const sal_Char __FAR_DATA sCalc_And[]; +extern const sal_Char __FAR_DATA sCalc_Not[]; +extern const sal_Char __FAR_DATA sCalc_Eq[]; +extern const sal_Char __FAR_DATA sCalc_Neq[]; +extern const sal_Char __FAR_DATA sCalc_Leq[]; +extern const sal_Char __FAR_DATA sCalc_Geq[]; +extern const sal_Char __FAR_DATA sCalc_L[]; +extern const sal_Char __FAR_DATA sCalc_G[]; +extern const sal_Char __FAR_DATA sCalc_Sum[]; +extern const sal_Char __FAR_DATA sCalc_Mean[]; +extern const sal_Char __FAR_DATA sCalc_Min[]; +extern const sal_Char __FAR_DATA sCalc_Max[]; +extern const sal_Char __FAR_DATA sCalc_Sin[]; +extern const sal_Char __FAR_DATA sCalc_Cos[]; +extern const sal_Char __FAR_DATA sCalc_Tan[]; +extern const sal_Char __FAR_DATA sCalc_Asin[]; +extern const sal_Char __FAR_DATA sCalc_Acos[]; +extern const sal_Char __FAR_DATA sCalc_Atan[]; +extern const sal_Char __FAR_DATA sCalc_Tdif[]; +extern const sal_Char __FAR_DATA sCalc_Round[]; + +/****************************************************************************** + * Calculate ErrorCodes + ******************************************************************************/ +enum SwCalcError +{ + CALC_NOERR=0, + CALC_SYNTAX, // Syntax Fehler + CALC_ZERODIV, // Division durch Null + CALC_BRACK, // Fehlerhafte Klammerung + CALC_POWERR, // Ueberlauf in Quadratfunktion + CALC_VARNFND, // Variable wurde nicht gefunden + CALC_OVERFLOW, // Ueberlauf + CALC_WRONGTIME // falsches Zeitformat +}; + +class SwSbxValue : public SbxValue +{ +public: + //JP 03.02.99: immer auf eine Zahl defaulten, damit auch gerechnet wird. + // Ansonsten wird daraus ein SbxEMPTY und damit ist nichts + // anzufangen. + SwSbxValue( long n = 0 ) { PutLong( n ); } + SwSbxValue( const double& rD ) { PutDouble( rD ); } + SwSbxValue( const SwSbxValue& rVal ) : SbxValue( rVal ) {} + virtual ~SwSbxValue(); + + // Strings sonderbehandeln + BOOL GetBool() const; + // Strings sonderbehandeln + double GetDouble() const; + SwSbxValue& MakeDouble(); +}; + +/****************************************************************************** + * Calculate HashTables fuer VarTable und Operations + ******************************************************************************/ +struct SwHash +{ + SwHash( const String& rStr ); + virtual ~SwHash(); + String aStr; + SwHash *pNext; +}; + +struct SwCalcExp : public SwHash +{ + SwSbxValue nValue; + const SwFieldType* pFldType; + + SwCalcExp( const String& rStr, const SwSbxValue& rVal, + const SwFieldType* pFldType = 0 ); +}; + +SwHash* Find( const String& rSrch, SwHash** ppTable, + USHORT nTblSize, USHORT* pPos = 0 ); + +void DeleteHashTable( SwHash** ppTable, USHORT nTblSize ); + +// falls _CalcOp != 0, dann ist das ein gueltiger Operator +struct _CalcOp; +_CalcOp* FindOperator( const String& rSearch ); + +/****************************************************************************** + * class SwCalc + ******************************************************************************/ +class SwCalc +{ + SwHash* VarTable[ TBLSZ ]; + String aVarName, sCurrSym; + String sCommand; + SvPtrarr aRekurStk; + SwSbxValue nLastLeft; + SwSbxValue nNumberValue; + SwCalcExp aErrExpr; + xub_StrLen nCommandPos; + + SwDoc& rDoc; + International* pInter; + CharClass* pCharClass; + + USHORT nListPor; + SwCalcOper eCurrOper; + SwCalcOper eCurrListOper; + SwCalcError eError; + + + SwCalcOper GetToken(); + SwSbxValue Expr(); + SwSbxValue Term(); + SwSbxValue Prim(); + + BOOL ParseTime( USHORT*, USHORT*, USHORT* ); + + String GetColumnName( const String& rName ); + String GetDBName( const String& rName ); + + // dont call this methods + SwCalc( const SwCalc& ); + SwCalc& operator=( const SwCalc& ); + +public: + SwCalc( SwDoc& rD ); + ~SwCalc(); + + SwSbxValue Calculate( const String &rStr ); + String GetStrResult( const SwSbxValue& rValue, BOOL bRound = TRUE ); + String GetStrResult( double, BOOL bRound = TRUE ); + + SwCalcExp* VarInsert( const String& r ); + SwCalcExp* VarLook( const String &rStr, USHORT ins = 0 ); + void VarChange( const String& rStr, const SwSbxValue& rValue ); + void VarChange( const String& rStr, double ); + SwHash** GetVarTable() { return VarTable; } + + BOOL Push( const VoidPtr pPtr ); + void Pop( const VoidPtr pPtr ); + + void SetCalcError( SwCalcError eErr ) { eError = eErr; } + BOOL IsCalcError() const { return eError; } + + static FASTBOOL Str2Double( const String& rStr, xub_StrLen& rPos, + double& rVal, + const International* pInter = 0 ); +}; + +#endif diff --git a/sw/inc/cellatr.hxx b/sw/inc/cellatr.hxx new file mode 100644 index 000000000000..e2fa5a71b4b2 --- /dev/null +++ b/sw/inc/cellatr.hxx @@ -0,0 +1,178 @@ +/************************************************************************* + * + * $RCSfile: cellatr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _CELLATR_HXX +#define _CELLATR_HXX + +#ifndef _SFXINTITEM_HXX //autogen +#include +#endif +#ifndef _ZFORLIST_HXX //autogen +#include +#endif + +#include "format.hxx" +#include "cellfml.hxx" + + +class SwTblBoxNumFormat : public SfxUInt32Item +{ + BOOL bAuto; // automatisch vergebenes Flag +public: + SwTblBoxNumFormat( UINT32 nFormat = NUMBERFORMAT_TEXT, + BOOL bAuto = FALSE ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFileVersion) const; + + inline SwTblBoxNumFormat& operator=( const SwTblBoxNumFormat& rAttr ) + { + SetValue( rAttr.GetValue() ); + SetAutoFlag( rAttr.GetAutoFlag() ); + return *this; + } + + BOOL GetAutoFlag() const { return bAuto; } + void SetAutoFlag( BOOL bFlag = TRUE ) { bAuto = bFlag; } +}; + +class SwTblBoxFormula : public SfxPoolItem, public SwTableFormula +{ + SwModify* pDefinedIn; // Modify-Object, in dem die Formel steht + // kann nur TablenBoxFormat sein + +public: + SwTblBoxFormula( const String& rFormula ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFileVersion) const; + + // erfrage und setze den Modify-Pointer + inline const SwModify* GetDefinedIn() const { return pDefinedIn; } + inline void ChgDefinedIn( const SwModify* pNew ) + { pDefinedIn = (SwModify*)pNew; } + // suche den Node, in dem die Formel steht: + // BoxAttribut -> BoxStartNode + virtual const SwNode* GetNodeOfFormula() const; + + SwTableBox* GetTableBox(); + const SwTableBox* GetTableBox() const + { return ((SwTblBoxFormula*)this)->GetTableBox(); } + + // Status aendern + void ChangeState( const SfxPoolItem* pItem ); + // berechne die Formel + void Calc( SwTblCalcPara& rCalcPara, double& rValue ); +}; + +class SwTblBoxValue : public SfxPoolItem +{ + double nValue; +public: + SwTblBoxValue(); + SwTblBoxValue( const double aVal ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFileVersion) const; + + inline SwTblBoxValue& operator=( const SwTblBoxValue& rCmp ) + { + nValue = rCmp.nValue; + return *this; + } + + double GetValue() const { return nValue; } + void SetValue( const double nVal ) { nValue = nVal; } +}; + + + +//*************************************************************************** + +inline const SwTblBoxNumFormat &SwAttrSet::GetTblBoxNumFmt(BOOL bInP) const + { return (const SwTblBoxNumFormat&)Get( RES_BOXATR_FORMAT,bInP); } +inline const SwTblBoxFormula &SwAttrSet::GetTblBoxFormula(BOOL bInP) const + { return (const SwTblBoxFormula&)Get( RES_BOXATR_FORMULA,bInP); } +inline const SwTblBoxValue &SwAttrSet::GetTblBoxValue(BOOL bInP) const + { return (const SwTblBoxValue&)Get( RES_BOXATR_VALUE, bInP); } + +//*************************************************************************** + +inline const SwTblBoxNumFormat &SwFmt::GetTblBoxNumFmt(BOOL bInP) const + { return aSet.GetTblBoxNumFmt(bInP); } +inline const SwTblBoxFormula &SwFmt::GetTblBoxFormula(BOOL bInP) const + { return aSet.GetTblBoxFormula(bInP); } +inline const SwTblBoxValue &SwFmt::GetTblBoxValue(BOOL bInP) const + { return aSet.GetTblBoxValue(bInP); } + +#endif diff --git a/sw/inc/cellfml.hxx b/sw/inc/cellfml.hxx new file mode 100644 index 000000000000..89d7ba9a2910 --- /dev/null +++ b/sw/inc/cellfml.hxx @@ -0,0 +1,197 @@ +/************************************************************************* + * + * $RCSfile: cellfml.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _CELLFML_HXX +#define _CELLFML_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif + +class SwTable; +class SwNode; +class SwTableSortBoxes; +class SwSelBoxes; +class SwCalc; +class SwTableBox; +class SwTableFmlUpdate; + +class SwTblCalcPara +{ + const SwTableBox* pLastTblBox; + USHORT nStackCnt, nMaxSize; + +public: + SwTableSortBoxes *pBoxStk; // Stack fuers erkennen von Rekursionen ! + SwCalc& rCalc; // akt. Calculator + const SwTable* pTbl; // akt. Tabelle + + SwTblCalcPara( SwCalc& rCalculator, const SwTable& rTable ); + ~SwTblCalcPara(); + + BOOL CalcWithStackOverflow(); + BOOL IsStackOverFlow() const { return nMaxSize == nStackCnt; } + BOOL IncStackCnt() { return nMaxSize == ++nStackCnt; } + void DecStackCnt() { if( nStackCnt ) --nStackCnt; } + void SetLastTblBox( const SwTableBox* pBox ) { pLastTblBox = pBox; } +}; + + + +class SwTableFormula +{ +typedef void (SwTableFormula:: *FnScanFormel)( const SwTable&, String&, + String&, String*, void* ) const; + + void BoxNmsToPtr( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void PtrToBoxNms( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void RelNmsToBoxNms( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void RelBoxNmsToPtr( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void BoxNmsToRelNm( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void _MakeFormel( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void _GetFmlBoxes( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void _HasValidBoxes( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + void _SplitMergeBoxNm( const SwTable&, String&, String&, String* = 0, + void* pPara = 0 ) const; + + void GetBoxes( const SwTableBox& rStt, const SwTableBox& rEnd, + SwSelBoxes& rBoxes ) const; + String ScanString( FnScanFormel fnFormel, const SwTable& rTbl, + void* = 0 ) const; + + const SwTable* FindTable( SwDoc& rDoc, const String& rNm ) const; + +protected: + enum NameType { EXTRNL_NAME, INTRNL_NAME, REL_NAME }; + + String sFormel; // akt. Formel + NameType eNmType; // akt. Darstellungs Art + BOOL bValidValue; // TRUE: Formel neu berechnen + + // suche den Node, in dem die Formel steht: + // TextFeld -> TextNode, + // BoxAttribut -> BoxStartNode + // !!! MUSS VON JEDER ABLEITUNG UEBERLADEN WERDEN !!! + virtual const SwNode* GetNodeOfFormula() const = 0; + + SwTableFormula( const String& rFormel ); + + String MakeFormel( SwTblCalcPara& rCalcPara ) const + { + return ScanString( &SwTableFormula::_MakeFormel, + *rCalcPara.pTbl, &rCalcPara ); + } + + static USHORT GetLnPosInTbl( const SwTable& rTbl, const SwTableBox* pBox ); + +public: + + SwTableFormula( const SwTableFormula& rCpy ) { *this = rCpy; } + SwTableFormula& operator=( const SwTableFormula& rCpy ) + { + sFormel = rCpy.sFormel; + eNmType = rCpy.eNmType; + bValidValue = rCpy.bValidValue; + return *this; + } + + // erzeuge aus der internen (fuer CORE) die externe (fuer UI) Formel + void PtrToBoxNm( const SwTable* pTbl ); + // erzeuge aus der externen (fuer UI) die interne (fuer CORE) Formel + void BoxNmToPtr( const SwTable* pTbl ); + // erzeuge aus der externen/internen Formel die relative Formel + void ToRelBoxNm( const SwTable* pTbl ); + // wird vorm/nach dem mergen/splitten von Tabellen rerufen + void ToSplitMergeBoxNm( SwTableFmlUpdate& rTblUpd ); + + // ist gerade eine intern Darstellung aktiv + BOOL IsIntrnlName() const { return eNmType == INTRNL_NAME; } + // erfrage die akt. Darstellung der Formel + NameType GetNameType() const { return eNmType; } + + // erfrage/setze das Flag, ob der akt. Wert gueltig ist + BOOL IsValid() const { return bValidValue; } + inline void ChgValid( BOOL bNew ) { bValidValue = bNew; } + + const String& GetFormula() const { return sFormel; } + void SetFormula( const String& rNew ) + { + sFormel = rNew; + bValidValue = FALSE; + eNmType = EXTRNL_NAME; + } + + USHORT GetBoxesOfFormula( const SwTable& rTbl, SwSelBoxes& rBoxes ); + // sind alle Boxen gueltig, auf die sich die Formel bezieht? + BOOL HasValidBoxes() const; +}; + + + +#endif diff --git a/sw/inc/charatr.hxx b/sw/inc/charatr.hxx new file mode 100644 index 000000000000..7e65a2d47737 --- /dev/null +++ b/sw/inc/charatr.hxx @@ -0,0 +1,180 @@ +/************************************************************************* + * + * $RCSfile: charatr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CHARATR_HXX +#define _CHARATR_HXX + +#include "format.hxx" +#include "hintids.hxx" // fuer die WhichIds + + +/****************************************************************************** + * Implementierung der Charakter-Attribut Methoden vom SwAttrSet + * AMA 12.10.94: Umstellung auf SvxItems. + ******************************************************************************/ + +inline const SvxPostureItem &SwAttrSet::GetPosture(BOOL bInP) const + { return (const SvxPostureItem&)Get( RES_CHRATR_POSTURE,bInP); } +inline const SvxPostureItem &SwAttrSet::GetCJKPosture(BOOL bInP) const + { return (const SvxPostureItem&)Get( RES_CHRATR_CJK_POSTURE,bInP); } +inline const SvxPostureItem &SwAttrSet::GetCTLPosture(BOOL bInP) const + { return (const SvxPostureItem&)Get( RES_CHRATR_CTL_POSTURE,bInP); } +inline const SvxWeightItem &SwAttrSet::GetWeight(BOOL bInP) const + { return (const SvxWeightItem&)Get( RES_CHRATR_WEIGHT,bInP); } +inline const SvxWeightItem &SwAttrSet::GetCJKWeight(BOOL bInP) const + { return (const SvxWeightItem&)Get( RES_CHRATR_CJK_WEIGHT,bInP); } +inline const SvxWeightItem &SwAttrSet::GetCTLWeight(BOOL bInP) const + { return (const SvxWeightItem&)Get( RES_CHRATR_CTL_WEIGHT,bInP); } +inline const SvxShadowedItem &SwAttrSet::GetShadowed(BOOL bInP) const + { return (const SvxShadowedItem&)Get( RES_CHRATR_SHADOWED,bInP); } +inline const SvxAutoKernItem &SwAttrSet::GetAutoKern(BOOL bInP) const + { return (const SvxAutoKernItem&)Get( RES_CHRATR_AUTOKERN,bInP); } +inline const SvxWordLineModeItem &SwAttrSet::GetWordLineMode(BOOL bInP) const + { return (const SvxWordLineModeItem&)Get( RES_CHRATR_WORDLINEMODE,bInP); } +inline const SvxContourItem &SwAttrSet::GetContour(BOOL bInP) const + { return (const SvxContourItem&)Get( RES_CHRATR_CONTOUR,bInP); } +inline const SvxKerningItem &SwAttrSet::GetKerning(BOOL bInP) const + { return (const SvxKerningItem&)Get( RES_CHRATR_KERNING,bInP); } +inline const SvxUnderlineItem &SwAttrSet::GetUnderline(BOOL bInP) const + { return (const SvxUnderlineItem&)Get( RES_CHRATR_UNDERLINE,bInP); } +inline const SvxCrossedOutItem &SwAttrSet::GetCrossedOut(BOOL bInP) const + { return (const SvxCrossedOutItem&)Get( RES_CHRATR_CROSSEDOUT,bInP); } +inline const SvxFontHeightItem &SwAttrSet::GetSize(BOOL bInP) const + { return (const SvxFontHeightItem&)Get( RES_CHRATR_FONTSIZE,bInP); } +inline const SvxFontHeightItem &SwAttrSet::GetCJKSize(BOOL bInP) const + { return (const SvxFontHeightItem&)Get( RES_CHRATR_CJK_FONTSIZE,bInP); } +inline const SvxFontHeightItem &SwAttrSet::GetCTLSize(BOOL bInP) const + { return (const SvxFontHeightItem&)Get( RES_CHRATR_CTL_FONTSIZE,bInP); } +inline const SvxPropSizeItem &SwAttrSet::GetPropSize(BOOL bInP) const + { return (const SvxPropSizeItem&)Get( RES_CHRATR_PROPORTIONALFONTSIZE,bInP); } +inline const SvxFontItem &SwAttrSet::GetFont(BOOL bInP) const + { return (const SvxFontItem&)Get( RES_CHRATR_FONT,bInP); } +inline const SvxFontItem &SwAttrSet::GetCJKFont(BOOL bInP) const + { return (const SvxFontItem&)Get( RES_CHRATR_CJK_FONT,bInP); } +inline const SvxFontItem &SwAttrSet::GetCTLFont(BOOL bInP) const + { return (const SvxFontItem&)Get( RES_CHRATR_CTL_FONT,bInP); } +inline const SvxColorItem &SwAttrSet::GetColor(BOOL bInP) const + { return (const SvxColorItem&)Get( RES_CHRATR_COLOR,bInP); } +inline const SvxCharSetColorItem &SwAttrSet::GetCharSetColor(BOOL bInP) const + { return (const SvxCharSetColorItem&)Get( RES_CHRATR_CHARSETCOLOR,bInP); } +inline const SvxLanguageItem &SwAttrSet::GetLanguage(BOOL bInP) const + { return (const SvxLanguageItem&)Get( RES_CHRATR_LANGUAGE,bInP); } +inline const SvxLanguageItem &SwAttrSet::GetCJKLanguage(BOOL bInP) const + { return (const SvxLanguageItem&)Get( RES_CHRATR_CJK_LANGUAGE,bInP); } +inline const SvxLanguageItem &SwAttrSet::GetCTLLanguage(BOOL bInP) const + { return (const SvxLanguageItem&)Get( RES_CHRATR_CTL_LANGUAGE,bInP); } +inline const SvxEscapementItem &SwAttrSet::GetEscapement(BOOL bInP) const + { return (const SvxEscapementItem&)Get( RES_CHRATR_ESCAPEMENT,bInP); } +inline const SvxCaseMapItem &SwAttrSet::GetCaseMap(BOOL bInP) const + { return (const SvxCaseMapItem&)Get( RES_CHRATR_CASEMAP,bInP); } +inline const SvxNoHyphenItem &SwAttrSet::GetNoHyphenHere(BOOL bInP) const + { return (const SvxNoHyphenItem&)Get( RES_CHRATR_NOHYPHEN,bInP); } +inline const SvxBlinkItem &SwAttrSet::GetBlink(BOOL bInP) const + { return (const SvxBlinkItem&)Get( RES_CHRATR_BLINK,bInP); } +inline const SvxBrushItem &SwAttrSet::GetChrBackground( BOOL bInP ) const + { return (const SvxBrushItem&)Get( RES_CHRATR_BACKGROUND, bInP ); } + +/****************************************************************************** + * Implementierung der Charakter-Attribut Methoden vom SwFmt + * AMA: 12.10.94: Umstellung auf SvxItems. + ******************************************************************************/ + +inline const SvxPostureItem &SwFmt::GetPosture(BOOL bInP) const + { return aSet.GetPosture(bInP); } +inline const SvxWeightItem &SwFmt::GetWeight(BOOL bInP) const + { return aSet.GetWeight(bInP); } +inline const SvxShadowedItem &SwFmt::GetShadowed(BOOL bInP) const + { return aSet.GetShadowed(bInP); } +inline const SvxAutoKernItem &SwFmt::GetAutoKern(BOOL bInP) const + { return aSet.GetAutoKern(bInP); } +inline const SvxWordLineModeItem &SwFmt::GetWordLineMode(BOOL bInP) const + { return aSet.GetWordLineMode(bInP); } +inline const SvxContourItem &SwFmt::GetContour(BOOL bInP) const + { return aSet.GetContour(bInP); } +inline const SvxKerningItem &SwFmt::GetKerning(BOOL bInP) const + { return aSet.GetKerning(bInP); } +inline const SvxUnderlineItem &SwFmt::GetUnderline(BOOL bInP) const + { return aSet.GetUnderline(bInP); } +inline const SvxCrossedOutItem &SwFmt::GetCrossedOut(BOOL bInP) const + { return aSet.GetCrossedOut(bInP); } +inline const SvxFontHeightItem &SwFmt::GetSize(BOOL bInP) const + { return aSet.GetSize(bInP); } +inline const SvxPropSizeItem &SwFmt::GetPropSize(BOOL bInP) const + { return aSet.GetPropSize(bInP); } +inline const SvxFontItem &SwFmt::GetFont(BOOL bInP) const + { return aSet.GetFont(bInP); } +inline const SvxColorItem &SwFmt::GetColor(BOOL bInP) const + { return aSet.GetColor(bInP); } +inline const SvxCharSetColorItem &SwFmt::GetCharSetColor(BOOL bInP) const + { return aSet.GetCharSetColor(bInP); } +inline const SvxLanguageItem &SwFmt::GetLanguage(BOOL bInP) const + { return aSet.GetLanguage(bInP); } +inline const SvxEscapementItem &SwFmt::GetEscapement(BOOL bInP) const + { return aSet.GetEscapement(bInP); } +inline const SvxCaseMapItem &SwFmt::GetCaseMap(BOOL bInP) const + { return aSet.GetCaseMap(bInP); } +inline const SvxNoHyphenItem &SwFmt::GetNoHyphenHere(BOOL bInP) const + { return aSet.GetNoHyphenHere(bInP); } +inline const SvxBlinkItem &SwFmt::GetBlink(BOOL bInP) const + { return aSet.GetBlink(bInP); } +inline const SvxBrushItem &SwFmt::GetChrBackground(BOOL bInP) const + { return aSet.GetChrBackground(bInP); } + +#endif diff --git a/sw/inc/charfmt.hxx b/sw/inc/charfmt.hxx new file mode 100644 index 000000000000..0209942b6472 --- /dev/null +++ b/sw/inc/charfmt.hxx @@ -0,0 +1,90 @@ +/************************************************************************* + * + * $RCSfile: charfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CHARFMT_HXX +#define _CHARFMT_HXX + +#ifndef _FORMAT_HXX +#include +#endif + +class SwCharFmt : public SwFmt +{ + friend class SwDoc; + friend class SwTxtFmtColl; + + SwCharFmt( SwAttrPool& rPool, const sal_Char* pFmtName, + SwCharFmt *pDerivedFrom ) + : SwFmt( rPool, pFmtName, aCharFmtSetRange, pDerivedFrom, RES_CHRFMT ) + {} + SwCharFmt( SwAttrPool& rPool, const String &rFmtName, + SwCharFmt *pDerivedFrom ) + : SwFmt( rPool, rFmtName, aCharFmtSetRange, pDerivedFrom, RES_CHRFMT ) + {} + + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. +}; + +#endif + + + diff --git a/sw/inc/chpfld.hxx b/sw/inc/chpfld.hxx new file mode 100644 index 000000000000..fcca48550201 --- /dev/null +++ b/sw/inc/chpfld.hxx @@ -0,0 +1,129 @@ +/************************************************************************* + * + * $RCSfile: chpfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CHPFLD_HXX +#define _CHPFLD_HXX + +#include "fldbas.hxx" + +class SwFrm; +class SwTxtNode; + +#ifndef _UNOOBJ_HXX +#include +#endif + +enum SwChapterFormat +{ + CF_BEGIN, + CF_NUMBER = CF_BEGIN, // nur die Kapitelnummer + CF_TITLE, // nur die "Ueberschrift" + CF_NUM_TITLE, // Kapitelnummer und "Ueberschrift" + CF_NUMBER_NOPREPST, // nur die Kapitelnummer ohne Post/Prefix + CF_NUM_NOPREPST_TITLE, // Kapitelnummer ohne Post/Prefix und "Ueberschrift" + CF_END +}; + +/*-------------------------------------------------------------------- + Beschreibung: Kapitel + --------------------------------------------------------------------*/ + +class SwChapterFieldType : public SwFieldType +{ +public: + SwChapterFieldType(); + + virtual SwFieldType* Copy() const; + +}; + + + +/*-------------------------------------------------------------------- + Beschreibung: Kapitelnummer + --------------------------------------------------------------------*/ +class SwChapterField : public SwField +{ + friend class SwChapterFieldType; + BYTE nLevel; + String sTitle, sNumber, sPre, sPost; +public: + SwChapterField(SwChapterFieldType*, ULONG nFmt = 0); + + void ChangeExpansion( const SwFrm*, const SwTxtNode*, BOOL bSrchNum = FALSE); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline BYTE GetLevel() const; + inline void SetLevel(BYTE); + + inline const String& GetNumber() const; + inline const String& GetTitle() const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline BYTE SwChapterField::GetLevel() const { return nLevel; } +inline void SwChapterField::SetLevel(BYTE nLev) { nLevel = nLev; } +inline const String& SwChapterField::GetNumber() const { return sNumber; } +inline const String& SwChapterField::GetTitle() const { return sTitle; } + +#endif // _CHPFLD_HXX diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h new file mode 100644 index 000000000000..175464741804 --- /dev/null +++ b/sw/inc/cmdid.h @@ -0,0 +1,1225 @@ +/************************************************************************* + * + * $RCSfile: cmdid.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +/****************************************************************************** +Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr + erlaubt, da es von swicli.c included wird! +******************************************************************************/ + +#ifndef _SFX_HRC +#include +#endif + +/* Flags die mittels des Disable-Features in den Slot-Definitionen ausgenutzt + * werden */ +#define SW_DISABLE_ON_PROTECTED_CURSOR 0x00000001 +#define SW_DISABLE_ON_MAILBOX_EDITOR 0x00000002 + + +#define FN_FILE SID_SW_START +#define FN_EDIT (SID_SW_START + 100) +#define FN_VIEW (SID_SW_START + 200) +#define FN_INSERT (SID_SW_START + 300) +#define FN_FORMAT (SID_SW_START + 400) +#define FN_EXTRA (SID_SW_START + 600) +#define FN_WINDOW (SID_SW_START + 700) +#define FN_HELP (SID_SW_START + 800) +#define FN_SELECTION (SID_SW_START + 900) +#define FN_QUERY (SID_SW_START + 1000) +#define FN_ENVELP (SID_SW_START + 1050) +#define FN_PARAM (SID_SW_START + 1100) +#define FN_STAT (SID_SW_START + 1180) +#define FN_PRNOPT (SID_SW_START + 1200) +#define FN_PGPREVIEW (SID_SW_START + 1250) +#define FN_FRAME (SID_SW_START + 1300) +#define FN_INSERT2 (SID_SW_START + 1400) +#define FN_FORMAT2 (SID_SW_START + 1600) +#define FN_EDIT2 (SID_SW_START + 1800) +#define FN_QUERY2 (SID_SW_START + 2000) +#define FN_EXTRA2 (SID_SW_START + 2200) +#define FN_PARAM2 (SID_SW_START + 2400) + +#define HELP_OFFSET 1100 +#define CMD_STR_OFFSET 2200 +#define CMD_STR_OFFSET_MULTILANG 3300 +#define CMDID_END 5500 + +/*-------------------------------------------------------------------- + Bereich: Datei + --------------------------------------------------------------------*/ +#define FN_CLOSE_FILE (FN_FILE + 1 ) /* Schliessen */ +#define FN_LAUNCH_REGISTRY (FN_FILE + 2 ) /* Ablage */ + + +#define FN_NEW_GLOBAL_DOC (FN_FILE + 4 ) /* Globaldokument erzeugen */ +#define FN_NEW_FILE (FN_FILE + 5 ) /* Neu */ +#define FN_NEW_FILE_DLG (FN_FILE + 6 ) /* Neu Dialog */ +#define FN_OPEN_FILE (FN_FILE + 7 ) /* Oeffnen */ +#define FN_EDIT_FILE (FN_FILE + 8 ) /* Oeffnen oder ToTop */ + +#define FN_INETFILE (FN_FILE + 9 ) /* Internet File-Dialog */ + +#define FN_PRINT_FILE (FN_FILE + 10) /* Drucken */ +#define FN_PRINT_FILE_OPTIONS (FN_FILE + 11) /* Drucken Optionen */ +#define FN_SAVE_FILE_AS (FN_FILE + 12) /* Speichern unter */ +#define FN_SAVE_FILE (FN_FILE + 13) /* Speichern */ +#define FN_SETUP_PRINTER (FN_FILE + 14) /* Druckereinstellung */ +#define FN_SETUP_PRINTER_DLG (FN_FILE + 15) /* Druckereinstellung */ +#define FN_SHOW_PREVIEW (FN_FILE + 16) /* Druckbild */ +#define FN_EXIT (FN_FILE + 17) /* Writer beenden */ +#define FN_PRINT_CFG_DLG (FN_FILE + 18) /* Optionen Drucken */ + + + +#define FN_SAVE_ALL (FN_FILE + 23) /* Alle Files speichern */ +#define FN_NEW_FILE_DEFAULT (FN_FILE + 24) /* Neue Datei mit Standardvorlage */ +#define FN_PRINT_FILE_DEFAULT (FN_FILE + 25) /* Drucken mit Defaults */ +#define FN_LAUNCH_EQ_EDITOR (FN_FILE + 26) /* Formel Editor */ +#define FN_CHANGE_PRINTER (FN_FILE + 27) /* Drucker einstellen */ +#define FN_FAX_END (FN_FILE + 29) /* Faxen fertig, Id fuer PostMessage */ + +#define FN_SELECT_DATABASE (FN_FILE + 30) /* Selektion Datenbank */ +#define FN_DOC_INFO_DLG (FN_FILE + 31) /* Dokumentinfo */ +#define FN_DOC_MGR_DLG (FN_FILE + 32) /* Dokument-Manager */ + +#define FN_GET_DOCSTAT (FN_FILE + 33) /* Dokumentstatistik einzeln auslesen */ + + +#define FN_SAVE_SELECTION (FN_FILE + 35) /* Selektion speichern */ + +#define FN_OUTLINE_TO_IMPRESS (FN_FILE + 36) /* Outline zu StarImpress senden */ +#define FN_OUTLINE_TO_CLIPBOARD (FN_FILE + 37) /* Outline in das Clipboad copieren */ + +#define FN_NEW_HTML_DOC (FN_FILE + 40 ) /* HTML-Dokument "erzeugen" */ + +#define FN_APP_START (FN_FILE + 98) /* fuer Makro bei App.Start */ +#define FN_APP_END (FN_FILE + 99) /* fuer Makro bei App.Ende */ + +/*-------------------------------------------------------------------- + Bereich: Bearbeiten + --------------------------------------------------------------------*/ +#define FN_CLEAR (FN_EDIT + 1 ) /* Loeschen */ +#define FN_COPY (FN_EDIT + 2 ) /* Kopieren */ +#define FN_CUT (FN_EDIT + 3 ) /* Ausschneiden */ +#define FN_EDIT_FIELD (FN_EDIT + 4 ) /* Textbefehl bearbeiten */ +#define FN_EDIT_FIELD_DLG (FN_EDIT + 5 ) /* Textbefehl bearbeiten */ +#define FN_EDIT_FILE_INFO (FN_EDIT + 6 ) /* Dokumentinfo */ +#define FN_EDIT_FILE_INFO_DLG (FN_EDIT + 7 ) /* Dokumentinfo Dialog */ +#define FN_EDIT_LINK (FN_EDIT + 8 ) /* Verknuepfungen */ +#define FN_EDIT_LINK_DLG (FN_EDIT + 9 ) /* Verknuepfungen */ +#define FN_GOTO (FN_EDIT + 11) /* Gehe zu */ + +#define FN_PASTE (FN_EDIT + 13) /* Einfuegen */ +#define FN_PASTESPECIAL (FN_EDIT + 14) /* Verknuepfung einfuegen */ +#define FN_PASTESPECIAL_DLG (FN_EDIT + 15) /* Verknuepfung einfuegen */ + +#define FN_NUMBER_BULLETS (FN_EDIT + 21) /* Bullets */ +#define FN_REPEAT (FN_EDIT + 22) /* Letzten Befehl wiederholen */ +#define FN_EDIT_IDX_ENTRY_DLG (FN_EDIT + 23) /* Index-Entry bearbeiten */ +#define FN_UPDATE_FIELDS (FN_EDIT + 26) /* Feldinhalte erneuern */ +#define FN_EXECUTE_MACROFIELD (FN_EDIT + 27) /* Macrofeld ausfuehren */ +#define FN_EDIT_FORMULA (FN_EDIT + 28) /* Formel in RibbonBar bearbeiten */ +#define FN_CALC_TABLE (FN_EDIT + 29) /* Tabelle durchrechnen */ + +/*-------------------------------------------------------------------- + Bereich: Bullets + --------------------------------------------------------------------*/ +#define FN_NUM_BULLET_DOWN (FN_EDIT + 30) /* Runterstufen */ +#define FN_NUM_BULLET_UP (FN_EDIT + 31) /* Raufstufen */ +#define FN_NUM_BULLET_PREV (FN_EDIT + 32) /* zum vorigen Eintrag */ +#define FN_NUM_BULLET_NEXT (FN_EDIT + 33) /* zum naechsten Eintrag */ +#define FN_NUM_BULLET_MOVEUP (FN_EDIT + 34) /* nach oben schieben */ +#define FN_NUM_BULLET_MOVEDOWN (FN_EDIT + 35) /* nach unten schieben */ +#define FN_NUM_BULLET_NONUM (FN_EDIT + 36) /* Eintrag ohne Nummer */ +#ifndef FN_NUM_BULLET_OFF //in SVX already +#define FN_NUM_BULLET_OFF (FN_EDIT + 37) /* Numerierung aus */ +#endif + + +// schon im SVX +//#define FN_NUM_BULLET_ON (FN_EDIT + 38) /* Numerierung mit Bullets an */ + +#define FN_NUM_BULLET_OUTLINE_DOWN (FN_EDIT + 39) /* Runterstufen mit Unterpunkten */ +#define FN_NUM_BULLET_OUTLINE_UP (FN_EDIT + 40) /* Raufstufen mit Unterpunkten */ +#define FN_NUM_BULLET_OUTLINE_MOVEUP (FN_EDIT + 41) /* nach oben schieben mit Unterpunkten */ +#define FN_NUM_BULLET_OUTLINE_MOVEDOWN (FN_EDIT + 42) /* nach unten schieben mit Unterpunkten */ +#define FN_UPDATE_INPUTFIELDS (FN_EDIT + 43) /* Eingabefelder updaten */ +// schon im SVX +//#define FN_NUM_NUMBERING_ON (FN_EDIT + 44) /* Numerierung an */ + +#define FN_NUM_OR_NONUM (FN_EDIT + 46) /* Nummer ein-/aus */ + +#define FN_GOTO_NEXT_INPUTFLD (FN_EDIT + 47) /* zum naechsten EingabeFeld */ +#define FN_GOTO_PREV_INPUTFLD (FN_EDIT + 48) /* zum vorherigen EingabeFeld */ + +#define FN_REPEAT_SEARCH (FN_EDIT + 50) /* Suche wiederholen */ +#define FN_REPEAT_REPLACE (FN_EDIT + 51) /* Ersetzen wiederholen */ +#define FN_UPDATE_GRAFIC (FN_EDIT + 53) /* Grafik aendern */ +#define FN_SETTAB_ATCURPOS (FN_EDIT + 54) /* Tab an der aktuellen Pos setzen */ +#define FN_SET_LR_IND_ATCURPOS (FN_EDIT + 55) /* EZE und LR setzen */ +#define FN_FRMCNT_TO_BODY (FN_EDIT + 56) /* Rahmeninhalt zu Text */ +#define FN_UPDATE_TOXBASE (FN_EDIT + 57) /* Naechstes Verzeichnis erneuern */ + +#define FN_REPAGINATE (FN_EDIT + 61) /* Neuformatierung erzwingen */ +#define FN_EDIT_FOOTNOTE (FN_EDIT + 62) /* Fussnote bearbeiten */ + +#define FN_EDIT_REGION (FN_EDIT + 65) /* Bereiche bearbeiten */ +#define FN_GOTO_REFERENCE (FN_EDIT + 66) /* Von der Refmark zur Referenz */ + +// schon im Svx definiert +#define FN_NEXT_BOOKMARK (FN_EDIT + 68) /* */ +#define FN_PREV_BOOKMARK (FN_EDIT + 69) /* */ + +/*Navigator ToolBoxen*/ +#define FN_SELECT_BOOKMARK (FN_EDIT + 70) /**/ +#define FN_ITEM_DOWN (FN_EDIT + 71) /**/ +#define FN_ITEM_LEFT (FN_EDIT + 72) /**/ +#define FN_ITEM_RIGHT (FN_EDIT + 73) /**/ +#define FN_ITEM_UP (FN_EDIT + 74) /**/ +#define FN_DOWN (FN_EDIT + 75) /**/ + +#define FN_SELECT_FOOTER (FN_EDIT + 77) /**/ +#define FN_SELECT_FRAME (FN_EDIT + 78) /**/ +#define FN_SELECT_HEADER (FN_EDIT + 79) /**/ +#define FN_PAGENUMBER (FN_EDIT + 80) /**/ +#define FN_SELECT_AUTO_BOOKMARK (FN_EDIT + 81) /**/ +#define FN_SELECT_FOOTNOTE (FN_EDIT + 82) /**/ +#define FN_SELECT_SET_AUTO_BOOKMARK (FN_EDIT + 83) /**/ +#define FN_SELECT_TABLE (FN_EDIT + 84) /**/ +#define FN_SELECT_INDEX (FN_EDIT + 85) /**/ +#define FN_UP (FN_EDIT + 86) /**/ + + +//#define FN_DELETE_REGION (FN_EDIT + 89) /* Bereiche loeschen */ + + +#define FN_SELECT_PARA (FN_EDIT + 97) /* Absatz selektieren */ + +#define FN_SELECT_CONTENT (FN_EDIT + 99) /* Navigator - Inhaltstyp */ + + + + +#define FN_UPDATE_ALL_LINKS (FN_EDIT2 + 24) /* alle Links updaten */ + +#define FN_REDLINE_ON (FN_EDIT2 + 25) /* Redlining anschalten */ +#define FN_REDLINE_SHOW (FN_EDIT2 + 26) /* Redlining anzeigen */ +#define FN_REDLINE_COMMENT (FN_EDIT2 + 27) /* Redlining kommentieren */ + +#define FN_UPDATE_ALL (FN_EDIT2 + 28) /* FN_UPDATE_ALL_LINKS, + FN_UPDATE_FIELDS, + FN_UPDATE_TOX, + CalcLayout */ + +#define FN_REDLINE_ACCEPT (FN_EDIT2 + 29) /* Redlining annehmen/ablehnen */ +#define FN_ATTR_COLUMNS (FN_EDIT2 + 31) /* SlotId fuer SwFmtCol */ +#define FN_EDIT_CURRENT_TOX (FN_EDIT2 + 32) /* edit current index */ +#define FN_EDIT_AUTH_ENTRY_DLG (FN_EDIT2 + 33) /* edit authorities entry*/ +#define FN_UPDATE_CHARTS (FN_EDIT2 + 34) /* update all charts */ + +#define FN_EDIT_HYPERLINK (FN_EDIT2 + 35) /* edit hyperlink */ + +/*-------------------------------------------------------------------- + Bereich: Bearbeiten + --------------------------------------------------------------------*/ + +#define FN_REFRESH_VIEW (FN_VIEW + 1) /* Refresh/Redraw */ +#define FN_SHOW_OUTLINE_VIEW (FN_VIEW + 2) /* Gliederungsansicht */ + +#define FN_DRAW_WRAP_DLG (FN_VIEW + 3) /* Draw Umlauf-Dlg */ + +#define FN_RULER (FN_VIEW + 11) /* Horizontales Lineal */ + +#define FN_VIEW_GRAPHIC (FN_VIEW + 13) /* Grafiken anzeigen */ +#define FN_VIEW_BOUNDS (FN_VIEW + 14) /* Begrenzungen */ +#define FN_VIEW_FIELDS (FN_VIEW + 15) /* Textbefehle */ +#define FN_VLINEAL (FN_VIEW + 16) /* Vertikales Lineal */ +#define FN_VSCROLLBAR (FN_VIEW + 17) /* Vertikaler Scrollbar */ +#define FN_HSCROLLBAR (FN_VIEW + 18) /* Horizontaler Scrollbar */ +#define FN_TOOLBOX_TOGGLE (FN_VIEW + 19) /* Toolboxinhalte umschalten */ +#define FN_VIEWOPTIONS_ON (FN_VIEW + 20) /* Gruppe Viewoptions an */ +#define FN_VIEWOPTIONS_OFF (FN_VIEW + 21) /* Gruppe Viewoptions aus */ +#define FN_CONTROLS_ON (FN_VIEW + 22) /* Gruppe Bedienelemte an */ +#define FN_CONTROLS_OFF (FN_VIEW + 23) /* Gruppe Bedienelemte aus */ + +#define FN_VIEW_META_CHARS (FN_VIEW + 24) /* Sonderzeichen anzeigen */ +#define FN_VIEW_MARKS (FN_VIEW + 25) /* Markierungen anzeigen */ +#define FN_VIEW_FIELDNAME (FN_VIEW + 26) /* Feldname anzeigen */ +#define FN_VIEW_TABLEGRID (FN_VIEW + 27) /* Tabellenbegrenzungen anzeigen */ + +#define FN_LAUNCH_SIM (FN_VIEW + 28) /* StarImage starten */ +#define FN_SET_PAGE (FN_VIEW + 29) /* Seitenvorlage am Absatz setzen */ + +#define FN_TOOLBOX_SWITCH (FN_VIEW + 30) /* Auf Textshell umschalten */ + + +//noch mehr Navigator +#define FN_CONTENT_LB (FN_VIEW + 32) /**/ +#define FN_SHOW_CONTENT_BOX (FN_VIEW + 33) /**/ +#define FN_SHOW_ROOT (FN_VIEW + 34) /**/ +#define FN_DROP_REGION (FN_VIEW + 35) /**/ +#define FN_OUTLINE_LEVEL (FN_VIEW + 36) /**/ + +#define FN_PRINT_LAYOUT (FN_VIEW + 37) /* invertierter BrowseMode */ + +#define FN_DROP_REGION_LINK (FN_VIEW + 38) /**/ +#define FN_DROP_REGION_COPY (FN_VIEW + 39) /**/ + +#define FN_SCROLL_NAVIGATION (FN_VIEW + 40) /* Navigationscontroller am Scrollbar*/ +#define FN_SCROLL_NEXT_PREV (FN_VIEW + 41) /* arbeitet den MoveType ab */ + +#define FN_VIEW_HIDDEN_PARA (FN_VIEW + 42) /* Versteckte Absaetze */ +#define FN_VIEW_SMOOTH_SCROLL (FN_VIEW + 43) + +#define FN_GLOBAL_SWITCH (FN_VIEW + 44) /* umschalten zw. Global und Inhalt*/ +#define FN_GLOBAL_EDIT (FN_VIEW + 45) /* bearbeiten */ +#define FN_GLOBAL_UPDATE (FN_VIEW + 46) /* aktualisieren */ +#define FN_GLOBAL_OPEN (FN_VIEW + 47) /* oeffnen */ +#define FN_GLOBAL_SAVE_CONTENT (FN_VIEW + 48) /* Inhalt der Verknuepfung mitspeichern */ +#define FN_CREATE_NAVIGATION (FN_VIEW + 49) /* Navigations-Controller erzeugen */ +#define FN_PREVIEW_PRINT_OPTIONS (FN_VIEW + 50) /* Optionsdialog Preview drucken */ +#define FN_PREVIEW_ZOOM (FN_VIEW + 51) /* der Tabellencontroller fuer den Zoom */ + +#define FN_SET_MODOPT_TBLNUMFMT (FN_VIEW + 52) /* Zahlenerkennung in Tabellen */ + +/*-------------------------------------------------------------------- + Bereich: Einfuegen + --------------------------------------------------------------------*/ +// schon im Svx definiert +#define FN_INSERT_BOOKMARK (FN_INSERT + 2 ) /* Sprungmarke einfuegen */ + +// schon im SVX unter der gleichen Id +//#define FN_INSERT_BREAK (FN_INSERT + 3 ) /* Umbruch */ + +#define FN_INSERT_BREAK_DLG (FN_INSERT + 4 ) /* Umbruch */ +#define FN_INSERT_COLUMN_BREAK (FN_INSERT + 5 ) /* Spaltenumbruch */ +#define FN_INSERT_DATE_TIME (FN_INSERT + 6 ) /* Datum/Uhrzeit */ +#define FN_INSERT_FIELD (FN_INSERT + 8 ) /* Textbefehl */ +#define FN_CHANGE_DBFIELD (FN_INSERT + 9 ) /* Datenbankfeld aendern */ + +#define FN_INSERT_CAPTION (FN_INSERT + 10) /* Beschriftung */ +#define FN_INSERT_FOOTNOTE_DLG (FN_INSERT + 12) /* Dialog Fussnote */ + +#define FN_INSERT_REF_FIELD (FN_INSERT + 13) /* Refernzfeld einfuegen */ + +#define FN_INSERT_HYPERLINK (FN_INSERT + 14) /* Zeichendialog/HyperlinkPage*/ + +#define FN_INSERT_INDEX (FN_INSERT + 16) /* Stichworteintrag */ +#define FN_INSERT_INDEX_DLG (FN_INSERT + 17) /* Stichworteintrag */ +#define FN_INSERT_LINEBREAK (FN_INSERT + 18) /* Zeilenumbruch */ + +#define FN_INSERT_OBJECT (FN_INSERT + 21) /* Object */ +#define FN_INSERT_OBJECT_DLG (FN_INSERT + 22) /* Object */ +#define FN_INSERT_PAGEBREAK (FN_INSERT + 23) /* Seitenumbruch */ +#define FN_INSERT_PAGENO (FN_INSERT + 24) /* Seitennummer */ +#define FN_INSERT_PARAGRAPH (FN_INSERT + 25) /* Absatz */ +#define FN_INSERT_RECORD (FN_INSERT + 26) /* Datensatz einfuegen */ +#define FN_MERGE_RECORD (FN_INSERT + 27) /* Datensatz mischen */ +#define FN_INSERT_SYMBOL (FN_INSERT + 28) /* Sonderzeichen */ +#define FN_POSTIT (FN_INSERT + 29) /* PostIt einfuegen/bearbeiten */ +#define FN_INSERT_TABLE (FN_INSERT + 30) /* Tabelle */ +// schon im Svx definiert +#define FN_INSERT_COLS (FN_INSERT + 32) /* Spalten einfuegen */ +#define FN_INSERT_FRAME_INTERACT (FN_INSERT + 33) /* Rahmen einfuegen aktiv */ +#define FN_INSERT_FRAME (FN_INSERT + 34) /* Rahmen einfuegen */ + +#define FN_INSERT_IDX_ENTRY_DLG (FN_INSERT + 35) /* Verzeichniseintrag einfuegen */ +#define FN_INSERT_FRAME_INTERACT_NOCOL (FN_INSERT + 36) /*insert interactive non column frame*/ + +#define FN_INSERT_SOFT_HYPHEN (FN_INSERT + 43) /* weicher Trenner */ +#define FN_INSERT_HARD_SPACE (FN_INSERT + 44) /* hartes Space */ +#define FN_INSERT_REGION (FN_INSERT + 45) /* Bereich einfuegen */ + + + +#define FN_TOOL_GROUP (FN_INSERT + 47) /* Objekte gruppieren */ +#define FN_TOOL_UNGROUP (FN_INSERT + 48) /* Gruppierng aufheben */ + +#define FN_TOOL_ANKER (FN_INSERT + 49) /* Draw-Objekt umankern */ +#define FN_TOOL_ANKER_PAGE (FN_INSERT + 50) /* Draw-Objekt an Seite verankern */ +#define FN_TOOL_ANKER_PARAGRAPH (FN_INSERT + 51) /* Draw-Objekt am Absatz verankern */ +#define FN_TOOL_HIERARCHIE (FN_INSERT + 52) /* Hierarchie aendern */ +#define FN_TOOL_VMIRROR (FN_INSERT + 53) /* Objekt in unteren Layer */ +#define FN_TOOL_HMIRROR (FN_INSERT + 54) /* Objekt in oberen Layer */ + +//#define FN_QRY_OPEN_DB (FN_INSERT + 55) /* Datenbank oeffnen (Basic) */ +//#define FN_QRY_DEFINE_DB (FN_INSERT + 56) /* Neue Datenbankdefinition anlegen (Basic) */ +//#define FN_QRY_SELECT (FN_INSERT + 57) /* SQL-Statement angeben (Basic) */ +//#define FN_QRY_TO_FIRST_REC (FN_INSERT + 58) /* Ersten Datensatz anwaehlen (Basic) */ +//#define FN_QRY_TO_NEXT_REC (FN_INSERT + 59) /* Naechsten Datensatz anwaehlen (Basic) */ +//#define FN_QRY_TO_REC (FN_INSERT + 60) /* Bestimmten Datensatz anwaehlen (Basic) */ +//#define FN_QRY_GET_RECORD_ID (FN_INSERT + 61) /* Datensatznummer erfragen (Basic) */ +//#define FN_QRY_GET_COLUMN_NUM (FN_INSERT + 62) /* Anzahl der Spalten (Basic) */ + +#define FN_QRY (FN_INSERT + 63) /* Datensatz einfuegen */ +#define FN_QRY_MERGE (FN_INSERT + 64) /* Datensatz einfuegen (Serienbrief) */ +#define FN_QRY_OPEN_TABLE (FN_INSERT + 65) /* Datenbank oeffnen (Basic) */ +#define FN_TOOL_ANKER_FRAME (FN_INSERT + 66) /* Draw-Objekt am Rahmen verankern */ +//#define FN_QRY_SWITCH (FN_INSERT + 67) /* Auf eine bestimmte Datenbank umschalten */ + +#define FN_INSERT_SIM (FN_INSERT + 68) /* Einfuegen StarImage */ +#define FN_INSERT_SMA (FN_INSERT + 69) /* Einfuegen StarMath */ + +#define FN_QRY_GET_COLUMN_NAME (FN_INSERT + 70) /* Anzahl der Spalten (Basic) */ +#define FN_QRY_GET_COLUMN_TYPE (FN_INSERT + 71) /* Type des Datenbankfeldes ermitteln (Basic) */ +#define FN_QRY_GET_COLUMN_TEXT (FN_INSERT + 72) /* Inhalt des aktuellen Datensatzes (Basic) */ +#define FN_QRY_DEL_DEFINED_DB (FN_INSERT + 75) /* Datenbankdefinition loeschen (Basic) */ + +#define FN_DRAWTEXT_ATTR_DLG (FN_INSERT + 76) /* DrawText positionieren */ + +#define FN_QRY_APPEND_RECORD (FN_INSERT + 77) /* Neuen Datensatz anhaengen */ +#define FN_QRY_UPDATE_RECORD (FN_INSERT + 78) /* Datensatzspalte aendern */ +#define FN_QRY_DELETE_RECORD (FN_INSERT + 79) /* Datensatz loeschen */ +#define FN_QRY_GET_PHYS_RECORD_ID (FN_INSERT + 80) /* Physikalische (absolute) Datensatznummer erfragen (Basic) */ + +#define FN_TOOL_ANKER_CHAR (FN_INSERT + 84) /* DrawObject zeichengebunden */ +#define FN_INSERT_HARDHYPHEN (FN_INSERT + 85) /* Bindestrich ohne Umbruch*/ + +#define FN_QRY_INSERT (FN_INSERT + 86) /* Datensatz-Selektion in Text einfuegen */ +#define FN_QRY_MERGE_FIELD (FN_INSERT + 87) /* Datensatz-Selektion in Felder einfuegen */ +#define FN_QRY_INSERT_FIELD (FN_INSERT + 88) /* Datenbankfeld einfuegen */ + +#define FN_INSERT_CTRL (FN_INSERT + 89) /* Werkzeugleistencontroller Einfuegen*/ +#define FN_INSERT_OBJ_CTRL (FN_INSERT + 90) /* Werkzeugleistencontroller Einfuegen/Objekt*/ +#define FN_INSERT_FIELD_CTRL (FN_INSERT + 91) /* Werkzeugleistencontroller Einfuegen/Feldbefehle*/ + +#define FN_INSERT_FLD_DATE (FN_INSERT + 92) +#define FN_INSERT_FLD_TIME (FN_INSERT + 93) +#define FN_INSERT_FLD_PGNUMBER (FN_INSERT + 94) +#define FN_INSERT_FLD_PGCOUNT (FN_INSERT + 95) +#define FN_INSERT_FLD_TOPIC (FN_INSERT + 96) +#define FN_INSERT_FLD_TITLE (FN_INSERT + 97) +#define FN_INSERT_FLD_AUTHOR (FN_INSERT + 98) +#define FN_INSERT_FOOTNOTE (FN_INSERT + 99) + +/*-------------------------------------------------------------------- + Bereich: Einfuegen (2.Teil) + --------------------------------------------------------------------*/ + +#define FN_QRY_GET_ALL_DBNAME (FN_INSERT2 + 1) /* Alle konfigurierten Datenabanknamen ermitteln */ +#define FN_QRY_GET_DBNAME_COUNT (FN_INSERT2 + 2) /* Anzahl aller konfigurierten Datenabanknamen */ +#define FN_QRY_GET_TABLE_NAME (FN_INSERT2 + 3) /* Tabellenname einer Datenbank ermitteln */ +#define FN_QRY_GET_TABLE_COUNT (FN_INSERT2 + 4) /* Anzahl aller Tabellen einer Datenbank ermitteln */ + +#define FN_INSERT_HEADER (FN_INSERT2 + 5) /* Kopfzeile im Html-mode ein/ausschalten */ +#define FN_INSERT_FOOTER (FN_INSERT2 + 6) /* Fuázeile im Html-mode ein/ausschalten */ +#define FN_SBA_BRW_UPDATE (FN_INSERT2 + 7) /* Datensaetze in Felder einfuegen */ +#define FN_SBA_BRW_INSERT (FN_INSERT2 + 8) /* Datensaetze in Text einfuegen */ +#define FN_SBA_BRW_MERGE (FN_INSERT2 + 9) /* Serienbriefdruck */ +#define FN_JAVAEDIT (FN_INSERT2 + 10) /* Scriptfeld bearbeiten */ +#define FN_INSERT_HRULER (FN_INSERT2 + 11) /* horiz. Grafiklinie einfuegen */ +#define FN_TOOL_ANKER_AT_CHAR (FN_INSERT2 + 12) /* Object zeichengebunden */ + +#define FN_INSERT_PAGEHEADER (FN_INSERT2 + 13) /* Standard Kopfzeile einfuegen */ +#define FN_INSERT_PAGEFOOTER (FN_INSERT2 + 14) /* Standard Fusszeile einfuegen */ + +#define FN_INSERT_ENDNOTE (FN_INSERT2 + 18) /* Endnote einfuegen*/ +#define FN_INSERT_COLUMN_SECTION (FN_INSERT2 + 19) /* Spaltigen Bereich einfügen */ + +#define FN_INSERT_MULTI_TOX (FN_INSERT2 + 20) /* insert any TOX */ +#define FN_INSERT_AUTH_ENTRY_DLG (FN_INSERT2 + 21) /* insert entry for table of authorities*/ + +#define FN_SECTION_APPENDNODE (FN_INSERT2 + 22) /* insert an Paragraph behind the current section*/ + +/*-------------------------------------------------------------------- + Bereich: Format + --------------------------------------------------------------------*/ + +#define FN_AUTOFORMAT_APPLY (FN_FORMAT + 1 ) /* Autoformat-Optionen anwenden */ +#define FN_AUTOFORMAT_AUTO (FN_FORMAT + 2 ) /* Autoformat waehrend der Eingabe */ +#define FN_GROW_FONT_SIZE (FN_FORMAT + 3 ) /* Groesse */ +#define FN_SHRINK_FONT_SIZE (FN_FORMAT + 4 ) /* Groesse */ +#define FN_UNDERLINE_DOUBLE (FN_FORMAT + 5 ) /* Doppelt unterstreichen */ +#define FN_AUTOFORMAT_REDLINE_APPLY (FN_FORMAT + 6 ) /* Autoformat mit Redlining anwenden */ +#define FN_SET_SUPER_SCRIPT (FN_FORMAT + 11) /* Hochstellung */ +#define FN_SET_SUB_SCRIPT (FN_FORMAT + 12) /* Tiefstellung */ + +#define FN_SET_CASEMAP (FN_FORMAT + 14) /* CaseMap */ +#define FN_SET_LANGUAGE (FN_FORMAT + 15) /* Sprache */ +#define FN_SET_KERNING (FN_FORMAT + 16) /* Kerning */ + +#define FN_INDENT_TO_TABSTOP (FN_FORMAT + 17) /* Einrueckung auf die naechste Tabpostion */ +//schon in svxids.hrc +//#define FN_SET_JUSTIFY_PARA (FN_FORMAT + 21) /* Ausrichtung Absatz */ +#define FN_FLIP_HORZ_GRAFIC (FN_FORMAT + 25) /* Spiegeln horizontal */ +#define FN_FLIP_VERT_GRAFIC (FN_FORMAT + 26) /* Spiegeln vertikal */ +#define FN_SET_LINE_SPACE (FN_FORMAT + 27) /* Zeilenabstand parametrisiert */ +#define FN_SET_ADJUST (FN_FORMAT + 28) /* Ausrichtung parametrisiert */ +#define FN_SET_LRMARGIN (FN_FORMAT + 29) /* linker/rechter Rand */ +#define FN_SET_ULMARGIN (FN_FORMAT + 30) /* oberer/unterer Rand */ +#define FN_UNINDENT_TO_TABSTOP (FN_FORMAT + 31) /* Einrueckung auf die vorgige Tabpostion */ + +#define FN_SET_HYPHEN_ZONE (FN_FORMAT + 32) /* Silbentrennung */ +#define FN_SET_KEEP_TOGETHER (FN_FORMAT + 34) /* nicht trennen */ +#define FN_SET_KEEP_WITH_NEXT (FN_FORMAT + 35) /* mit folgendem zus. */ +#define FN_SET_WIDOW (FN_FORMAT + 36) /* Widows */ +#define FN_SET_ORPHAN (FN_FORMAT + 37) /* Orphans */ + + +#define FN_REGISTER_COLLECTION (FN_FORMAT + 43) /* Referenzvorlage an der Seite */ +#define FN_REGISTER_MODE (FN_FORMAT + 44) /* Registermodus an/aus */ +#define FN_NUM_FORMAT_TABLE_DLG (FN_FORMAT + 45) /* Zahlenformat in Tabelle */ +#define FN_FORMAT_BORDER_DLG (FN_FORMAT + 48) /* Umrandung */ +#define FN_FORMAT_PAGE_COLUMN_DLG (FN_FORMAT + 49) /* Spalten pro Seite */ +#define FN_FORMAT_BACKGROUND_DLG (FN_FORMAT + 50) /* Hintergrund */ +#define FN_FORMAT_PAGE (FN_FORMAT + 51) /* Seite */ +#define FN_FORMAT_PAGE_DLG (FN_FORMAT + 52) /* Seite */ +#define FN_FORMAT_COLUMN (FN_FORMAT + 53) /* Spalten */ +#define FN_FORMAT_DROPCAPS (FN_FORMAT + 54) /* Initialien */ +#define FN_FORMAT_FRAME (FN_FORMAT + 55) /* Rahmen */ +#define FN_FORMAT_FRAME_DLG (FN_FORMAT + 56) /* Rahmen */ +#define FN_FORMAT_GRAFIC (FN_FORMAT + 57) /* Grafik */ +#define FN_FORMAT_GRAFIC_DLG (FN_FORMAT + 58) /* Grafik */ +#define FN_FORMAT_TABLE (FN_FORMAT + 59) /* Tabelle */ +#define FN_FORMAT_TABLE_DLG (FN_FORMAT + 60) /* Tabelle */ +#define FN_FORMAT_OLE_DLG (FN_FORMAT + 61) /* OLE bearbeiten */ + +#define FN_NEW_STYLE_BY_EXAMPLE (FN_FORMAT + 62) /* Vorlage erzeugen by Example */ +#define FN_UPDATE_STYLE_BY_EXAMPLE (FN_FORMAT + 63) /* Vorlage aktualisieren */ +#define FN_STYLE_SHEET_FRAME_DLG (FN_FORMAT + 64) /* Rahmenvorlage */ +#define FN_STYLE_SHEET_DOC_DLG (FN_FORMAT + 65) /* Dokumentvorlage */ +#define FN_STYLE_SHEET_GRAFIK_DLG (FN_FORMAT + 66) /* Dokumentvorlage */ +#define FN_FORMAT_FOOTNOTE (FN_FORMAT + 67) /* Fussnoten */ +#define FN_FORMAT_FOOTNOTE_DLG (FN_FORMAT + 68) /* Fussnoten-Dialog */ + +// schon im Svx definiert +//#define FN_FORMAT_RESET (FN_FORMAT + 69) /* Format zuruecksetzen */ + +#define FN_FRAME_TO_TOP (FN_FORMAT + 70) /* Rahmen nach oben */ +#define FN_FRAME_TO_BOTTOM (FN_FORMAT + 71) /* Rahmen nach unten */ + +#define FN_FRAME_NOWRAP (FN_FORMAT + 72) /* Rahmen kein Umlauf */ +#define FN_FRAME_WRAP (FN_FORMAT + 73) /* Rahmen Umlauf */ +#define FN_FRAME_WRAPTHRU (FN_FORMAT + 74) /* Rahmen Durchlauf */ + +#define FN_FRAME_ALIGN_HORZ_LEFT (FN_FORMAT + 75) /* Rahmen horz. links */ +#define FN_FRAME_ALIGN_HORZ_RIGHT (FN_FORMAT + 76) /* Rahmen horz. rechts */ +#define FN_FRAME_ALIGN_HORZ_CENTER (FN_FORMAT + 77) /* Rahmen horz. zentriert */ +#define FN_FRAME_ALIGN_VERT_TOP (FN_FORMAT + 78) /* Rahmen vert. oben */ +#define FN_FRAME_ALIGN_VERT_BOTTOM (FN_FORMAT + 79) /* Rahmen vert. unten */ +#define FN_FRAME_ALIGN_VERT_CENTER (FN_FORMAT + 80) /* Rahmen vert. zentriert */ + +#define FN_SET_FRM_POSITION (FN_FORMAT + 82)/* Rahmenposition -- " -- */ +#define FN_SET_FRM_OPTIONS (FN_FORMAT + 86)/* Rahmenoptionen -- " -- */ + +#define FN_SET_PAGE_STYLE (FN_FORMAT + 93) /* Anwenden Seitenv. */ + + +#define FN_TABLE_REP (FN_FORMAT + 99) /* TableRepresentation */ +#define FN_CONVERT_TEXT_TABLE (FN_FORMAT + 100) /* Konvertierung Text <-> Tabelle */ +#define FN_TABLE_INSERT_ROW (FN_FORMAT + 101) /* Tabelle: Zeile einfuegen */ +#define FN_TABLE_INSERT_COL (FN_FORMAT + 102) /* Tabelle: Spalte einfuegen */ +#define FN_TABLE_DELETE_ROW (FN_FORMAT + 103) /* Tabelle: Zeile loeschen */ +#define FN_TABLE_DELETE_COL (FN_FORMAT + 104) /* Tabelle: Spalte loeschen */ +#define FN_TABLE_SPLIT_CELLS (FN_FORMAT + 105) /* Tabelle: Zellen teilen */ +#define FN_TABLE_MERGE_CELLS (FN_FORMAT + 106) /* Tabelle: Zellen verbinden */ +#define FN_TABLE_SET_ROW_HEIGHT (FN_FORMAT + 107) /* Tabelle: Zeilenhoehe setzen */ +#define FN_TABLE_SET_COL_WIDTH (FN_FORMAT + 108) /* Tabelle: Spaltenbreite setzen */ +#define FN_TABLE_SET_ULSPACE (FN_FORMAT + 109) /* Tabelle: oberen / unteren Abstand einstellen */ +#define FN_OPTIMIZE_TABLE (FN_FORMAT + 110) /* ToolBoxItem fuer Optimierung in Tabellen */ +#define FN_TABLE_SET_SHADOW (FN_FORMAT + 111) /* Tabelle: Schatten einstellen */ +#define FN_TABLE_GOTO_CELL (FN_FORMAT + 112) /* Tabelle: Zelle anspringen */ +#define FN_TABLE_SELECT_ROW (FN_FORMAT + 113) /* Tabelle: Zeile selektieren */ +#define FN_TABLE_SELECT_COL (FN_FORMAT + 114) /* Tabelle: Spalte selektieren */ +#define FN_TABLE_SELECT_ALL (FN_FORMAT + 115) /* Tabelle: Tabelle selektieren */ +#define FN_TABLE_SET_READ_ONLY (FN_FORMAT + 116) /* Tabelle: Tabelle schuetzen */ +#define FN_TABLE_SET_READ_ONLY_CELLS (FN_FORMAT + 117) /* Tabelle: Tabellezellen schuetzen */ +#define FN_TABLE_UNSET_READ_ONLY_CELLS (FN_FORMAT + 119) /* Tabelle: Tabellezellen schuetzen aufheben */ +#define FN_TABLE_HEADLINE_REPEAT (FN_FORMAT + 120) /* used in SwXTextTable*/ +#define FN_TABLE_ADJUST_CELLS (FN_FORMAT + 121) /* Tabelle: Zellen anpassen */ + +#define FN_FRAME_UP (FN_FORMAT + 122) /* Rahmen um eine Ebene nach oben */ +#define FN_FRAME_DOWN (FN_FORMAT + 123) /* Rahmen um eine Ebene nach unten */ + +#define FN_TABLE_INSERT_CHART (FN_FORMAT + 124) + +#define FN_SET_FRM_LRSPACE (FN_FORMAT + 125) /* Rahmen Seitenabstand */ +#define FN_SET_FRM_ULSPACE (FN_FORMAT + 126) /* Rahmen Kopf-/Fussabstand */ +#define FN_TABLE_SET_LRSPACE (FN_FORMAT + 127) /* Tabelle: linker / rechter Abstand einstellen */ +#define FN_TABLE_OPTIMAL_HEIGHT (FN_FORMAT + 128) /* Zellenhoehe optimal*/ + +/*-------------------------------------------------------------------- + Bereich: Seitenvorlage + --------------------------------------------------------------------*/ + +#define FN_NEW_PAGE_STYLE (FN_FORMAT + 129) /* Anlegen Seitenvorlage */ +#define FN_PAGE_STYLE_SET_LR_MARGIN (FN_FORMAT + 130) /* linker / rechter Rand */ +#define FN_PAGE_STYLE_SET_UL_MARGIN (FN_FORMAT + 131) /* oberer / unterer Rand */ +#define FN_PAGE_STYLE_SET_PAGE (FN_FORMAT + 134) /* linke, rechte... */ +#define FN_PAGE_STYLE_SET_PAPER_SIZE (FN_FORMAT + 135) /* Papiergroesse */ +#define FN_PAGE_STYLE_SET_PAPER_BIN (FN_FORMAT + 136) /* Druckerschacht */ +#define FN_PAGE_STYLE_SET_NUMBER_FORMAT (FN_FORMAT + 137) /* Numerierungsart */ +#define FN_PAGE_STYLE_SET_COLS (FN_FORMAT + 138) /* Spaltenanzahl */ + + +/* OS: Diese Ids werden nur noch fuer die Hilfe benoetigt und sind fuer den + Dialog durch die Ids ohne _DLG ersetzt*/ +#define FN_TABLE_INSERT_COL_DLG (FN_FORMAT + 142) /* Tabelle: Dlg. Spalte einfuegen */ +#define FN_TABLE_INSERT_ROW_DLG (FN_FORMAT + 143) /* Tabelle: Dlg. Zeile einfuegen */ + + + +//hier geht's weiter ! +/*-------------------------------------------------------------------- + Bereich: Ribbon + --------------------------------------------------------------------*/ + +#define FN_SET_BACKGROUND_COLOR (FN_FORMAT + 150) /* Hintergrundfarbe */ + +#define FN_SET_BORDER_POS (FN_FORMAT + 152) /* Position Umrandung */ +#define FN_SET_BORDER_LINES (FN_FORMAT + 153) /* Linienart Umrandung */ +#define FN_SET_BORDER_COLOR (FN_FORMAT + 154) /* Farbe Umrandung */ + +#define FN_FORMULA_CALC (FN_FORMAT + 156) /* Formelauswahl */ +#define FN_FORMULA_CANCEL (FN_FORMAT + 157) /* Formel nicht uebernehmen */ +#define FN_FORMULA_APPLY (FN_FORMAT + 158) /* Formel uebernehmen */ + +#define FN_TABLE_UNSET_READ_ONLY (FN_FORMAT + 159) /* Zellenschutz fuer Tab. aufheben */ + +#define FN_FORMULA_POSITION (FN_FORMAT + 160) /* Positionsanzeige */ +#define FN_FORMULA_EDIT (FN_FORMAT + 161) /* Editfeld */ + + +#define FN_FRAME_WRAP_IDEAL (FN_FORMAT + 163) /* Rahmen Idealer Umlauf */ +#define FN_FRAME_WRAPTHRU_TRANSP (FN_FORMAT + 164) /* Rahmen Transparenter Durchlauf */ + +#define FN_FRAME_ALIGN_VERT_ROW_TOP (FN_FORMAT + 165) /* Rahmen vert. Zeile oben */ +#define FN_FRAME_ALIGN_VERT_ROW_BOTTOM (FN_FORMAT + 166) /* Rahmen vert. Zeile unten */ +#define FN_FRAME_ALIGN_VERT_ROW_CENTER (FN_FORMAT + 167) /* Rahmen vert. Zeile zentriert */ + +#define FN_FRAME_ALIGN_VERT_CHAR_TOP (FN_FORMAT + 168) /* Rahmen vert. Zeichen oben */ +#define FN_FRAME_ALIGN_VERT_CHAR_BOTTOM (FN_FORMAT + 169) /* Rahmen vert. Zeichen unten */ +#define FN_FRAME_ALIGN_VERT_CHAR_CENTER (FN_FORMAT + 170) /* Rahmen vert. Zeichen zentriert */ + +#define FN_TABLE_SET_DEF_BORDER (FN_FORMAT + 171) /* vordefinierte Umrandungen setzen */ + +#define FN_FRAME_WRAP_LEFT (FN_FORMAT + 172) /* Rahmen Umlauf links */ +#define FN_FRAME_WRAP_RIGHT (FN_FORMAT + 173) /* Rahmen Umlauf links */ + +#define FN_TABLE_SET_ROW_AUTOHEIGHT (FN_FORMAT + 174) /* Tabelle: Minimale automatische Zeilenhoehe setzen */ + + +#define FN_WRAP_ANCHOR_ONLY (FN_FORMAT + 181) /* Umlauf nur fuer ersten Absatz */ + +#define FN_TABLE_BALANCE_CELLS (FN_FORMAT + 182) /* Spalten gleichmaessig verteilen */ +#define FN_TABLE_BALANCE_ROWS (FN_FORMAT + 183) /* Zeilen gleichmaessig verteilen */ + +#define FN_FRAME_WRAP_CONTOUR (FN_FORMAT + 184) /* Rahmen Kunturumlauf */ + +#define FN_TABLE_VERT_NONE (FN_FORMAT + 185) /* vertikale Ausrichtung in Tabellenzellen */ +#define FN_TABLE_VERT_CENTER (FN_FORMAT + 186) /* -"- */ +#define FN_TABLE_VERT_BOTTOM (FN_FORMAT + 187) /* -"- */ +#define FN_TABLE_SET_VERT_ALIGN (FN_FORMAT + 188) /* -"- */ +#define FN_TABLE_MODE_FIX (FN_FORMAT + 189) /* Tabellenmodus */ +#define FN_TABLE_MODE_FIX_PROP (FN_FORMAT + 190) /* -"- */ +#define FN_TABLE_MODE_VARIABLE (FN_FORMAT + 191) /* -"- */ + +#define FN_TABLE_AUTOSUM (FN_FORMAT + 195) /* Autosumme*/ +#define FN_SET_CONTROL_HANDLER (FN_FORMAT + 199) /* Macro setzen */ + +#define FN_IS_IMAGE (FN_FORMAT2 + 6) /* Numerierung : mit Grafik?*/ + +#define FN_GOTO_NEXT_REGION (FN_FORMAT2 + 9) /* Naechsten Bereich anspringen */ +#define FN_GOTO_PREV_REGION (FN_FORMAT2 + 10) /* Vorherigen " */ + +#define FN_GET_SBXCONTROL (FN_FORMAT2 + 11) /* SbxObject rausreichen */ +#define FN_ABSTRACT_NEWDOC (FN_FORMAT2 + 12) /* Abstract in neuem Doc */ +#define FN_ABSTRACT_STARIMPRESS (FN_FORMAT2 + 13) /* Abstract an StarImpress */ + + + + + + + +#define FN_NUMBER_FORMAT (FN_FORMAT2 + 120) /* Boxen/NumberFormatter eistellen */ +#define FN_NUMBER_STANDARD (FN_FORMAT2 + 121) +#define FN_NUMBER_TWODEC (FN_FORMAT2 + 123) +#define FN_NUMBER_SCIENTIFIC (FN_FORMAT2 + 124) +#define FN_NUMBER_DATE (FN_FORMAT2 + 125) +#define FN_NUMBER_TIME (FN_FORMAT2 + 126) +#define FN_NUMBER_CURRENCY (FN_FORMAT2 + 127) +#define FN_NUMBER_PERCENT (FN_FORMAT2 + 128) + + + +#define FN_FRAME_CHAIN (FN_FORMAT2 + 136) +#define FN_FRAME_UNCHAIN (FN_FORMAT2 + 137) + +#define FN_NUMBER_NEWSTART (FN_FORMAT2 + 138) +#define FN_NUMBER_NEWSTART_AT (FN_FORMAT2 + 139) + +#define FN_FRAME_MIRROR_ON_EVEN_PAGES (FN_FORMAT2 + 140) +#define FN_GRAPHIC_MIRROR_ON_EVEN_PAGES (FN_FORMAT2 + 141) + +#define FN_TABLE_SPLIT_TABLE (FN_FORMAT2 + 142) +#define FN_SYNC_LABELS (FN_FORMAT2 + 143) + + +#define FN_TABLE_RELATIVE_WIDTH (FN_FORMAT2 + 147) /* Tabelle: relative Breite - UNO */ +#define FN_TABLE_WIDTH (FN_FORMAT2 + 148) /* Tabelle: Breite - UNO */ +#define FN_TABLE_IS_RELATIVE_WIDTH (FN_FORMAT2 + 149) /* Tabelle: ist Breite relativ?- UNO */ + +#define FN_INC_INDENT_OFFSET (FN_FORMAT2 + 150) +#define FN_DEC_INDENT_OFFSET (FN_FORMAT2 + 151) + +#define FN_TABLE_MERGE_TABLE (FN_FORMAT2 + 152) + +/*-------------------------------------------------------------------- + Bereich: Extras + --------------------------------------------------------------------*/ + +#define FN_LINE_NUMBERING_DLG (FN_EXTRA + 2 ) /* Zeilennumerierung */ +#define FN_THESAURUS_DLG (FN_EXTRA + 3 ) /* Thesaurus */ +#define FN_HYPHENATE_OPT_DLG (FN_EXTRA + 5 ) /* Silbentrennung */ +#define FN_ADD_UNKNOWN (FN_EXTRA + 6 ) /* Woerter lernen */ +#define FN_DICTIONARY_DLG (FN_EXTRA + 8 ) /* Woerterbuecher */ +#define FN_NUMBERING (FN_EXTRA + 9 ) /* Nummerierung/Bullets */ +#define FN_NUMBERING_DLG (FN_EXTRA + 10) /* Nummerierung/Bullets */ +#define FN_NUMBERING_OUTLINE (FN_EXTRA + 11) /* Gliederungsnumerierung */ +#define FN_NUMBERING_OUTLINE_DLG (FN_EXTRA + 12) /* Gliederungsnumerierung */ +#define FN_SORTING_DLG (FN_EXTRA + 14) /* Sortieren */ +#define FN_CALCULATE (FN_EXTRA + 15) /* Berechnen */ +#define FN_GENERATE_TOC_DLG (FN_EXTRA + 16) /* Inhaltsverzeichnis */ +#define FN_GENERATE_INDEX_DLG (FN_EXTRA + 17) /* Stichwortverzeichnis */ +#define FN_GENERATE_DIR_DLG (FN_EXTRA + 18) /* Verzeichnis */ +#define FN_GLOSSARY_DLG (FN_EXTRA + 20) /* Textbausteine */ +#define FN_MACRO_CHOOSER (FN_EXTRA + 21) /* Makro aufnehmen */ +#define FN_SPELLING_DLG (FN_EXTRA + 22) /* Rechtschreibung */ + +#define FN_PLAY_MACRO (FN_EXTRA + 23) /* Makro abspielen */ +#define FN_LAUNCH_BASIC (FN_EXTRA + 25) /* Makro abspielen */ +#define FN_EXPAND_GLOSSARY (FN_EXTRA + 28) /* Textbausteine expandieren */ +#define FN_CONFIG_TOOLBOX (FN_EXTRA + 29) /* Konfiguration Toolbox */ +#define FN_CONFIG_MENU (FN_EXTRA + 30) /* Konfiguration Menu */ +#define FN_CONFIG_KEY (FN_EXTRA + 31) /* Konfiguration Tastatur */ +#define FN_CHANGE_PAGENUM (FN_EXTRA + 34) /* Seitennummer aendern */ + +#define FN_MACRO_POPUP (FN_EXTRA + 37) /* Alle Macrofunktionen */ +#define FN_BULLET (FN_EXTRA + 38) /* Bullet-Liste */ + + +// Bereich: Gloassaries + +// schon im Svx definiert + +//#define FN_GET_GLOSSARY_GROUP_COUNT (FN_EXTRA + 42) /* Anzahl der Bausteingruppen */ + +#define FN_AUTO_CORRECT (FN_EXTRA + 49 ) /* Autocorrect aus Basic */ +#define FN_AUTO_CORRECT_DLG (FN_EXTRA + 50 ) /* Dialog Autocorrect */ + +#define FN_UPDATE_TOX (FN_EXTRA + 53) /* alle Verzeichnisse aktualisieren */ +#define FN_UPDATE_CUR_TOX (FN_EXTRA + 54) /* aktuelles Verzeichnisse aktualisieren */ +#define FN_REMOVE_CUR_TOX (FN_EXTRA + 55) /* remove the current TOX*/ + +#define FN_NAVIGATION_PI_GOTO_PAGE (FN_EXTRA + 59 ) /* Seitenanwahl aus Navi-PI */ + + +#define FN_LETTER_WIZZARD (FN_EXTRA + 60 ) +#define FN_FAX_WIZZARD (FN_EXTRA + 61 ) +#define FN_MEMO_WIZZARD (FN_EXTRA + 62 ) +#define FN_AGENDA_WIZZARD (FN_EXTRA + 63 ) + +#define FN_SET_BASIC_METRIC (FN_EXTRA + 80) /* Defaultmetrik Basic setzen */ + +#define FN_RESERVED_9 (FN_EXTRA + 86) /* Platzhalter */ +#define FN_RESERVED_8 (FN_EXTRA + 87) /* Platzhalter */ +#define FN_RESERVED_7 (FN_EXTRA + 88) /* Platzhalter */ +#define FN_RESERVED_6 (FN_EXTRA + 89) /* Platzhalter */ +#define FN_RESERVED_5 (FN_EXTRA + 90) /* Platzhalter */ +#define FN_RESERVED_4 (FN_EXTRA + 91) /* Platzhalter */ +#define FN_RESERVED_3 (FN_EXTRA + 92) /* Platzhalter */ +#define FN_RESERVED_2 (FN_EXTRA + 93) /* Platzhalter */ +#define FN_RESERVED_1 (FN_EXTRA + 94) /* Platzhalter */ + +#define FN_COLLECTION_GROUP_CNT (FN_EXTRA + 96) +#define FN_COLLECTION_GROUP_IDX (FN_EXTRA + 97) +#define FN_COLL_TYPE (FN_EXTRA + 98) /* Typ fuer GlobalDoc-Collection*/ +#define FN_COLL_ADD (FN_EXTRA + 99) + +#define FN_COLL_TITLE (FN_EXTRA2 + 1) /* Bereichsname oder Index-Title */ +#define FN_SHADOWCURSOR (FN_EXTRA2 + 4) /* Shadow Cursor ein/ausschalten */ + + +#define FN_VIEW_IN_FRAME (FN_EXTRA2 + 8) /* die View befindet sich in einem FrameDoc*/ + +#define FN_UNO_PARA_STYLE (FN_EXTRA2 + 9) // jetzt kommen diverse UNO-Ids fuer die +#define FN_UNO_PAGE_STYLE (FN_EXTRA2 + 10) // PropertyMap + +#define FN_UNO_FRAME_STYLE (FN_EXTRA2 + 12) +#define FN_UNO_NUM_START_VALUE (FN_EXTRA2 + 13) +#define FN_UNO_NUM_LEVEL (FN_EXTRA2 + 14) +#define FN_UNO_NUM_RULES (FN_EXTRA2 + 15) +#define FN_UNO_DOCUMENT_INDEX_MARK (FN_EXTRA2 + 16) +#define FN_UNO_DOCUMENT_INDEX (FN_EXTRA2 + 17) +#define FN_UNO_TEXT_FIELD (FN_EXTRA2 + 18) +#define FN_UNO_TEXT_TABLE (FN_EXTRA2 + 19) +#define FN_UNO_CELL (FN_EXTRA2 + 20) +#define FN_UNO_TEXT_FRAME (FN_EXTRA2 + 21) +#define FN_UNO_REFERENCE_MARK (FN_EXTRA2 + 22) +#define FN_UNO_TEXT_SECTION (FN_EXTRA2 + 23) +#define FN_UNO_FOOTNOTE (FN_EXTRA2 + 24) +#define FN_UNO_ENDNOTE (FN_EXTRA2 + 25) +#define FN_UNO_RANGE_COL_LABEL (FN_EXTRA2 + 26) +#define FN_UNO_RANGE_ROW_LABEL (FN_EXTRA2 + 27) +#define FN_UNO_TABLE_COLUMS (FN_EXTRA2 + 28) +#define FN_UNO_TABLE_BORDER (FN_EXTRA2 + 29) +#define FN_UNO_TABLE_COLUMN_SEPARATORS (FN_EXTRA2 + 30) +#define FN_UNO_TABLE_COLUMN_RELATIVE_SUM (FN_EXTRA2 + 31) +#define FN_UNO_TABLE_CELL_BACKGROUND (FN_EXTRA2 + 32) +#define FN_UNO_ROW_HEIGHT (FN_EXTRA2 + 33) +#define FN_UNO_ROW_AUTO_HEIGHT (FN_EXTRA2 + 34) +#define FN_UNO_HEADER (FN_EXTRA2 + 35) +#define FN_UNO_HEADER_LEFT (FN_EXTRA2 + 36) +#define FN_UNO_HEADER_RIGHT (FN_EXTRA2 + 37) +#define FN_UNO_FOOTER (FN_EXTRA2 + 38) +#define FN_UNO_FOOTER_LEFT (FN_EXTRA2 + 39) +#define FN_UNO_FOOTER_RIGHT (FN_EXTRA2 + 40) +#define FN_UNO_HEADER_BACKGROUND (FN_EXTRA2 + 41) +#define FN_UNO_HEADER_BOX (FN_EXTRA2 + 42) +#define FN_UNO_HEADER_LR_SPACE (FN_EXTRA2 + 43) +#define FN_UNO_HEADER_SHADOW (FN_EXTRA2 + 44) +#define FN_UNO_FOOTER_BACKGROUND (FN_EXTRA2 + 45) +#define FN_UNO_FOOTER_BOX (FN_EXTRA2 + 46) +#define FN_UNO_FOOTER_LR_SPACE (FN_EXTRA2 + 47) +#define FN_UNO_FOOTER_SHADOW (FN_EXTRA2 + 48) +#define FN_UNO_HEADER_BODY_DISTANCE (FN_EXTRA2 + 49) +#define FN_UNO_HEADER_IS_DYNAMIC_DISTANCE (FN_EXTRA2 + 50) +#define FN_UNO_FOOTER_BODY_DISTANCE (FN_EXTRA2 + 51) +#define FN_UNO_FOOTER_IS_DYNAMIC_DISTANCE (FN_EXTRA2 + 52) +#define FN_UNO_HEADER_SHARE_CONTENT (FN_EXTRA2 + 53) +#define FN_UNO_FOOTER_SHARE_CONTENT (FN_EXTRA2 + 54) +#define FN_UNO_HEADER_HEIGHT (FN_EXTRA2 + 55) +#define FN_UNO_FOOTER_HEIGHT (FN_EXTRA2 + 56) +#define FN_UNO_HEADER_ON (FN_EXTRA2 + 57) +#define FN_UNO_FOOTER_ON (FN_EXTRA2 + 58) +#define FN_UNO_FOLLOW_STYLE (FN_EXTRA2 + 59) + +#define FN_API_CALL (FN_EXTRA2 + 60) + +#define FN_UNO_IS_PHYSICAL (FN_EXTRA2 + 61) +#define FN_UNO_IS_AUTO_UPDATE (FN_EXTRA2 + 62) +#define FN_UNO_DISPLAY_NAME (FN_EXTRA2 + 63) + +#define FN_UNO_WRAP (FN_EXTRA2 + 64) +#define FN_UNO_ANCHOR_TYPES (FN_EXTRA2 + 65) +#define FN_UNO_PARA_CHAPTER_NUMBERING_LEVEL (FN_EXTRA2 + 66) +#define FN_UNO_PARA_CONDITIONAL_STYLE_NAME (FN_EXTRA2 + 67) + +#define FN_UNO_CATEGORY (FN_EXTRA2 + 68) +#define FN_UNO_IS_NUMBER (FN_EXTRA2 + 69) +#define FN_UNO_TEXT_WRAP (FN_EXTRA2 + 70) +#define FN_UNO_ANCHOR_TYPE (FN_EXTRA2 + 71) +/*-------------------------------------------------------------------- + Bereich: Fenster + --------------------------------------------------------------------*/ + +#define FN_SOURCEVIEW SID_SOURCEVIEW +/*-------------------------------------------------------------------- + Bereich: Hilfe + --------------------------------------------------------------------*/ + + +#define FN_LAUNCH_HELP (FN_HELP + 1) /* Hilfe */ +#define FN_SHOW_HELP_INDEX (FN_HELP + 2) /* Hilfeindex */ +#define FN_SHOW_KEYBOARD_HELP (FN_HELP + 3) /* Hilfe */ +#define FN_SHOW_HELP_MANUAL (FN_HELP + 4) /* Hilfe */ +#define FN_SHOW_UPDATE_HELP (FN_HELP + 5) /* Hilfe */ + +#define FN_BALLOON_HELP (FN_HELP + 7) /* Toggle Balloon Help */ +#define FN_HELP_POPUP (FN_HELP + 8) /* Popup Help */ + + +/*-------------------------------------------------------------------- + Bereich: Traveling & Selektion + --------------------------------------------------------------------*/ + +#define FN_CHAR_LEFT (FN_SELECTION + 1 ) /* */ +#define FN_CHAR_RIGHT (FN_SELECTION + 2 ) /* */ +#define FN_LINE_UP (FN_SELECTION + 3 ) /* */ +#define FN_LINE_DOWN (FN_SELECTION + 4 ) /* */ +#define FN_START_OF_LINE (FN_SELECTION + 5 ) /* StartOfLine */ +#define FN_END_OF_LINE (FN_SELECTION + 6 ) /* EndOfLine */ +#define FN_START_OF_DOCUMENT (FN_SELECTION + 7 ) /* StartOfDocument */ +//schon in svxids.hrc +//#define FN_END_OF_DOCUMENT (FN_SELECTION + 8 ) /* EndOfDocument */ +#define FN_START_OF_NEXT_PAGE (FN_SELECTION + 9 ) /* StartOfNextPage ??? */ +#define FN_END_OF_NEXT_PAGE (FN_SELECTION + 10) /* ??? */ +#define FN_START_OF_PREV_PAGE (FN_SELECTION + 11) /* StartOfPrevPage ??? */ +#define FN_END_OF_PREV_PAGE (FN_SELECTION + 12) /* ??? */ +#define FN_START_OF_PAGE (FN_SELECTION + 13) /* StartOfPage */ +#define FN_END_OF_PAGE (FN_SELECTION + 14) /* EndOfPage */ +#define FN_START_OF_WINDOW (FN_SELECTION + 15) /* StartOfWindow */ +#define FN_END_OF_WINDOW (FN_SELECTION + 16) /* EndOfWindow */ +#define FN_START_OF_COLUMN (FN_SELECTION + 17) /* StartOfColumn */ +#define FN_END_OF_COLUMN (FN_SELECTION + 18) /* EndOfColumn */ +#define FN_START_OF_PARA (FN_SELECTION + 19) /* StartOfPara */ +#define FN_END_OF_PARA (FN_SELECTION + 20) /* EndOfPara */ +#define FN_NEXT_WORD (FN_SELECTION + 21) /* NextWord */ +#define FN_PREV_WORD (FN_SELECTION + 22) /* PrevWord */ +#define FN_NEXT_SENT (FN_SELECTION + 23) /* NextSentence */ +#define FN_PREV_SENT (FN_SELECTION + 24) /* PrevSentence */ +#define FN_DELETE (FN_SELECTION + 25) /* Delete */ +#define FN_BACKSPACE (FN_SELECTION + 26) /* Backspace */ +#define FN_DELETE_SENT (FN_SELECTION + 27) /* DeleteToEndOfSentence */ +#define FN_DELETE_BACK_SENT (FN_SELECTION + 28) /* DeleteToStartOfSentence */ +#define FN_DELETE_WORD (FN_SELECTION + 29) /* DeleteToEndOfWord */ +#define FN_DELETE_BACK_WORD (FN_SELECTION + 30) /* DeleteToStartOfWord */ +#define FN_DELETE_LINE (FN_SELECTION + 31) /* DeleteToEndOfLine */ +#define FN_DELETE_BACK_LINE (FN_SELECTION + 32) /* DeleteToStartOfLine */ +#define FN_DELETE_PARA (FN_SELECTION + 33) /* DeleteToEndOfPara */ +#define FN_DELETE_BACK_PARA (FN_SELECTION + 34) /* DeleteToStartOfPara */ +#define FN_DELETE_WHOLE_LINE (FN_SELECTION + 35) /* DeleteLine ??? */ +#define FN_SET_INS_MODE (FN_SELECTION + 36) /* Einfuegemodus / Overwrite */ +#define FN_PAGEUP (FN_SELECTION + 37) /* PageUpWithCursor */ +#define FN_PAGEDOWN (FN_SELECTION + 38) /* PageDownWithCursor */ +#define FN_SET_ADD_MODE (FN_SELECTION + 39) /* Selektionsmodus */ +#define FN_SET_EXT_MODE (FN_SELECTION + 40) /* Selektionsmodus */ +#define FN_ESCAPE (FN_SELECTION + 41) /* Normal */ +#define FN_SHIFT_BACKSPACE (FN_SELECTION + 42) /* wie Backspace */ +#define FN_SELECT_WORD (FN_SELECTION + 43) /* Wort selektieren */ + +#define FN_GOTO_NEXT_OBJ (FN_SELECTION + 44) /* N„chstes Objekt anspringen */ +#define FN_GOTO_PREV_OBJ (FN_SELECTION + 45) /* Vorhergehendes Objekt anspringen */ + +#define FN_START_TABLE (FN_SELECTION + 47) /* an den Anfang der Tabelle */ +#define FN_END_TABLE (FN_SELECTION + 48) /* an das Ende der Tabelle */ +#define FN_NEXT_TABLE (FN_SELECTION + 49) /* zur vorhergehenden Tabelle */ +#define FN_PREV_TABLE (FN_SELECTION + 50) /* zur naechsten Tabelle */ + +#define FN_START_OF_NEXT_COLUMN (FN_SELECTION + 51) /* zum Anfang der naechsten Spalte */ +#define FN_END_OF_NEXT_COLUMN (FN_SELECTION + 52) /* zum Ende der naechsten Spalte */ +#define FN_START_OF_PREV_COLUMN (FN_SELECTION + 53) /* zum Anfang der vorhergehenden Spalte */ +#define FN_END_OF_PREV_COLUMN (FN_SELECTION + 54) /* zum Ende der vorhergehenden Spalte */ + +#define FN_FOOTNOTE_TO_ANCHOR (FN_SELECTION + 55) /* aus der Fussnote zum Anchor */ +#define FN_NEXT_FOOTNOTE (FN_SELECTION + 56) /* zur naechsten Fussnote */ +#define FN_PREV_FOOTNOTE (FN_SELECTION + 57) /* zur vorhergehenden Fussnote */ + +#define FN_CNTNT_TO_NEXT_FRAME (FN_SELECTION + 58) /* aus dem Inhalt zum naechsten Rahmen */ +#define FN_FRAME_TO_ANCHOR (FN_SELECTION + 59) /* vom Rahmen zum Anker */ + +#define FN_TO_HEADER (FN_SELECTION + 60) /* Toggle zwischen Content und Kopfzeile */ +#define FN_TO_FOOTER (FN_SELECTION + 61) /* Toggle zwischen Content und Fusszeile */ + +#define FN_IDX_MARK_TO_IDX (FN_SELECTION + 62) /* von der Verzeichnismarkierung zum Verzeichnis */ + + + + + +#define FN_PREV_PARA (FN_SELECTION + 74) +#define FN_NEXT_PARA (FN_SELECTION + 75) + +#define FN_GOTO_NEXT_MARK (FN_SELECTION + 76) /* N„chsten Platzhalter anspringen */ +#define FN_GOTO_PREV_MARK (FN_SELECTION + 77) /* Vorhergehenden Platzhalter anspringen */ + +// schon im SVX unter der gleichen Id +//#define FN_START_DOC_DIRECT (FN_SELECTION + 78) /* Direkt zum Dokanfang springen */ +//#define FN_END_DOC_DIRECT (FN_SELECTION + 79) /* Direkt zum Dokanfang springen */ + +#define FN_NEXT_TOXMARK (FN_SELECTION + 83) /* zur naechsten Verz. Markierung */ +#define FN_PREV_TOXMARK (FN_SELECTION + 84) /* zur vorherigen Verz. Markierung */ +#define FN_NEXT_TBLFML (FN_SELECTION + 85) /* zur naechsten Tabellenformel */ +#define FN_PREV_TBLFML (FN_SELECTION + 86) /* zur vorherigen Tabellenformel */ +#define FN_NEXT_TBLFML_ERR (FN_SELECTION + 87) /* zur naechsten fehl. Tabellenformel */ +#define FN_PREV_TBLFML_ERR (FN_SELECTION + 88) /* zur vorherigen fehl. Tabellenformel */ + + +/*-------------------------------------------------------------------- + QUERY-Block + --------------------------------------------------------------------*/ + + + +#define FN_IS_MODIFIED (FN_QUERY +16) /* Dokument geaendert? */ +#define FN_RESET_MODIFIED (FN_QUERY +17) /* Geaendert-Flag zuruecksetzen */ + +#define FN_GET_DOC_INFO (FN_QUERY +22) /* Wert Dokumentinfo erfragen */ +#define FN_GET_ERRNO (FN_QUERY +26) /* Error-Nummer abfragen */ +#define FN_GET_DOCMAN_PATH (FN_QUERY +27) /* Pfad zu einer Gruppe im Docmgr erfragen */ + +#define FN_TXTATR_INET (FN_QUERY +29) /* INet-Attribut */ +#define FN_EXECUTE_DRAG (FN_QUERY +30) /* D&D starten */ + +#define FN_GET_PRINT_AREA (FN_QUERY +32) /* Attribut fuer druckbaren Seitenbereich besorgen */ + + + +// #define FN_IS_START_OF_PAGE (FN_QUERY +40) /**/ +// #define FN_IS_END_OF_PAGE (FN_QUERY +41) /**/ + +#define FN_GET_PARAGRAPH (FN_QUERY +48) /* Paragraph-Object von der Textshell + an die View weiterreichen*/ +// hier ist Schluss!!! + + +/*-------------------------------------------------------------------- + Bereich: Envelope + --------------------------------------------------------------------*/ + +#define FN_ENVELOP (FN_ENVELP ) +#define FN_LABEL (FN_ENVELP + 1) +#define FN_BUSINESS_CARD (FN_ENVELP + 2) + +/*-------------------------------------------------------------------- + Bereich: Parameter + --------------------------------------------------------------------*/ + +#define FN_PARAM_TABLE_COLS (FN_PARAM) +#define FN_PARAM_TABLE_ROWS (FN_PARAM+1) + +#define FN_PARAM_SEARCH_WORDONLY (FN_PARAM+5) +#define FN_PARAM_SEARCH_EXACT (FN_PARAM+6) +#define FN_PARAM_SEARCH_REGEXP (FN_PARAM+7) +#define FN_PARAM_SEARCH_BACKWARDS (FN_PARAM+8) +#define FN_PARAM_SEARCH_FINDALL (FN_PARAM+9) +#define FN_PARAM_SEARCH_SELECTION (FN_PARAM+10) +#define FN_PARAM_SEARCH_TEXT (FN_PARAM+11) +#define FN_PARAM_SEARCH_TEXTREPLACE (FN_PARAM+12) + +#define FN_PARAM_PARADLGLIMITS (FN_PARAM+15) +#define FN_PARAM_FRMMODE (FN_PARAM+16) + +#define FN_PARAM_ADDPRINTER (FN_PARAM+18) +#define FN_PARAM_GRID (FN_PARAM+19) +#define FN_PARAM_DOCDISP (FN_PARAM+20) +#define FN_PARAM_ELEM (FN_PARAM+21) +#define FN_PARAM_SWTEST (FN_PARAM+22) + +#define FN_PARAM_FTN_INFO (FN_PARAM+23) + +#define FN_PARAM_REGION_NAME (FN_PARAM+24) +#define FN_PARAM_REGION_CONDITION (FN_PARAM+25) +#define FN_PARAM_REGION_HIDDEN (FN_PARAM+26) +#define FN_PARAM_REGION_PROTECT (FN_PARAM+27) + +#define FN_PARAM_INSERT_AFTER (FN_PARAM+29) +#define FN_PARAM_FILTER (FN_PARAM+30) +#define FN_PARAM_INDEX_NAME (FN_PARAM+31) +#define FN_PARAM_INDEX_OPTIONS (FN_PARAM+32) +#define FN_PARAM_INDEX_FORMAT (FN_PARAM+33) +#define FN_PARAM_INDEX_LEVEL (FN_PARAM+34) +#define FN_PARAM_INDEX_TEMPLATE (FN_PARAM+35) +#define FN_PARAM_INDEX_ALTSTR (FN_PARAM+36) +#define FN_PARAM_INDEX_PRIMKEY (FN_PARAM+37) +#define FN_PARAM_INDEX_SECKEY (FN_PARAM+38) +#define FN_PARAM_WIDTH (FN_PARAM+39) +#define FN_PARAM_LOCATION (FN_PARAM+40) +#define FN_PARAM_DIR (FN_PARAM+41) +#define FN_PARAM_COUNT (FN_PARAM+42) +#define FN_PARAM_COLOR (FN_PARAM+43) + +#define FN_PARAM_TABLE_NAME (FN_PARAM+44) +#define FN_PARAM_TABLE_WIDTH (FN_PARAM+45) +#define FN_PARAM_TABLE_ULSPACE (FN_PARAM+46) +#define FN_PARAM_TABLE_LRSPACE (FN_PARAM+47) +#define FN_PARAM_TABLE_SHADOW (FN_PARAM+48) +#define FN_PARAM_TABLE_ALIGN (FN_PARAM+49) +#define FN_PARAM_TABLE_HEADLINE (FN_PARAM+50) +#define FN_PARAM_TABLE_SPACE (FN_PARAM+51) +#define FN_PARAM_TABLE_COLUMNS (FN_PARAM+52) + +#define FN_PARAM_GRF_CONNECT (FN_PARAM+54) + + +#define FN_PARAM_EVENT (FN_PARAM+68) +#define FN_PARAM_URL (FN_PARAM+69) +#define FN_PARAM_GRF_REALSIZE (FN_PARAM+70) +#define FN_PARAM_GRF_DIALOG (FN_PARAM+71) +#define FN_PARAM_GRF_CLIENTMAP (FN_PARAM+74) /* ClientMap */ +#define FN_PARAM_GRF_SERVERMAP (FN_PARAM+75) /* ServerMap */ +#define FN_PARAM_GRF_TARGETFRAME (FN_PARAM+76) /* TargetFrame */ +#define FN_INET_FIELD_MACRO (FN_PARAM+77) /* Id fuer URL-Feld-Macros*/ + +#define FN_PARAM_PRINTER (FN_PARAM+78) /* Drucker* */ +#define FN_PARAM_STDFONTS (FN_PARAM+79) /* ConfigItem Standardfonts */ + +#define FN_PARAM_WRTSHELL (FN_PARAM2) /* SwWrtShell */ + +#define FN_COND_COLL (FN_PARAM2+1) /* Item fuer bed. Vorlagen */ +#define FN_PARAM_SELECTION (FN_PARAM2+2) /* selektiertes Wort fuer Format/Zeichen/Hyperlink */ + +#define FN_PARAM_ACT_NUMBER (FN_PARAM2+3) /* PointerItem die aktuelle NumRule */ +#define FN_PARAM_CHILD_LEVELS (FN_PARAM2+4) /* Werden Child-Levels benutzt ?*/ + +#define FN_PARAM_NUM_PRESET (FN_PARAM2+5) /* vorgewaehlte Numerierung*/ + +#define FN_PARAM_HEIGHT (FN_PARAM2+6) /* Param fuer Hoehe */ +#define FN_PARAM_DIST (FN_PARAM2+7) /* und Breite, wg. metrischer Umwandlung */ + +#define FN_PARAM_SHADOWCURSOR (FN_PARAM2+8) /* Fuer ShadowCursor Optionen */ + +#define FN_PARAM_ACT_NUMLEVEL (FN_PARAM2+9) /* BYTE-Item mit aktuellen NumLevel */ + +#define FN_PARAM_9 (FN_PARAM2+10) +#define FN_PARAM_10 (FN_PARAM2+11) + +#define FN_TEXT_RANGE (FN_PARAM2+12) /* TextRange Property*/ + +#define FN_PARAM_CRSR_IN_PROTECTED (FN_PARAM2+13) /* Cursor in geschuetzten Bereichen*/ +#define FN_PARAM_TOX_TYPE (FN_PARAM2+14) /* TOX type in tox dialog*/ +#define FN_PARAM_LINK_DISPLAY_NAME (FN_PARAM2+15) /* LinkDisplayName property*/ +#define FN_PARAM_NUM_LEVEL (FN_PARAM2+16) /* rtf filter*/ +/*-------------------------------------------------------------------- + Bereich: Druckoptionen + --------------------------------------------------------------------*/ + +#define FN_PRNOPT_GRAPHIC (FN_PRNOPT + 1) +#define FN_PRNOPT_TABLE (FN_PRNOPT + 2) +#define FN_PRNOPT_LEFT_PAGE (FN_PRNOPT + 3) +#define FN_PRNOPT_RIGHT_PAGE (FN_PRNOPT + 4) +#define FN_PRNOPT_REVERSE (FN_PRNOPT + 5) +#define FN_PRNOPT_PAPER_FROM_SETUP (FN_PRNOPT + 6) +#define FN_PRNOPT_POSTITS (FN_PRNOPT + 8) + +#define FN_PRNOPT_BEGIN FN_PRNOPT_GRAPHIC +#define FN_PRNOPT_END FN_PRNOPT_POSTITS + +/*-------------------------------------------------------------------- + Beschreibung: Status : nicht mehr als 19! + --------------------------------------------------------------------*/ + +#define FN_STAT_PAGE (FN_STAT + 1) +#define FN_STAT_TEMPLATE (FN_STAT + 2) +#define FN_STAT_ZOOM (FN_STAT + 3) +#define FN_STAT_INSOVER (FN_STAT + 4) +#define FN_STAT_SELMODE (FN_STAT + 5) +#define FN_STAT_HYPERLINKS (FN_STAT + 6) /* Hyperlinks ausfuehren */ +#define FN_STAT_CONTEXT (FN_STAT + 7) +#define FN_STAT_BOOKMARK (FN_STAT + 8) /* Fuer Popup Bookmarks*/ + +/*-------------------------------------------------------------------- + Bereich: Seitenvorschau + --------------------------------------------------------------------*/ + +#define FN_SHOW_TWO_PAGES (FN_PGPREVIEW + 1) +#define FN_SHOW_FOUR_PAGES (FN_PGPREVIEW + 2) +#define FN_PRINT_PAGEPREVIEW (FN_PGPREVIEW + 3) + +/*-------------------------------------------------------------------- + Bereich: Rahmenattribute + --------------------------------------------------------------------*/ + +#define FN_OPAQUE (FN_FRAME + 1) +#define FN_SET_PROTECT (FN_FRAME + 2) +#define FN_SURROUND (FN_FRAME + 3) +#define FN_VERT_ORIENT (FN_FRAME + 4) +#define FN_HORI_ORIENT (FN_FRAME + 5) +#define FN_SET_FRM_NAME (FN_FRAME + 6) +#define FN_KEEP_ASPECT_RATIO (FN_FRAME + 7) +#define FN_GRF_KEEP_ZOOM (FN_FRAME + 8) + +#define FN_IID_COL1 (FN_FRAME + 13) +#define FN_IID_COL2 (FN_FRAME + 14) +#define FN_IID_COL3 (FN_FRAME + 15) +#define FN_IID_COLLEFT (FN_FRAME + 16) +#define FN_IID_COLRIGHT (FN_FRAME + 17) + +#define FN_SET_FRM_ALT_NAME (FN_FRAME + 18) + + +//Member-Ids fuer Fill/SetVariable an Items +#define MID_STYLE 0xe0 +#define MID_PWIDTH 0xe1 +#define MID_ADJUST 0xe2 +#define MID_TDIST 0xe3 +#define MID_BDIST 0xe4 +#define MID_LINES 0xe5 +#define MID_CHARS 0xe6 +#define MID_DIST 0xe7 + +#define MID_1 0xe8 +#define MID_2 0xe9 +#define MID_3 0xea +#define MID_4 0xeb +#define MID_5 0xec +#define MID_6 0xed +#define MID_7 0xee +#define MID_8 0xef +#define MID_9 0xf0 +#define MID_A 0xf1 +#define MID_B 0xf2 +#define MID_C 0xf3 +#define MID_D 0xf4 +#define MID_E 0xf5 +#define MID_F 0xf6 +#define MID_10 0xf7 +#define MID_11 0xf8 +#define MID_12 0xf9 +#define MID_13 0xfa + +#ifndef SID_SW_DOCMAN_PATH +#define SID_SW_DOCMAN_PATH (SID_OFASLOTS_START + 6) +#endif + +// defines fuer Event-Zuweisung per Macro +#define MAC_EVENT_MOUSEOVER 0x01 // +#define MAC_EVENT_MOUSECLICK 0x02 // Hyperlink ausloesen +#define MAC_EVENT_MOUSEOUT 0x03 // +#define MAC_EVENT_OBJECT_SELECT 0x04 // Obj. selektieren +#define MAC_EVENT_KEYINPUT_ALPHA 0x05 // +#define MAC_EVENT_KEYINPUT_NOALPHA 0x06 // +#define MAC_EVENT_FRM_RESIZE 0x07 // +#define MAC_EVENT_FRM_MOVE 0x08 // +#define MAC_EVENT_IMAGE_LOAD 0x09 // +#define MAC_EVENT_IMAGE_ABORT 0x0a // +#define MAC_EVENT_IMAGE_ERROR 0x0b // + diff --git a/sw/inc/comcore.hrc b/sw/inc/comcore.hrc new file mode 100644 index 000000000000..56ee86d328fa --- /dev/null +++ b/sw/inc/comcore.hrc @@ -0,0 +1,118 @@ +/************************************************************************* + * + * $RCSfile: comcore.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:24 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _COMCORE_HRC +#define _COMCORE_HRC + +#include "rcid.hrc" + +// --------------- +// die Strings +// --------------- + +#define STR_COMCORE_READERROR (RC_COMCORE_BEGIN + 0) +#define MSG_COMCORE_ASKSEARCH (RC_COMCORE_BEGIN + 1) +#define STR_TABLE_DEFNAME (RC_COMCORE_BEGIN + 2) +#define STR_GRAPHIC_DEFNAME (RC_COMCORE_BEGIN + 3) +#define STR_OBJECT_DEFNAME (RC_COMCORE_BEGIN + 4) +#define STR_FRAME_DEFNAME (RC_COMCORE_BEGIN + 5) +#define STR_REGION_DEFNAME (RC_COMCORE_BEGIN + 6) +#define STR_COMCORE_CANT_SHOW (RC_COMCORE_BEGIN + 7) +#define RID_GRAPHIC_REPLACEBMP (RC_COMCORE_BEGIN + 8) +#define RID_GRAPHIC_ERRORBMP (RC_COMCORE_BEGIN + 9) +#define STR_NUMRULE_DEFNAME (RC_COMCORE_BEGIN + 10) +#define STR_EMPTYPAGE (RC_COMCORE_BEGIN + 11) +#define RID_SHELLRES_AUTOFMTSTRS (RC_COMCORE_BEGIN + 12) +#define STR_MULT_INTERACT_HYPH_WARN (RC_COMCORE_BEGIN + 13) +#define STR_MULT_INTERACT_SPELL_WARN (RC_COMCORE_BEGIN + 14) +#define STR_SPELL_TITLE (RC_COMCORE_BEGIN + 15) +#define STR_HYPH_TITLE (RC_COMCORE_BEGIN + 16) + + +// defines fuer die Autoformat Redline Kommentare +#define STR_AUTOFMTREDL_DEL_EMPTY_PARA 0 +#define STR_AUTOFMTREDL_USE_REPLACE 1 +#define STR_AUTOFMTREDL_CPTL_STT_WORD 2 +#define STR_AUTOFMTREDL_CPTL_STT_SENT 3 +#define STR_AUTOFMTREDL_TYPO 4 +#define STR_AUTOFMTREDL_USER_STYLE 5 +#define STR_AUTOFMTREDL_BULLET 6 +#define STR_AUTOFMTREDL_UNDER 7 +#define STR_AUTOFMTREDL_BOLD 8 +#define STR_AUTOFMTREDL_FRACTION 9 +#define STR_AUTOFMTREDL_DETECT_URL 10 +#define STR_AUTOFMTREDL_DASH 11 +#define STR_AUTOFMTREDL_ORDINAL 12 +#define STR_AUTOFMTREDL_RIGHT_MARGIN 13 +#define STR_AUTOFMTREDL_SET_TMPL_TEXT 14 +#define STR_AUTOFMTREDL_SET_TMPL_INDENT 15 +#define STR_AUTOFMTREDL_SET_TMPL_NEG_INDENT 16 +#define STR_AUTOFMTREDL_SET_TMPL_TEXT_INDENT 17 +#define STR_AUTOFMTREDL_SET_TMPL_HEADLINE 18 +#define STR_AUTOFMTREDL_SET_NUMBULET 19 +#define STR_AUTOFMTREDL_DEL_MORELINES 20 +// !!!!!!!!!!!!!!!!!!!!!!!!!! das Ende immer richtig setzen !!!!!!!!!!!! +#define STR_AUTOFMTREDL_END 21 + + +#endif + + + diff --git a/sw/inc/crsrsh.hxx b/sw/inc/crsrsh.hxx new file mode 100644 index 000000000000..523d8de73309 --- /dev/null +++ b/sw/inc/crsrsh.hxx @@ -0,0 +1,901 @@ +/************************************************************************* + * + * $RCSfile: crsrsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CRSRSH_HXX +#define _CRSRSH_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _LINK_HXX //autogen +#include +#endif +#ifndef _RTTI_HXX //autogen +#include +#endif +#ifndef _WORDSEL_HXX //autogen +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLCHECKER1_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATOR_HPP_ +#include +#endif + +#ifndef _SWTYPES_HXX +#include // fuer SWPOSDOC +#endif +#ifndef _VIEWSH_HXX +#include // fuer ViewShell +#endif +#ifndef _CALBCK_HXX +#include // fuer SwClient +#endif +#ifndef _CSHTYP_HXX +#include // fuer die CursorShell Typen +#endif +#ifndef _CRSTATE_HXX +#include // fuer die CursorMove-Staties +#endif +#ifndef _BKMRKE_HXX //autogen +#include +#endif +#ifndef _TOXE_HXX +#include // SwTOXSearchDir +#endif + +#if defined(PRODUCT) && !defined(WIN) +// fuer die Inline-Methoden +#ifndef _VISCRS_HXX +#include +#endif +#ifndef _NODE_HXX +#include +#endif +#define CRSR_INLINE inline +#else +#define CRSR_INLINE +#endif + +// einige Forward Deklarationen + +class KeyCode; +class Region; +class SfxItemSet; +class SfxPoolItem; +class SpellCheck; +class SwBookmark; +class SwCntntFrm; +class SwCrsrShell; +class SwCursor; +class SwField; +class SwFieldType; +class SwFmt; +class SwFmtFld; +class SwIndex; +class SwNodeIndex; +class SwNode; +class SwNodes; +class SwPaM; +class SwSelBoxes; +class SwShellCrsr; +class SwShellTableCrsr; +class SwTableNode; +class SwTxtFmtColl; +class SwVisCrsr; +class SwTxtINetFmt; +class SwFmtINetFmt; +class SwTxtAttr; +class SwTableBox; +class SwCellFrms; +class SwTOXMark; +struct SwPosition; + +class SearchParam; +class SwRedline; + +// enum und struktur, um ueber die Doc-Position Informationen zu erfragen + +struct SwContentAtPos +{ + enum IsAttrAtPos + { + SW_NOTHING = 0x0000, + SW_FIELD = 0x0001, + SW_CLICKFIELD = 0x0002, + SW_FTN = 0x0004, + SW_INETATTR = 0x0008, + SW_TABLEBOXFML = 0x0010, + SW_REDLINE = 0x0020, + SW_OUTLINE = 0x0040, + SW_TOXMARK = 0x0080, + SW_REFMARK = 0x0100 +#ifndef PRODUCT + ,SW_CURR_ATTRS = 0x4000 // nur zum Debuggen + ,SW_TABLEBOXVALUE = 0x8000 // nur zum Debuggen +#endif + } eCntntAtPos; + + union { + const SwField* pFld; + const SfxPoolItem* pAttr; + const SwRedline* pRedl; + } aFnd; + + String sStr; + const SwTxtAttr* pFndTxtAttr; + + SwContentAtPos( int eGetAtPos = 0xffff ) + : eCntntAtPos( (IsAttrAtPos)eGetAtPos ) + { + aFnd.pFld = 0; + pFndTxtAttr = 0; + } + + // befindet sich der Node in einem geschuetzten Bereich? + FASTBOOL IsInProtectSect() const; +}; + + +// defines fuers GetCharCount +#define GETCHARCOUNT_NONE 0 +#define GETCHARCOUNT_PARA 1 +#define GETCHARCOUNT_SECTION 2 + + +// ReturnWerte von SetCrsr (werden verodert) +const int CRSR_NOERROR = 0x00, + CRSR_POSOLD = 0x01, // Cursor bleibt an alter Doc-Position + CRSR_POSCHG = 0x02; // Position vom Layout veraendert + + + + +// die Cursor - Shell +class SwCrsrShell : public ViewShell, public SwModify +{ + friend class SwCallLink; + friend class SwVisCrsr; + friend class SwSelPaintRects; + friend class SwChgLinkFlag; + + //Braucht den Crsr als IntrnlCrsr. + friend void GetTblSel( const SwCrsrShell&, SwSelBoxes& rBoxes, + const SwTblSearchType ); + friend BOOL GetAutoSumSel( const SwCrsrShell&, SwCellFrms& ); + +public: // public, damit defaultet werden kann !! + + /* ein enum fuer den Aufruf von UpdateCrsr */ + enum CrsrFlag { + UPDOWN = (1 << 0), // Up/Down auf Spalte halten + SCROLLWIN = (1 << 1), // Window Scrollen + CHKRANGE = (1 << 2), // ueberpruefen von ueberlappenden PaM's + NOCALRECT = (1 << 3), // CharRect nicht neu berechnen + READONLY = (1 << 4) // Sichtbar machen trotz Readonly + }; + +private: + + SwRect aCharRect; // Char-SRectangle auf dem der Cursor steht + Point aCrsrHeight; // Hohe&Offset von sichtbaren Cursor + Point aOldRBPos; // Right/Bottom von letzter VisArea + // (wird im Invalidate vom Cursor benutzt) + + + // um event. Macro was anhaengt auszufuehren. + Link aFlyMacroLnk; // Link will be called, if the Crsr is set + // into a fly. A macro can be then becalled + Link aChgLnk; // link will be called by every attribut/ + // format changes at cursor position. + Link aGrfArrivedLnk; // Link calls to UI if a grafik is arrived + + + SwShellCrsr* pCurCrsr; // der aktuelle Cursor + SwShellCrsr* pCrsrStk; // Stack fuer den Cursor + SwVisCrsr *pVisCrsr; // der Sichtbare-Cursor + + SwShellTableCrsr* pTblCrsr; // Tabellen-Crsr; nur in Tabellen, wenn + // die Selection ueber 2 Spalten liegt + + SwNodeIndex* pBoxIdx; // fuers erkennen der veraenderten + SwTableBox* pBoxPtr; // Tabellen-Zelle + + long nUpDownX; // versuche den Cursor bei Up/Down immer in + // der gleichen Spalte zu bewegen + long nLeftFrmPos; + ULONG nAktNode; // save CursorPos at Start-Action + xub_StrLen nAktCntnt; + USHORT nAktNdTyp; + + /* + * Mit den Methoden SttCrsrMove und EndCrsrMove wird dieser Zaehler + * Inc-/Decrementiert. Solange der Zaehler ungleich 0 ist, erfolgt + * auf den akt. Cursor kein Update. Dadurch koennen "komplizierte" + * Cursorbewegungen (ueber Find()) realisiert werden. + */ + USHORT nCrsrMove; + USHORT nBasicActionCnt; // Actions, die vom Basic geklammert wurden + CrsrMoveState eMvState; // Status fuers Crsr-Travelling - GetCrsrOfst + + BOOL bHasFocus : 1; // Shell ist in einem Window "aktiv" + BOOL bSVCrsrVis : 1; // SV-Cursor Un-/Sichtbar + BOOL bChgCallFlag : 1; // Attributaenderung innerhalb von + // Start- und EndAction + BOOL bVisPortChgd : 1; // befindet sich im VisPortChg-Aufruf + // (wird im Invalidate vom Cursor benutzt) + + BOOL bCallChgLnk : 1; // Flag fuer abgeleitete Klassen: + // TRUE -> ChgLnk callen + // Zugriff nur ueber SwChgLinkFlag + BOOL bAllProtect : 1; // Flag fuer Bereiche + // TRUE -> alles geschuetzt / versteckt + BOOL bInCMvVisportChgd : 1; // Flag fuer CrsrMoves + // TRUE -> die Sicht wurde verschoben + BOOL bGCAttr : 1; // TRUE -> es existieren nichtaufgespannte Attr. + BOOL bIgnoreReadonly : 1; // TRUE -> Beim naechsten EndAction trotz + // Readonly den Crsr sichtbar machen. + BOOL bSelTblCells : 1; // TRUE -> Zellen uebers InputWin selektieren + BOOL bAutoUpdateCells : 1; // TRUE -> Zellen werden autoformatiert + BOOL bBasicHideCrsr : 1; // TRUE -> HideCrsr vom Basic + BOOL bSetCrsrInReadOnly : 1;// TRUE -> Cursor darf in ReadOnly-Bereiche + + + void UpdateCrsr( USHORT eFlags + =SwCrsrShell::SCROLLWIN|SwCrsrShell::CHKRANGE, + BOOL bIdleEnd = FALSE ); + + void _ParkPams( SwPaM* pDelRg, SwShellCrsr** ppDelRing ); + + FASTBOOL LeftRight( BOOL, USHORT ); + FASTBOOL UpDown( BOOL, USHORT ); + FASTBOOL LRMargin( BOOL, BOOL bAPI = FALSE ); + FASTBOOL IsAtLRMargin( BOOL, BOOL bAPI = FALSE ) const; + FASTBOOL SttEndDoc( BOOL bStt ); + +typedef FASTBOOL (SwCursor:: *FNCrsr)(); + FASTBOOL CallCrsrFN( FNCrsr ); + + const SwRedline* _GotoRedline( USHORT nArrPos, BOOL bSelect ); + +protected: + + CRSR_INLINE SwMoveFnCollection* MakeFindRange( USHORT, USHORT, SwPaM* ) const; + + /* + * Compare-Methode for the StackCursor and the current Cursor. + * The Methods return -1, 0, 1 for lower, equal, greater. The enum + * CrsrCompareType says which position is compared. + */ + enum CrsrCompareType { + StackPtStackMk, + StackPtCurrPt, + StackPtCurrMk, + StackMkCurrPt, + StackMkCurrMk, + CurrPtCurrMk + }; + int CompareCursor( CrsrCompareType eType ) const; + + USHORT IncBasicAction() { return ++nBasicActionCnt; } + USHORT DecBasicAction() { return --nBasicActionCnt; } + + // Setzt alle PaMs in OldNode auf NewPos + Offset + void PaMCorrAbs(const SwNodeIndex &rOldNode, const SwPosition &rNewPos, + const xub_StrLen nOffset = 0 ); + // Setzt alle PaMs im Bereich von [StartNode, EndNode] nach NewPos + void PaMCorrAbs(const SwNodeIndex &rStartNode, const SwNodeIndex &rEndNode, + const SwPosition &rNewPos ); + +public: + TYPEINFO(); + SwCrsrShell( SwDoc *pDoc, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1> xSpell, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator> xHyph, + Window *pWin, SwRootFrm * = 0, const SwViewOption *pOpt = 0 ); + // verkleideter Copy-Constructor + SwCrsrShell( SwCrsrShell* pShell, Window *pWin ); + ~SwCrsrShell(); + + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + // neuen Cusror erzeugen und den alten anhaengen + SwPaM * CreateCrsr(); + // loesche den aktuellen Cursor und der folgende wird zum Aktuellen + FASTBOOL DestroyCrsr(); + // TableCursor in normale Cursor verwandeln, Tablemode aufheben + void TblCrsrToCursor(); + + SwPaM* GetCrsr( FASTBOOL bMakeTblCrsr = TRUE ) const; + CRSR_INLINE SwCursor* GetSwCrsr( FASTBOOL bMakeTblCrsr = TRUE ) const; + // nur den akt. Cursor returnen + SwShellCrsr* _GetCrsr() { return pCurCrsr; } + const SwShellCrsr* _GetCrsr() const { return pCurCrsr; } + + // uebergebenen Cursor anzeigen - fuer UNO + void SetSelection(const SwPaM& rCrsr); + + // alle Cursor aus den ContentNodes entfernen und auf 0 setzen. + // Wurde aus der FEShell hierher verschoben. + void ParkCrsr( const SwNodeIndex &rIdx ); + + // gebe den akt. Cursor-Stack zurueck. + // ( Wird in der EditShell beim Loeschen von Inhalten benoetigt! ) + CRSR_INLINE SwPaM* GetStkCrsr() const; + + // Start der Klammerung, SV-Cursor und selektierte Bereiche hiden + void StartAction(); + // Ende der Klammerung, SV-Cursor und selektierte Bereiche anzeigen + void EndAction( const BOOL bIdleEnd = FALSE ); + + USHORT GetBasicActionCnt() const { return nBasicActionCnt; } + + // Basiscursortravelling + long GetUpDownX() const { return nUpDownX; } + + FASTBOOL Left( USHORT nCnt = 1 ) { return LeftRight( TRUE, nCnt ); } + FASTBOOL Right( USHORT nCnt = 1 ) { return LeftRight( FALSE, nCnt ); } + FASTBOOL Up( USHORT nCnt = 1 ) { return UpDown( TRUE, nCnt ); } + FASTBOOL Down( USHORT nCnt = 1 ) { return UpDown( FALSE, nCnt ); } + FASTBOOL LeftMargin() { return LRMargin( TRUE ); } + FASTBOOL RightMargin(BOOL bAPI = FALSE) { return LRMargin( FALSE, bAPI ); } + FASTBOOL SttDoc() { return SttEndDoc( TRUE ); } + FASTBOOL EndDoc() { return SttEndDoc( FALSE ); } + + FASTBOOL MovePage( SwWhichPage, SwPosPage ); + FASTBOOL MovePara( SwWhichPara, SwPosPara ); + FASTBOOL MoveSection( SwWhichSection, SwPosSection ); + FASTBOOL MoveTable( SwWhichTable, SwPosTable ); + FASTBOOL MoveColumn( SwWhichColumn, SwPosColumn ); + FASTBOOL MoveRegion( SwWhichRegion, SwPosRegion ); + + // die Suchfunktionen + ULONG Find( const SearchParam& rParam, + SwDocPositions eStart, SwDocPositions eEnde, + FindRanges eRng, int bReplace = FALSE ); + + ULONG Find( const SwTxtFmtColl& rFmtColl, + SwDocPositions eStart, SwDocPositions eEnde, + FindRanges eRng, const SwTxtFmtColl* pReplFmt = 0 ); + + ULONG Find( const SfxItemSet& rSet, FASTBOOL bNoCollections, + SwDocPositions eStart, SwDocPositions eEnde, + FindRanges eRng, const SearchParam* pTextPara = 0, + const SfxItemSet* rReplSet = 0 ); + + // Positionieren des Cursors + // returnt + // CRSR_POSCHG: wenn der ob der SPoint vom Layout korrigiert wurde. + // CRSR_POSOLD: wenn der Crsr nicht veraendert wurde + int SetCrsr( const Point &rPt, BOOL bOnlyText = FALSE ); + + /* + * Benachrichtung, dass der sichtbare Bereich sich geaendert + * hat. aVisArea wird neu gesetzt, anschliessend wird + * gescrollt. Das uebergebene Rectangle liegt auf + * Pixelgrenzen, um Pixelfehler beim Scrollen zu vermeiden. + */ + virtual void VisPortChgd( const SwRect & ); + + /* + * Virtuelle PaintMethode, damit die Selection nach dem Paint wieder + * sichtbar wird. + */ + void Paint( const Rectangle & rRect ); + + // Bereiche + CRSR_INLINE void SetMark(); + CRSR_INLINE FASTBOOL HasMark(); + + void ClearMark(); + void SwapPam(); + FASTBOOL ChgCurrPam( const Point & rPt, + BOOL bTstOnly = TRUE, //Nur testen, nicht setzen + BOOL bTstHit = FALSE ); //Nur genaue Treffer + void KillPams(); + + // erzeuge eine Kopie vom Cursor und speicher diese im Stack + void Push(); + /* + * Loescht einen Cursor (gesteuert durch bOldCrsr) + * - vom Stack oder ( bOldCrsr = TRUE ) + * - den aktuellen und der auf dem Stack stehende wird zum aktuellen + * + * Return: es war auf dem Stack noch einer vorhanden + */ + FASTBOOL Pop( BOOL bOldCrsr = TRUE ); + /* + * Verbinde zwei Cursor miteinander. + * Loesche vom Stack den obersten und setzen dessen Mark im Aktuellen. + */ + void Combine(); + +#if defined( PRODUCT ) + void SttCrsrMove() { ++nCrsrMove; StartAction(); } + void EndCrsrMove( const BOOL bIdleEnd = FALSE ) + { EndAction( bIdleEnd ); --nCrsrMove; } +#else + void SttCrsrMove(); + void EndCrsrMove( const BOOL bIdleEnd = FALSE ); +#endif + + /* + * Beim Abgeben des Focuses werden die selektierten Bereiche nicht mehr + * angezeigt; andererseits beim Erhalten des Focuses, werden alle selek- + * tierten Bereiche wieder angezeigt. (Bereiche muessen neu berechnet + * werden!) + */ + BOOL HasShFcs() const { return bHasFocus; } + void ShLooseFcs(); + void ShGetFcs( BOOL bUpdate = TRUE ); + + // Methoden zum Anzeigen bzw. Verstecken des sichtbaren Text-Cursors + void ShowCrsr(); + void HideCrsr(); + // Methoden zum Anzeigen bzw. Verstecken der selektierten Bereiche mit + // dem sichtbaren Cursor + void ShowCrsrs( BOOL bCrsrVis ); + void HideCrsrs(); + // Methoden zum Anzeigen bzw. Verstecken der selektierten Bereiche mit + // dem sichtbaren Cursor + void BasicShowCrsrs() + { bBasicHideCrsr = FALSE; bSVCrsrVis = TRUE; ShowCrsrs(TRUE); } + void BasicHideCrsrs() + { HideCrsrs(); bBasicHideCrsr = TRUE; bSVCrsrVis = FALSE; } + FASTBOOL IsBasicHideCrsr() const { return bBasicHideCrsr; } + + // gebe den aktuellen Frame, in dem der Cursor steht, zurueck + SwCntntFrm *GetCurrFrm( const BOOL bCalcFrm = TRUE ) const; + + //TRUE wenn der Crsr wenn der Crsr wegen Readonly gehidet ist, + //FALSE wenn der arbeitet (trotz Readonly). + FASTBOOL IsCrsrReadonly() const; + // Cursor steht in etwas geschuetztem oder in die Selektion umspannt + // etwas geschuetztes. + FASTBOOL HasReadonlySel() const; + // darf der Cursor in ReadOnlyBereiche? + FASTBOOL IsReadOnlyAvailable() const { return bSetCrsrInReadOnly; } + void SetReadOnlyAvailable( BOOL bFlag ); + FASTBOOL IsOverReadOnlyPos( const Point& rPt ) const; + + // Methoden fuer aFlyMacroLnk + void SetFlyMacroLnk( const Link& rLnk ) { aFlyMacroLnk = rLnk; } + const Link& GetFlyMacroLnk() const { return aFlyMacroLnk; } + + // Methoden geben/aendern den Link fuer die Attribut/Format-Aenderungen + void SetChgLnk( const Link &rLnk ) { aChgLnk = rLnk; } + const Link& GetChgLnk() const { return aChgLnk; } + + // Methoden geben/aendern den Link fuers "Grafik vollstaendig geladen" + void SetGrfArrivedLnk( const Link &rLnk ) { aGrfArrivedLnk = rLnk; } + const Link& GetGrfArrivedLnk() const { return aGrfArrivedLnk; } + + //ChgLink callen, innerhalb einer Action wird der Ruf verzoegert. + void CallChgLnk(); + + // Abfrage, ob der aktuelle Cursor eine Selektion aufspannt, + // also, ob Mark gesetzt und SPoint und Mark unterschiedlich sind. + FASTBOOL HasSelection(); + + // Abfrage, ob ueberhaupt eine Selektion existiert, sprich der akt. Cursor + // aufgespannt oder nicht der einzigste ist. + CRSR_INLINE FASTBOOL IsSelection() const; + + // Abfrage, ob ein kompletter Absatz selektiert wurde + FASTBOOL IsSelFullPara() const; + // Abfrage, ob die Selektion in einem Absatz ist + CRSR_INLINE FASTBOOL IsSelOnePara() const; + + //Sollte fuer das Clipboard der WaitPtr geschaltet werden. + FASTBOOL ShouldWait() const; + + /* + * liefert das SRectangle, auf dem der Cursor steht. + */ + const SwRect &GetCharRect() const { return aCharRect; } + /* + * liefert zurueck, ob der Cursor sich ganz oder teilweise im + * sichtbaren Bereich befindet. + */ + FASTBOOL IsCrsrVisible() const { return VisArea().IsOver( GetCharRect() ); } + + // gebe die aktuelle Seitennummer zurueck: + // TRUE: in der der Cursor steht + // FALSE: die am oberen Rand sichtbar ist + void GetPageNum( USHORT &rnPhyNum, USHORT &rnVirtNum, + BOOL bAtCrsrPos = TRUE, const BOOL bCalcFrm = TRUE ); + // bestimme in welche Richtung "leere Seiten" behandelt werden! + // (wird benutzt im PhyPage.. ) + USHORT GetNextPrevPageNum( BOOL bNext = TRUE ); + + // setze den Cursor auf die Seite "nPage" an den Anfang + FASTBOOL GotoPage( USHORT nPage ); + + // gebe alle Dokumentseiten zurueck + USHORT GetPageCnt(); + + // Gehe zur naechsten Selection + FASTBOOL GoNextCrsr(); + // gehe zur vorherigen Selection + FASTBOOL GoPrevCrsr(); + + // am CurCrsr.SPoint + FASTBOOL SetBookmark( const KeyCode&, const String& rName, + const String& rShortName, BOOKMARK_TYPE eMark = BOOKMARK ); + FASTBOOL GotoBookmark( USHORT ); // setzt CurCrsr.SPoint + FASTBOOL GotoBookmark( USHORT nPos, BOOL bAtStart ); // + FASTBOOL GoNextBookmark(); // TRUE, wenn's noch eine gab + FASTBOOL GoPrevBookmark(); + USHORT GetBookmarkCnt(BOOL bBkmrk = FALSE) const; + SwBookmark& GetBookmark( USHORT, BOOL bBkmrk = FALSE ); + void DelBookmark( USHORT ); + void DelBookmark( const String& rName ); + USHORT FindBookmark( const String& rName ); + // erzeugt einen eindeutigen Namen. Der Name selbst muss vorgegeben + // werden, es wird dann bei gleichen Namen nur durchnumeriert. + void MakeUniqueBookmarkName( String& rNm ); + + // aktualisiere den Crsrs, d.H. setze ihn wieder in den Content. + // Das sollte nur aufgerufen werden, wenn der Cursor z.B. beim + // Loeschen von Rahmen irgendwohin gesetzt wurde. Die Position + // ergibt sich aus seiner aktuellen Position im Layout !! + void UpdateCrsrPos(); + + // returne den am akt. Cursor selektierten Text. Dieser wird mit + // Felder etc. aufgefuellt!! + String GetSelTxt() const; + // gebe nur den Text ab der akt. Cursor Position zurueck (bis zum NodeEnde) + String GetText() const; + // retrurne die Anzahl der selektierten Zeichen. + // Falls keine Selektion vorliegt entscheided nType was selektiert wird + // bIntrnlChar besagt ob interne Zeichen erhalten bleiben (TRUE) oder + // ob sie expandiert werden (z.B Felder/...) + ULONG GetCharCount( USHORT nType, BOOL bIntrnlChrs = TRUE ) const; + + // pruefe ob vom aktuellen Crsr der SPoint/Mark in einer Tabelle stehen + CRSR_INLINE const SwTableNode* IsCrsrInTbl( BOOL bIsPtInTbl = TRUE ) const; + // erfrage die Document - Layout - Position vom akt. Crsr + CRSR_INLINE Point& GetCrsrDocPos( BOOL bPoint = TRUE ) const; + CRSR_INLINE FASTBOOL IsCrsrPtAtEnd() const; + + CRSR_INLINE const SwPaM* GetTblCrs() const; + CRSR_INLINE SwPaM* GetTblCrs(); + + FASTBOOL IsTblComplex() const; + FASTBOOL IsTblComplexForChart() const; + // erfrage die akt. TabellenSelektion als Text + String GetBoxNms() const; + + // setze Crsr in die naechsten/vorherigen Celle + FASTBOOL GoNextCell( BOOL bAppendLine = TRUE ); + FASTBOOL GoPrevCell(); + // gehe zu dieser Box (wenn vorhanden und in Tabelle!) + FASTBOOL GotoTblBox( const String& rName ); + FASTBOOL GotoTable( const String& rName ); + + // selectiere diese Zeile/Spalte + FASTBOOL SelTblRow(); + FASTBOOL SelTblCol(); + + // zum naechsten/vorhergehenden Punkt auf gleicher Ebene + FASTBOOL GotoNextNum(); + FASTBOOL GotoPrevNum(); + + // zu diesem Gliederungspunkt + FASTBOOL GotoOutline( const String& rName ); + // zum naechsten/vorhergehenden oder angegebenen OultineNode + void GotoOutline( USHORT nIdx ); + // suche die "Outline-Position" im Nodes-Array vom akt. Kaiptel + USHORT GetOutlinePos( BYTE nLevel = UCHAR_MAX ); + // selektiere den angeben Bereich von OutlineNodes. Optional + // inclusive der Childs. Die USHORT sind die Positionen im + // OutlineNds-Array!! (EditShell) + FASTBOOL MakeOutlineSel( USHORT nSttPos, USHORT nEndPos, + BOOL bWithChilds = FALSE ); + + FASTBOOL GotoNextOutline(); // naechster Node mit Outline-Num. + FASTBOOL GotoPrevOutline(); // vorheriger Node mit Outline-Num. + + // ist der Crsr in einer Tabelle und ist die Selection ueber + // zwei Spalten + FASTBOOL IsTableMode() const { return 0 != pTblCrsr; } + + // erfrage den Tabellen Crsr; ausserhalb von Tabellen immer 0 + const SwShellTableCrsr* GetTableCrsr() const { return pTblCrsr; } + SwShellTableCrsr* GetTableCrsr() { return pTblCrsr; } + USHORT UpdateTblSelBoxes(); + + FASTBOOL GotoFtnTxt(); // springe aus dem Content zur Fussnote + FASTBOOL GotoFtnAnchor(); // springe aus der Fussnote zum Anker + FASTBOOL GotoNextFtnAnchor(); + FASTBOOL GotoPrevFtnAnchor(); + FASTBOOL GotoNextFtnCntnt(); + FASTBOOL GotoPrevFtnCntnt(); + + FASTBOOL GotoFlyTxt(); // springe aus dem Content zum "naechsten" Rahmen + FASTBOOL GotoFlyAnchor(); // springe aus dem Rahmen zum Anker + FASTBOOL GotoHeaderTxt(); // springe aus dem Content zum Header + FASTBOOL GotoFooterTxt(); // springe aus dem Content zum Footer + // springe in den Header/Footer des angegebenen oder akt. PageDesc + FASTBOOL SetCrsrInHdFt( USHORT nDescNo = USHRT_MAX, + FASTBOOL bInHeader = TRUE ); + // is point of cursor in header/footer. pbInHeader return TRUE if it is + // in a headerframe otherwise in a footerframe + FASTBOOL IsInHeaderFooter( FASTBOOL* pbInHeader = 0 ) const; + + // springe zum naechsten Verzeichnis [mit dem Namen] + FASTBOOL GotoNextTOXBase( const String* = 0 ); + // springe zum vorherigen Verzeichnis [mit dem Namen] + FASTBOOL GotoPrevTOXBase( const String* = 0 ); + FASTBOOL GotoTOXMarkBase(); // springe zum Verzeichnis vom TOXMark + // springe zum naechsten (vorherigen) Verzeichniseintrag + FASTBOOL GotoNxtPrvTOXMark( BOOL bNext = TRUE ); + // Zur naechsten/ vorherigen Verzeichnismarke dieses Typs traveln + const SwTOXMark& GotoTOXMark( const SwTOXMark& rStart, SwTOXSearch eDir ); + + // springe zum naechsten (vorherigen) Tabellenformel + // optional auch nur zu kaputten Formeln springen + FASTBOOL GotoNxtPrvTblFormula( BOOL bNext = TRUE, + BOOL bOnlyErrors = FALSE ); + + // springe zu dieser Refmark + FASTBOOL GotoRefMark( const String& rRefMark, USHORT nSubType = 0, + USHORT nSeqNo = 0 ); + + // hole vom Start/Ende der akt. Selection das nte Zeichen + sal_Unicode GetChar( BOOL bEnd = TRUE, long nOffset = 0 ); + // erweiter die akt. Selection am Anfang/Ende um n Zeichen + FASTBOOL ExtendSelection( BOOL bEnd = TRUE, xub_StrLen nCount = 1 ); + // setze nur den sichtbaren Cursor an die angegebene Dokument-Pos. + // returnt FALSE: wenn der ob der SPoint vom Layout korrigiert wurde. + // (wird zum Anzeigen von Drag&Drop/Copy-Cursor benoetigt) + FASTBOOL SetVisCrsr( const Point &rPt ); + CRSR_INLINE void UnSetVisCrsr(); + + // springe zum nachsten/vorherigen Feld des entsprechenden Types + FASTBOOL MoveFldType( const SwFieldType* pFldType, BOOL bNext, + USHORT nSubType = USHRT_MAX, + USHORT nResType = USHRT_MAX ); + // springe genau zu diesem Feld + FASTBOOL GotoFld( const SwFmtFld& rFld ); + + // returne die Anzahl der Cursor im Ring (Flag besagt ob man nur + // aufgepspannte haben will - sprich etwas selektiert ist (Basic)) + USHORT GetCrsrCnt( BOOL bAll = TRUE ) const; + + // Char Travelling - Methoden (in crstrvl1.cxx) + FASTBOOL IsStartWord()const; + FASTBOOL IsEndWord() const; + FASTBOOL IsInWord() const; + FASTBOOL GoStartWord(); + FASTBOOL GoEndWord(); + FASTBOOL GoNextWord(); + FASTBOOL GoPrevWord(); + FASTBOOL GoNextSentence(); + FASTBOOL GoPrevSentence(); + FASTBOOL SelectWord( const Point* pPt = 0 ); + + // Abfrage vom CrsrTravelling Status + CrsrMoveState GetMoveState() const { return eMvState; } + + // Position vom akt. Cursor erfragen + FASTBOOL IsStartOfDoc() const; + FASTBOOL IsEndOfDoc() const; + FASTBOOL IsSttPara() const; + FASTBOOL IsEndPara() const; + FASTBOOL IsAtLeftMargin() const { return IsAtLRMargin( TRUE ); } + FASTBOOL IsAtRightMargin(BOOL bAPI = FALSE) const { return IsAtLRMargin( FALSE, bAPI ); } + + // loesche alle erzeugten Crsr, setze den Tabellen-Crsr und den letzten + // Cursor auf seinen TextNode (oder StartNode?). + // Beim naechsten ::GetCrsr werden sie wieder alle erzeugt. + // Wird fuers Drag&Drop/ClipBorad-Paste in Tabellen benoetigt. + FASTBOOL ParkTblCrsr(); + + // erfrage die selektierte "Region" aller Cursor (fuer D&D auf Mac) + Region GetCrsrRegion() const; + + // gibt es nicht aufgespannte Attribute? + FASTBOOL IsGCAttr() const { return bGCAttr; } + void ClearGCAttr() { bGCAttr = FALSE; } + void UpdateAttr() { bGCAttr = TRUE; } + + // ist das gesamte Dokument geschuetzt/versteckt?? (fuer UI,..) + FASTBOOL IsAllProtect() const { return bAllProtect; } + +#ifdef SW_CRSR_TIMER + // setze das Flag am VisCrsr, ob dieser ueber Timer getriggert (TRUE) + // oder direkt (FALSE) angezeigt wird. (default ist Timer getriggert) + FASTBOOL ChgCrsrTimerFlag( BOOL bTimerOn = TRUE ); +#endif + + // steht der Curor auf einem "Symbol"-Zeichen + FASTBOOL IsInSymbolFont() const; + + BOOL BasicActionPend() const { return nBasicActionCnt != nStartAction; } + + // springe zum benannten Bereich + FASTBOOL GotoRegion( const String& rName ); + + // zeige die aktuelle Selektion an + virtual void MakeSelVisible(); + + // setzte den Cursor auf einen NICHT geschuetzten/versteckten Node + FASTBOOL FindValidCntntNode( BOOL bOnlyText = FALSE ); + + FASTBOOL GetContentAtPos( const Point& rPt, + SwContentAtPos& rCntntAtPos, + FASTBOOL bSetCrsr = FALSE, + SwRect* pFldRect = 0 ); + + // Attribut selelktieren + FASTBOOL SelectTxtAttr( USHORT nWhich, BOOL bExpand = FALSE, + const SwTxtAttr* pAttr = 0 ); + FASTBOOL GotoINetAttr( const SwTxtINetFmt& rAttr ); + const SwFmtINetFmt* FindINetAttr( const String& rName ) const; + + FASTBOOL CheckTblBoxCntnt( const SwPosition* pPos = 0 ); + void SaveTblBoxCntnt( const SwPosition* pPos = 0 ); + void ClearTblBoxCntnt(); + FASTBOOL EndAllTblBoxEdit(); + + // wird gerufen, wenn eine Tabellenselektion im UpdateCrsr erzeugt wird, + // ohne das die UI davon etaws weiss + virtual void NewCoreSelection(); + + void SetSelTblCells( BOOL bFlag ) { bSelTblCells = bFlag; } + BOOL IsSelTblCells() const { return bSelTblCells; } + + BOOL IsAutoUpdateCells() const { return bAutoUpdateCells; } + void SetAutoUpdateCells( BOOL bFlag ) { bAutoUpdateCells = bFlag; } + + FASTBOOL GetShadowCrsrPos( const Point& rPt, SwFillMode eFillMode, + SwRect& rRect, SwHoriOrient& rOrient ); + FASTBOOL SetShadowCrsrPos( const Point& rPt, SwFillMode eFillMode ); + + const SwRedline* SelNextRedline(); + const SwRedline* SelPrevRedline(); + const SwRedline* GotoRedline( USHORT nArrPos, BOOL bSelect = FALSE ); +}; + + +class SwChgLinkFlag +{ + BOOL bOldFlag; + SwCrsrShell& rCrsrShell; + long nLeftFrmPos; +public: + SwChgLinkFlag( SwCrsrShell& rShell ); + ~SwChgLinkFlag(); +}; + + + +// Cursor Inlines: + +#if defined(PRODUCT) && !defined(WIN) + +inline SwMoveFnCollection* SwCrsrShell::MakeFindRange( + USHORT nStt, USHORT nEnd, SwPaM* pPam ) const +{ + return pCurCrsr->MakeFindRange( (SwDocPositions)nStt, (SwDocPositions)nEnd, pPam ); +} + +inline SwCursor* SwCrsrShell::GetSwCrsr( FASTBOOL bMakeTblCrsr ) const +{ + return (SwCursor*)GetCrsr( bMakeTblCrsr ); +} + +inline SwPaM* SwCrsrShell::GetStkCrsr() const { return pCrsrStk; } + +inline void SwCrsrShell::SetMark() { pCurCrsr->SetMark(); } + +inline FASTBOOL SwCrsrShell::HasMark() { return( pCurCrsr->HasMark() ); } + +inline FASTBOOL SwCrsrShell::IsSelection() const +{ + return IsTableMode() || pCurCrsr->HasMark() || + pCurCrsr->GetNext() != pCurCrsr; +} + +inline FASTBOOL SwCrsrShell::IsSelOnePara() const +{ + return pCurCrsr == pCurCrsr->GetNext() && + pCurCrsr->GetPoint()->nNode == pCurCrsr->GetMark()->nNode; +} + +inline const SwTableNode* SwCrsrShell::IsCrsrInTbl( BOOL bIsPtInTbl ) const +{ + return pCurCrsr->GetNode( bIsPtInTbl )->FindTableNode(); +} + +inline FASTBOOL SwCrsrShell::IsCrsrPtAtEnd() const +{ + return pCurCrsr->End() == pCurCrsr->GetPoint(); +} + +inline Point& SwCrsrShell::GetCrsrDocPos( BOOL bPoint ) const +{ + return bPoint ? pCurCrsr->GetPtPos() : pCurCrsr->GetMkPos(); +} + +inline const SwPaM* SwCrsrShell::GetTblCrs() const +{ + return pTblCrsr; +} + +inline SwPaM* SwCrsrShell::GetTblCrs() +{ + return pTblCrsr; +} + +inline void SwCrsrShell::UnSetVisCrsr() +{ + pVisCrsr->Hide(); + pVisCrsr->SetDragCrsr( FALSE ); +} + +#endif + + +#endif // _CRSRSH_HXX diff --git a/sw/inc/crstate.hxx b/sw/inc/crstate.hxx new file mode 100644 index 000000000000..e712b0c12278 --- /dev/null +++ b/sw/inc/crstate.hxx @@ -0,0 +1,156 @@ +/************************************************************************* + * + * $RCSfile: crstate.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CRSTATE_HXX +#define _CRSTATE_HXX + +#ifndef _GEN_HXX //autogen +#include +#endif + +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _SWRECT_HXX +#include +#endif + +enum SwFillMode +{ + FILL_TAB, // default, Auffuellen mit Tabulatoren + FILL_SPACE, // ... mit Tabulatoren und Spaces + FILL_MARGIN, // nur links, zentriert, rechts Ausrichten + FILL_INDENT // durch linken Absatzeinzug +}; + +struct SwFillCrsrPos +{ + SwRect aCrsr; // Position und Groesse des Shadowcursors + USHORT nParaCnt; // Anzahl der einzufuegenden Absaetze + USHORT nTabCnt; // Anzahl der Tabs bzw. Groesse des Einzugs + USHORT nSpaceCnt; // Anzahl der einzufuegenden Leerzeichen + USHORT nColumnCnt; // Anzahl der notwendigen Spaltenumbrueche + SwHoriOrient eOrient; // Absatzausrichtung + SwFillMode eMode; // Gewuenschte Auffuellregel + SwFillCrsrPos( SwFillMode eMd = FILL_TAB ) : + nParaCnt( 0 ), nTabCnt( 0 ), nSpaceCnt( 0 ), nColumnCnt( 0 ), + eOrient( HORI_NONE ), eMode( eMd ) + {} +}; + +// CrsrTravelling-Staties (fuer GetCrsrOfst) +enum CrsrMoveState +{ + MV_NONE, // default + MV_UPDOWN, // Crsr Up/Down + MV_RIGHTMARGIN, // an rechten Rand + MV_LEFTMARGIN, // an linken Rand + MV_SETONLYTEXT, // mit dem Cursr nur im Text bleiben + MV_TBLSEL // nicht in wiederholte Headlines +}; + +// struct fuer spaetere Erweiterungen +struct SwCrsrMoveState +{ + SwFillCrsrPos *pFill; // fuer das automatische Auffuellen mit Tabs etc. + Point aRealHeight; // enthaelt dann die Position/Hoehe des Cursors + CrsrMoveState eState; + BOOL bStop :1; + BOOL bRealHeight :1; // Soll die reale Hoehe berechnet werden? + BOOL bFieldInfo :1; // Sollen Felder erkannt werden? + BOOL bPosCorr :1; // Point musste korrigiert werden + BOOL bFtnNoInfo :1; // Fussnotennumerierung erkannt + BOOL bExactOnly :1; // GetCrsrOfst nur nach Exakten Treffern + // suchen lassen, sprich niemals in das + // GetCntntPos laufen. + BOOL bFillRet :1; // wird nur im FillModus temp. genutzt + BOOL bSetInReadOnly :1; // ReadOnlyBereiche duerfen betreten werden + BOOL bDropIt :1; // dropportions allowed + + SwCrsrMoveState( CrsrMoveState eSt = MV_NONE ) : + pFill( NULL ), + eState( eSt ), + bStop( FALSE ), + bRealHeight( FALSE ), + bFieldInfo( FALSE ), + bPosCorr( FALSE ), + bFtnNoInfo( FALSE ), + bExactOnly( FALSE ), + bSetInReadOnly( FALSE ), + bDropIt( FALSE ) + {} + SwCrsrMoveState( SwFillCrsrPos *pInitFill ) : + pFill( pInitFill ), + eState( MV_SETONLYTEXT ), + bStop( FALSE ), + bRealHeight( FALSE ), + bFieldInfo( FALSE ), + bPosCorr( FALSE ), + bFtnNoInfo( FALSE ), + bExactOnly( FALSE ), + bSetInReadOnly( FALSE ), + bDropIt( FALSE ) + {} +}; + + +#endif + + diff --git a/sw/inc/cshtyp.hxx b/sw/inc/cshtyp.hxx new file mode 100644 index 000000000000..269673eaa656 --- /dev/null +++ b/sw/inc/cshtyp.hxx @@ -0,0 +1,147 @@ +/************************************************************************* + * + * $RCSfile: cshtyp.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _CSHTYP_HXX +#define _CSHTYP_HXX + +#ifndef _SOLAR_H +#include +#endif + +class UniString; +class SwPaM; +class SwCntntFrm; +class SwLayoutFrm; + +// eine Struktur fuer den SwPaM. In dieser stehen die Methoden-Pointer +// fuer das richtungsabhaengige Bewegen des Cursors. +struct SwMoveFnCollection; +typedef SwMoveFnCollection* SwMoveFn; + + +// Type-Definition fuer die CrsrShell +// Richtungsparameter fuer MovePage ( wird in SwCntntFrm initialisiert ) +typedef SwLayoutFrm * (*SwWhichPage)( const SwLayoutFrm * ); +typedef SwCntntFrm * (*SwPosPage)( const SwLayoutFrm * ); +extern SwWhichPage fnPagePrev, fnPageCurr, fnPageNext; +extern SwPosPage fnPageStart, fnPageEnd; + +// Richtungsparameter fuer MovePara ( wird in SwPaM initialisiert ) +typedef SwMoveFnCollection* SwPosPara; +typedef FASTBOOL (*SwWhichPara)( SwPaM&, SwPosPara ); +extern SwWhichPara fnParaPrev, fnParaCurr, fnParaNext; +extern SwPosPara fnParaStart, fnParaEnd; + +// Richtungsparameter fuer MoveSection +typedef SwMoveFnCollection* SwPosSection; +typedef FASTBOOL (*SwWhichSection)( SwPaM&, SwPosSection ); +extern SwWhichSection fnSectionPrev, fnSectionCurr, fnSectionNext; +extern SwPosSection fnSectionStart, fnSectionEnd; + +// Richtungsparameter fuer MoveTable +typedef SwMoveFnCollection* SwPosTable; +typedef FASTBOOL (*SwWhichTable)( SwPaM&, SwPosTable, FASTBOOL bInReadOnly ); +extern SwWhichTable fnTablePrev, fnTableCurr, fnTableNext; +extern SwPosTable fnTableStart, fnTableEnd; + +// Richtungsparameter fuer MoveColumn +typedef SwLayoutFrm * (*SwWhichColumn)( const SwLayoutFrm * ); +typedef SwCntntFrm * (*SwPosColumn)( const SwLayoutFrm * ); +extern SwWhichColumn fnColumnPrev, fnColumnCurr, fnColumnNext; +extern SwPosColumn fnColumnStart, fnColumnEnd; + +// Richtungsparameter fuer MoveRegion (Bereiche!) +typedef SwMoveFnCollection* SwPosRegion; +typedef FASTBOOL (*SwWhichRegion)( SwPaM&, SwPosRegion, FASTBOOL bInReadOnly ); +extern SwWhichRegion fnRegionPrev, fnRegionCurr, fnRegionNext, fnRegionCurrAndSkip; +extern SwPosRegion fnRegionStart, fnRegionEnd; + + + +/* + * folgende Kombinationen sind erlaubt: + * - suche einen im Body: -> FND_IN_BODY + * - suche alle im Body: -> FND_IN_BODYONLY | FND_IN_SELALL + * - suche in Selectionen: einen / alle -> FND_IN_SEL [ | FND_IN_SELALL ] + * - suche im nicht Body: einen / alle -> FND_IN_OTHER [ | FND_IN_SELALL ] + * - suche ueberall alle: -> FND_IN_SELALL + */ +enum FindRanges +{ + FND_IN_BODY = 0x00, // suche "eins" mur im Body-Text + FND_IN_OTHER = 0x02, // suche "alles" in Footer/Header/Fly... + FND_IN_SEL = 0x04, // suche in Selectionen + FND_IN_BODYONLY = 0x08, // suche nur im Body - nur in Verbindung mit + // FND_IN_SELALL !!! + FND_IN_SELALL = 0x01 // - alle ( nur im nicht Body und Selectionen) +}; + + +enum SwDocPositions +{ + DOCPOS_START, + DOCPOS_CURR, + DOCPOS_END, + DOCPOS_OTHERSTART, + DOCPOS_OTHEREND +}; + + +#endif // _CSHTYP_HXX diff --git a/sw/inc/dbfld.hxx b/sw/inc/dbfld.hxx new file mode 100644 index 000000000000..c6fca4ada324 --- /dev/null +++ b/sw/inc/dbfld.hxx @@ -0,0 +1,366 @@ +/************************************************************************* + * + * $RCSfile: dbfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DBFLD_HXX +#define _DBFLD_HXX + +#include "fldbas.hxx" + +class SwDoc; +class SwTxtFld; +class SwFrm; + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankfeld + --------------------------------------------------------------------*/ + +class SwDBFieldType : public SwValueFieldType +{ + String aName; // Syntax: Datenbankname.Feldname + long nRefCnt; + +public: + + SwDBFieldType(SwDoc* pDocPtr, const String& Name, const String& rSymDBName); + + virtual const String& GetName() const; + virtual SwFieldType* Copy() const; + + inline void AddRef() { nRefCnt++; } + void ReleaseRef(); + inline long GetRefCount() { return nRefCnt; } + + String GetColumnName(); + String GetDBName(); + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: + von SwFields abgeleitete Klassen. Sie ueberlagern die Expand-Funktion. + Der Inhalt wird entsprechend dem Format, soweit vorhanden, formatiert. + --------------------------------------------------------------------*/ + +class SwDBField : public SwValueField +{ + String aContent; + USHORT nSubType; + BOOL bIsInBodyTxt : 1; + BOOL bValidValue : 1; + BOOL bInitialized : 1; + +public: + SwDBField(SwDBFieldType*, ULONG nFmt = 0); + virtual ~SwDBField(); + + virtual SwFieldType* ChgTyp( SwFieldType* ); + + // Der aktuelle Text + inline void SetExpansion(const String& rStr); + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nType); + + // Name oder Inhalt + virtual String GetCntnt(BOOL bName = FALSE) const; + + // fuer Berechnungen in Ausdruecken + void ChgValue( double d, BOOL bVal ); + + // Evaluierung ueber den DBMgr String rauspulen + void Evaluate(); + + // Evaluierung fuer Kopf und Fusszeilen + void ChangeExpansion( const SwFrm*, const SwTxtFld* ); + void InitContent(); + void InitContent(const String& rExpansion); + String GetOldContent(); + + inline void ChgBodyTxtFlag( BOOL bIsInBody ); + inline BOOL IsInBodyTxt() const; + + inline BOOL IsValidValue() const { return bValidValue; } + + inline BOOL IsInitialized() const { return bInitialized; } + inline void ClearInitialized() { bInitialized = FALSE; } + inline void SetInitialized() { bInitialized = TRUE; } + + // Name erfragen + virtual const String& GetPar1() const; + + // DBName + inline String GetDBName() const { return ((SwDBFieldType*)GetTyp())->GetDBName(); } + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline void SwDBField::SetExpansion(const String& rStr) + { aContent = rStr; } + +// wird von der Formatierung abgefragt +inline BOOL SwDBField::IsInBodyTxt() const + { return bIsInBodyTxt; } + +// wird von UpdateExpFlds gesetzt (dort ist die Node-Position bekannt) +inline void SwDBField::ChgBodyTxtFlag( BOOL bIsInBody ) + { bIsInBodyTxt = bIsInBody; } + +/*-------------------------------------------------------------------- + Beschreibung: Basisklasse fuer alle weiteren Datenbankfelder + --------------------------------------------------------------------*/ + +class SwDBNameInfField : public SwField +{ + String sDBName; + +protected: + const String& GetDBName() const {return sDBName;} + String& GetDBName() {return sDBName;} + + SwDBNameInfField(SwFieldType* pTyp, const String& rDBName, ULONG nFmt = 0); + +public: + // DBName + inline const String& GetRealDBName() { return sDBName; } + + String GetDBName(SwDoc* pDoc); + inline void SetDBName(const String& rDBName) { sDBName = rDBName; } + + // Name oder Inhalt + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankfeld Naechster Satz + --------------------------------------------------------------------*/ + +class SwDBNextSetFieldType : public SwFieldType +{ +public: + SwDBNextSetFieldType(); + + virtual SwFieldType* Copy() const; +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Naechsten Datensatz mit Bedingung + --------------------------------------------------------------------*/ + +class SwDBNextSetField : public SwDBNameInfField +{ + String aCond; + BOOL bCondValid; + +public: + SwDBNextSetField( SwDBNextSetFieldType*, + const String& rCond, const String& rDummy, const String& rDBName); + + virtual String Expand() const; + virtual SwField* Copy() const; + + void Evaluate(SwDoc*); + inline void SetCondValid(BOOL bCond); + inline BOOL IsCondValid() const; + + // Condition + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline BOOL SwDBNextSetField::IsCondValid() const + { return bCondValid; } + +inline void SwDBNextSetField::SetCondValid(BOOL bCond) + { bCondValid = bCond; } + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankfeld Naechster Satz + --------------------------------------------------------------------*/ + +class SwDBNumSetFieldType : public SwFieldType +{ +public: + SwDBNumSetFieldType(); + + virtual SwFieldType* Copy() const; +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Datensatz mit Nummer xxx + Die Nummer steht in nFormat + ! kleiner Missbrauch + --------------------------------------------------------------------*/ + +class SwDBNumSetField : public SwDBNameInfField +{ + String aCond; + String aPar2; + BOOL bCondValid; + +public: + SwDBNumSetField(SwDBNumSetFieldType*, const String& rCond, const String& rDBNum, const String& rDBName); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline BOOL IsCondValid() const; + inline void SetCondValid(BOOL bCond); + void Evaluate(SwDoc*); + + // Condition + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // Datensatznummer + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + // Die Datensatznummer steht in nFormat !! + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline BOOL SwDBNumSetField::IsCondValid() const + { return bCondValid; } + +inline void SwDBNumSetField::SetCondValid(BOOL bCond) + { bCondValid = bCond; } + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankname + --------------------------------------------------------------------*/ + +class SwDBNameFieldType : public SwFieldType +{ + SwDoc *pDoc; +public: + SwDBNameFieldType(SwDoc*); + + String Expand(ULONG) const; + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankfeld + --------------------------------------------------------------------*/ + +class SwDBNameField : public SwDBNameInfField +{ +public: + SwDBNameField(SwDBNameFieldType*, const String& rDBName, ULONG nFmt = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Datensatznummer + --------------------------------------------------------------------*/ + +class SwDBSetNumberFieldType : public SwFieldType +{ +public: + SwDBSetNumberFieldType(); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Datenbankfeld + --------------------------------------------------------------------*/ + +class SwDBSetNumberField : public SwDBNameInfField +{ + long nNumber; + +public: + SwDBSetNumberField(SwDBSetNumberFieldType*, const String& rDBName, ULONG nFmt = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + void Evaluate(SwDoc*); + + inline long GetSetNumber() const; + inline void SetSetNumber(long nNum); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline long SwDBSetNumberField::GetSetNumber() const + { return nNumber; } + +inline void SwDBSetNumberField::SetSetNumber(long nNum) + { nNumber = nNum; } + + +#endif // _DBFLD_HXX diff --git a/sw/inc/dbmgr.hxx b/sw/inc/dbmgr.hxx new file mode 100644 index 000000000000..07ddffd79730 --- /dev/null +++ b/sw/inc/dbmgr.hxx @@ -0,0 +1,383 @@ +/************************************************************************* + * + * $RCSfile: dbmgr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWDBMGR_HXX +#define _SWDBMGR_HXX + + +#ifndef _STRING_HXX //autogen +#include +#endif + +#ifdef REPLACE_OFADBMGR +#ifndef _SBAITEMS_HXX +#include "offmgr/sbaitems.hxx" +#endif +#ifndef _COM_SUN_STAR_UTIL_DATE_HPP_ +#include +#endif + +#else + +#ifndef _OFF_OFADBMGR_HXX //autogen +#include +#endif +#endif + +#include "swtypes.hxx" // fuer aEmptyStr + +#ifdef REPLACE_OFADBMGR +#ifndef _COM_SUN_STAR_UNO_REFERENCE_H_ +#include +#endif +#ifndef _COM_SUN_STAR_UNO_SEQUENCE_H_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_LOCALE_HPP_ +#include +#endif +namespace com{namespace sun{namespace star{ + namespace sdbc{ + class XConnection; + class XStatement; + class XDataSource; + class XResultSet; + } + namespace beans{ + + class XPropertySet; + } + namespace sdbcx{ + class XColumnsSupplier; + } + namespace util{ + class XNumberFormatter; + } +}}} + +struct SwDBFormatData +{ + com::sun::star::util::Date aNullDate; + com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatter> xFormatter; + com::sun::star::lang::Locale aLocale; +}; +#endif //REPLACE_OFADBMGR + +class SwView; +class SwWrtShell; +class SwPrtOptions; +class SfxProgress; +class ListBox; +class Button; +class SvNumberFormatter; + +// ----------------------------------------------------------------------- + +enum DBMgrOptions +{ + DBMGR_MERGE, // Datensaetze in Felder + DBMGR_INSERT, // Datensaetze in Text + DBMGR_MERGE_MAILMERGE, // Serienbriefe drucken + DBMGR_MERGE_MAILING, // Serienbriefe als email versenden + DBMGR_MERGE_MAILFILES // Serienbriefe als Datei(en) speichern +}; + +// ----------------------------------------------------------------------- + +/*-------------------------------------------------------------------- + Beschreibung: (neue) Logische Datenbanken verwalten + --------------------------------------------------------------------*/ +#ifdef REPLACE_OFADBMGR +#define SW_DB_SELECT_UNKNOWN 0 +#define SW_DB_SELECT_TABLE 1 +#define SW_DB_SELECT_QUERY 2 + +struct SwDSParam +{ + String sDataSource; + String sTableOrQuery; + BYTE nTableOrQuery; + String sStatement; + com::sun::star::util::Date aNullDate; + + ::com::sun::star::uno::Reference xFormatter; + ::com::sun::star::uno::Reference<::com::sun::star::sdbc::XConnection> xConnection; + ::com::sun::star::uno::Reference<::com::sun::star::sdbc::XStatement> xStatement; + ::com::sun::star::uno::Reference<::com::sun::star::sdbc::XResultSet> xResultSet; + + SbaSelectionListRef xSelectionList; + BOOL bScrollable; + BOOL bSelectionList; + BOOL bEndOfDB; + long nSelectionIndex; + + SwDSParam(const String& rSource, const String& rTable, BYTE nType, const String& rStatement) : + sDataSource(rSource), + sTableOrQuery(rTable), + nTableOrQuery(nType), + sStatement(rStatement), + bScrollable(FALSE), + bSelectionList(FALSE), + bEndOfDB(FALSE), + nSelectionIndex(0) + {} +}; +typedef SwDSParam* SwDSParamPtr; +SV_DECL_PTRARR_DEL(SwDSParamArr, SwDSParamPtr, 0, 5) + +#endif //REPLACE_OFADBMGR + +#ifdef REPLACE_OFADBMGR +class SwNewDBMgr +#else +class SwNewDBMgr : public OfaDBMgr +#endif +{ + SbaSelectionListRef pMergeList; // Liste der f�r Serienbrief selektierten Eintr„ge + String sEMailAddrFld; // Mailing: Spaltenname der E-Mail Adresse + String sSubject; // Mailing: Subject + String sAttached; // Mailing: Attachte Files + USHORT nMergeType; + BOOL bInitDBFields : 1; // TRUE: Datenbank an Feldern beim Mergen + BOOL bSingleJobs : 1; // Einzelne Druckjobs bei Aufruf aus Basic + BOOL bCancel : 1; // Serienbrief-Save abgebrochen + +#ifdef REPLACE_OFADBMGR + BOOL bInMerge : 1; //merge process active + SwDSParamArr aDataSourceParams; + + SwDSParam* pMergeData; + + BOOL OpenMergeSource(const String& rDataSource, + const String& rDataTableOrQuery, + const String& rStatement, + const SbaSelectionListRef xSelectionList); + SwDSParam* FindDSData(const String& rDBName, BOOL bCreate); +#endif + + + DECL_LINK( PrtCancelHdl, Button * ); + + // Datensaetze als Text ins Dokument einfuegen +#ifdef REPLACE_OFADBMGR + void ImportFromConnection( SwWrtShell* pSh); +#else + void ImportFromConnection( SwWrtShell* pSh, + const SbaSelectionList* pSelList = 0 ); +#endif + + // Einzelnen Datensatz als Text ins Dokument einfuegen +#ifdef REPLACE_OFADBMGR + void ImportDBEntry(SwWrtShell* pSh); +#else + void ImportDBEntry(SbaDBDataDef* pDef, SwWrtShell* pSh); + BOOL GotoNextSelectedRecord( BOOL bSyncronized ); +#endif + + // Mischen von Datensaetzen in Felder, dann per email versenden + BOOL MergeMailing(SwWrtShell* pSh); + // Mischen von Datensaetzen in Felder, dann als Datei abspeichern + BOOL MergeMailFiles(SwWrtShell* pSh); +public: + SwNewDBMgr(); +#ifdef REPLACE_OFADBMGR + ~SwNewDBMgr(); +#endif + // Am Dokument Datenbank- Tabellenname und SQL-Select-Statement setzen + void ChgDBName( SwWrtShell* pSh, +#ifdef REPLACE_OFADBMGR + const String& rDataSource, + const String& rTableOrQuery, +#else + const String& rDBName, +#endif + const String& rStatement ); + + // Art des aktellen Mergens. Siehe DBMgrOptions-enum + inline USHORT GetMergeType() const { return nMergeType; } + inline void SetMergeType( USHORT nTyp ) { nMergeType = nTyp; } + + // Mischen von Datensaetzen in Felder + BOOL Merge(USHORT nOpt, SwWrtShell* pSh, const String& rStatement, + const SbaSelectionListRef pSelectionList, +#ifdef REPLACE_OFADBMGR + const String& rDataSource, + const String& rTableOrQuery, +#else + const String& rDBName, +#endif + const String *pPrinter = NULL); + BOOL Merge(SwWrtShell* pSh); + // Mischen von Datensaetzen in Felder, dann drucken + BOOL MergePrint( SwView& rView, + SwPrtOptions& rOpt, SfxProgress& rProgress ); + inline SbaSelectionListRef& GetMergeList() { return pMergeList; } + + // Datenbankfelder mit fehlendem Datenbankname initialisieren + inline BOOL IsInitDBFields() const { return bInitDBFields; } + inline void SetInitDBFields(BOOL b) { bInitDBFields = b; } + + // Serienbriefe einzelnd oder alle zusammen drucken/speichern + inline BOOL IsSingleJobs() const { return bSingleJobs; } + inline void SetSingleJobs(BOOL b) { bSingleJobs = b; } + + // Mailing + // email-Daten setzen + inline void SetEMailColumn(const String& sColName) { sEMailAddrFld = sColName; } + inline void SetSubject(const String& sSbj) { sSubject = sSbj; } + inline void SetAttachment(const String& sAtt) { sAttached = sAtt; } + + +#ifdef REPLACE_OFADBMGR + // Listbox mit allen Tabellennamen einer Datenbank fuellen + BOOL GetTableNames(ListBox* pListBox, const String& rDBName ); + // Listbox mit allen Spaltennamen einer Datenbanktabelle fuellen + BOOL GetColumnNames(ListBox* pListBox, + const String& rDBName, const String& rTableName, BOOL bAppend = FALSE); + ULONG GetColumnFmt( const String& rDBName, + const String& rTableName, + const String& rColNm, + SvNumberFormatter* pNFmtr, + long nLanguage ); + sal_Int32 GetColumnType( const String& rDBName, + const String& rTableName, + const String& rColNm ); + +#else + // Listbox mit allen Tabellennamen einer Datenbank fuellen + BOOL GetTableNames(ListBox* pListBox, String sDBName); + // Listbox mit allen Spaltennamen einer Datenbanktabelle fuellen + BOOL GetColumnNames(ListBox* pListBox, String sDBName, BOOL bAppend = FALSE); + // DB-Cursor auf einen bestimmten Datensatz stellen + // (Ist im OfaDBMgr protected, daher hier nochmals als public fuer dbinsdlg.cxx) + inline void GotoRecord( ULONG nIndex ) + { OfaDBMgr::GotoRecord( FALSE, nIndex ); } + + ULONG GetColumnFmt( const String& rDBName, const String& rColNm, + SvNumberFormatter* pNFmtr ); + // Numberformat der Spalte ermitteln und ggfs. in den uebergebenen + // Formatter uebertragen + ULONG GetRealColumnFmt( const String& rColNm, ULONG nFmt, + SvNumberFormatter& rNFmtr ); + BOOL IsDBCaseSensitive( const String& rName ) const; +#endif + +#ifdef REPLACE_OFADBMGR + inline BOOL IsInMerge() const { return bInMerge; } + void EndMerge(); + + // check if a data source is open as merge source + BOOL IsDataSourceOpen(const String& rDataSource, const String& rTableOrQuery)const; + + // add data source information to the data source array - was PreInitDBData + void AddDSData(const String& rDBName, long nSelStart, long nSelEnd); + void GetDSSelection(const String& sDBDesc, long& rSelStart, long& rSelEnd); + + // open the source while fields are updated - for the calculator only! + BOOL OpenDataSource(const String& rDataSource, const String& rTableOrQuery); + sal_uInt32 GetSelectedRecordId(const String& rDataSource, const String& rTableOrQuery); + BOOL GetColumnCnt(const String& rSourceName, const String& rTableName, + const String& rColumnName, sal_uInt32 nAbsRecordId, long nLanguage, + String& rResult, double* pNumber); + + const SwDSParam* CreateDSData(const String& rDBName) + {return FindDSData(rDBName, TRUE);} + const SwDSParamArr& GetDSParamArray() const {return aDataSourceParams;} + + + //close all data sources - after fields were updated + void CloseAll(BOOL bIncludingMerge = TRUE); + + BOOL GetMergeColumnCnt(const String& rColumnName, USHORT nLanguage, + String &rResult, double *pNumber, sal_uInt32 *pFormat); + BOOL ToNextMergeRecord(); + BOOL ExistsNextRecord()const; + sal_uInt32 GetSelectedRecordId(); + sal_Bool ToRecordId(sal_Int32 nSet); + + BOOL ShowInBeamer(const String& rDBName, const String& rTableName, + BYTE nType, const String& rStatement); + + const String& GetAddressDBName(); + + static String GetDBField( + ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > xColumnProp, + const SwDBFormatData& rDBFormatData, + double *pNumber = NULL); + + static ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> + GetConnection(const String& rDataSource, + ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource>& rxSource); + + static ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XColumnsSupplier> + GetColumnSupplier(::com::sun::star::uno::Reference<::com::sun::star::sdbc::XConnection>, + const String& rTableOrQuery, + BYTE eTableOrQuery = SW_DB_SELECT_UNKNOWN); + + static ::com::sun::star::uno::Sequence GetExistingDatabaseNames(); + +#else + +#endif //REPLACE_OFADBMGR + +}; + +#endif + diff --git a/sw/inc/dcontact.hxx b/sw/inc/dcontact.hxx new file mode 100644 index 000000000000..b91a07efb6a0 --- /dev/null +++ b/sw/inc/dcontact.hxx @@ -0,0 +1,193 @@ +/************************************************************************* + * + * $RCSfile: dcontact.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DCONTACT_HXX +#define _DCONTACT_HXX + +#ifndef _SVDOBJ_HXX //autogen +#include +#endif +#include "calbck.hxx" + +class SfxPoolItem; +class SwFrmFmt; +class SwFlyFrmFmt; +class SwDrawFrmFmt; +class SwFlyFrm; +class SwFrm; +class SwPageFrm; +class SwVirtFlyDrawObj; +class SwFmtAnchor; +class SwFlyDrawObj; +class SwRect; + +//Der Umgekehrte Weg: Sucht das Format zum angegebenen Objekt. +//Wenn das Object ein SwVirtFlyDrawObj ist so wird das Format von +//selbigem besorgt. +//Anderfalls ist es eben ein einfaches Zeichenobjekt. Diese hat einen +//UserCall und der ist Client vom gesuchten Format. +//Implementierung in dcontact.cxx +SwFrmFmt *FindFrmFmt( SdrObject *pObj ); +inline const SwFrmFmt *FindFrmFmt( const SdrObject *pObj ) +{ return ::FindFrmFmt( (SdrObject*)pObj ); } + +//Bei Aenderungen das Objekt aus dem ContourCache entfernen. +//Implementierung in TxtFly.Cxx +void ClrContourCache( const SdrObject *pObj ); + +// liefert BoundRect inklusive Abstand +SwRect GetBoundRect( const SdrObject* pObj ); + +//Liefert den UserCall ggf. vom Gruppenobjekt +SdrObjUserCall* GetUserCall( const SdrObject* ); + +// liefert TRUE falls das SrdObject ein Marquee-Object (Lauftext) ist +FASTBOOL IsMarqueeTextObj( const SdrObject& rObj ); + +//Basisklasse fuer die folgenden KontaktObjekte (Rahmen+Zeichenobjekte) +class SwContact : public SdrObjUserCall, public SwClient +{ + SdrObject *pMasterObj; +public: + TYPEINFO(); + + //Fuer den Reader, es wir nur die Verbindung hergestellt. + SwContact( SwFrmFmt *pToRegisterIn, SdrObject *pObj ); + SwContact( SwModify *pToRegisterIn ) : SwClient( pToRegisterIn ){} + + const SdrObject *GetMaster() const { return pMasterObj; } + SdrObject *GetMaster() { return pMasterObj; } + void SetMaster( SdrObject* pNew ){ pMasterObj = pNew; } + + virtual ~SwContact(); + + SwFrmFmt *GetFmt(){ return (SwFrmFmt*)GetRegisteredIn(); } + const SwFrmFmt *GetFmt() const + { return (const SwFrmFmt*)GetRegisteredIn(); } +}; + +//KontactObjekt fuer die Verbindung zwischen Rahmen bzw. deren Formaten +//im StarWriter (SwClient) und den Zeichenobjekten des Drawing (SdrObjUserCall) + +class SwFlyDrawContact : public SwContact +{ +public: + TYPEINFO(); + + //Legt das DrawObjekt an und meldet es beim Model an. + SwFlyDrawContact( SwFlyFrmFmt *pToRegisterIn, SdrModel *pMod ); + SwFlyDrawContact( SwFrmFmt *pToRegisterIn, SdrObject *pObj ): + SwContact( pToRegisterIn, pObj ){} + + SwVirtFlyDrawObj *CreateNewRef( SwFlyFrm *pFly ); + + // virtuelle Methoden von SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + +}; + +//KontactObjekt fuer die Verbindung von Formaten als Repraesentanten der +//Zeichenobjekte im StarWriter (SwClient) und den Objekten selbst im Drawing +//(SdrObjUserCall). + +class SwDrawContact : public SwContact +{ + SwFrm *pAnchor; + SwPageFrm *pPage; +public: + TYPEINFO(); + + SwDrawContact( SwFrmFmt *pToRegisterIn, SdrObject *pObj ); + virtual ~SwDrawContact(); + + const SwPageFrm *GetPage() const { return pPage; } + SwPageFrm *GetPage() { return pPage; } + const SwFrm *GetAnchor() const { return pAnchor; } + SwFrm *GetAnchor() { return pAnchor; } + void ChgAnchor( SwFrm *pNew ) { pAnchor = pNew; } + void ChgPage ( SwPageFrm *pNew){ pPage = pNew; } + + void ChkPage(); //Muss immer nach SetAnchorPos() gerufen + //werden. Das Objekt haengt sich dann an + //die richtige Seite. + SwPageFrm* FindPage( const SwRect &rRect ); + + //Fuegt das SdrObject in die Arrays (SwPageFrm und SwFrm) des Layouts ein. + //Der Anker wird Anhand des Attributes SwFmtAnchor bestimmt. + //Das Objekt wird ggf. beim alten Anker abgemeldet. + void ConnectToLayout( const SwFmtAnchor *pAnch = 0 ); + void DisconnectFromLayout( BOOL bRemoveFromPage = TRUE ); //Abmelden beim Anker. + + // virtuelle Methoden von SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + + // virtuelle Methoden von SdrObjUserCall + virtual void Changed(const SdrObject& rObj, SdrUserCallType eType, const Rectangle& rOldBoundRect); + + // wird von Changed() und auch vom UndoDraw benutzt, uebernimmt + // das Notifien von Absaetzen, die ausweichen muessen + void _Changed(const SdrObject& rObj, SdrUserCallType eType, const Rectangle* pOldBoundRect); + + //Moved alle SW-Verbindungen zu dem neuen Master. + void ChangeMasterObject( SdrObject *pNewMaster ); +}; + +#endif + diff --git a/sw/inc/ddefld.hxx b/sw/inc/ddefld.hxx new file mode 100644 index 000000000000..32e48f01a814 --- /dev/null +++ b/sw/inc/ddefld.hxx @@ -0,0 +1,152 @@ +/************************************************************************* + * + * $RCSfile: ddefld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DDEFLD_HXX +#define _DDEFLD_HXX + +#ifndef _LNKBASE_HXX //autogen +#include +#endif +#include "fldbas.hxx" + +class SwDoc; + +/*-------------------------------------------------------------------- + Beschreibung: FieldType fuer DDE + --------------------------------------------------------------------*/ + +class SwDDEFieldType : public SwFieldType +{ + String aName; + String aExpansion; + + SvBaseLinkRef refLink; + SwDoc* pDoc; + + USHORT nRefCnt; + BOOL bCRLFFlag : 1; + BOOL bDeleted : 1; + + void _RefCntChgd(); +public: + SwDDEFieldType( const String& rName, const String& rCmd, + USHORT = LINKUPDATE_ONCALL ); + ~SwDDEFieldType(); + + const String& GetExpansion() const { return aExpansion; } + void SetExpansion( const String& rStr ) { aExpansion = rStr, + bCRLFFlag = FALSE; } + + virtual SwFieldType* Copy() const; + virtual const String& GetName() const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); + + String GetCmd() const; + void SetCmd( const String& rStr ); + + USHORT GetType() const { return refLink->GetUpdateMode(); } + void SetType( USHORT nType ) { refLink->SetUpdateMode( nType ); } + + BOOL IsDeleted() const { return bDeleted; } + void SetDeleted( BOOL b ) { bDeleted = b; } + + BOOL IsConnected() const { return 0 != refLink->GetObject(); } + void UpdateNow() { refLink->Update(); } + void Disconnect() { refLink->Disconnect(); } + + const SvBaseLink& GetBaseLink() const { return *refLink; } + + const SwDoc* GetDoc() const { return pDoc; } + SwDoc* GetDoc() { return pDoc; } + void SetDoc( SwDoc* pDoc ); + + void IncRefCnt() { if( !nRefCnt++ && pDoc ) _RefCntChgd(); } + void DecRefCnt() { if( !--nRefCnt && pDoc ) _RefCntChgd(); } + + void SetCRLFDelFlag( BOOL bFlag = TRUE ) { bCRLFFlag = bFlag; } + BOOL IsCRLFDelFlag() const { return bCRLFFlag; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: DDE-Feld + --------------------------------------------------------------------*/ + +class SwDDEField : public SwField +{ +public: + SwDDEField(SwDDEFieldType*); + ~SwDDEField(); + + virtual String Expand() const; + virtual SwField* Copy() const; + + // ueber Typen Parameter ermitteln + // Name kann nicht geaendert werden + virtual const String& GetPar1() const; + + // Commando + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); +}; + + +#endif // _DDEFLD_HXX diff --git a/sw/inc/dlelstnr.hxx b/sw/inc/dlelstnr.hxx new file mode 100644 index 000000000000..02f337b058f0 --- /dev/null +++ b/sw/inc/dlelstnr.hxx @@ -0,0 +1,106 @@ +/************************************************************************* + * + * $RCSfile: dlelstnr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _DLELSTNR_HXX_ +#define _DLELSTNR_HXX_ + +#include + +#ifndef _COM_SUN_STAR_LINGUISTIC_XDICTIONARYLIST_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XDICTIONARYLISTEVENTLISTENER_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE1_HXX_ +#include // helper for implementations +#endif + +/////////////////////////////////////////////////////////////////////////// +// SwDicListEvtListener +// is a ::com::sun::star::linguistic::XDictionaryListEventListener that triggers spellchecking +// and hyphenation (yet to be implemented) when relevant changes to the +// dictionaries of the dictionary list were made. +// + +class SwDicListEvtListener : public cppu::WeakImplHelper1 +< + ::com::sun::star::linguistic::XDictionaryListEventListener +> +{ +private: + ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryList > xDicList; + + // disallow use of copy-constructor and assignment operator + SwDicListEvtListener(const SwDicListEvtListener &); + SwDicListEvtListener & operator = (const SwDicListEvtListener &); + +public: + SwDicListEvtListener( const ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryList > &rxDicList ); + virtual ~SwDicListEvtListener(); + + // ::com::sun::star::linguistic::XDictionaryListEventListener + virtual void SAL_CALL processDictionaryListEvent(const ::com::sun::star::linguistic::DictionaryListEvent& aDicListEvent) throw( ::com::sun::star::uno::RuntimeException ); +}; + + +#endif + diff --git a/sw/inc/dobjfac.hxx b/sw/inc/dobjfac.hxx new file mode 100644 index 000000000000..a7af1c30c38e --- /dev/null +++ b/sw/inc/dobjfac.hxx @@ -0,0 +1,83 @@ +/************************************************************************* + * + * $RCSfile: dobjfac.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOBJFAC_HXX +#define _DOBJFAC_HXX + +#ifndef _LINK_HXX //autogen +#include +#endif + +//----------------------- +// class SwObjectFactory +//----------------------- +class SdrObjFactory; + +class SwObjectFactory +{ +public: + DECL_LINK( MakeObject, SdrObjFactory * ); +}; + +extern SwObjectFactory aSwObjectFactory; + + +#endif // _DOBJFAC_HXX + diff --git a/sw/inc/doc.hxx b/sw/inc/doc.hxx new file mode 100644 index 000000000000..d26acabd17dc --- /dev/null +++ b/sw/inc/doc.hxx @@ -0,0 +1,1770 @@ +/************************************************************************* + * + * $RCSfile: doc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOC_HXX +#define _DOC_HXX + +#define _SVSTDARR_STRINGSDTOR +#include + +#ifndef _TIMER_HXX //autogen +#include +#endif +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _NDARR_HXX +#include +#endif +#ifndef _SWATRSET_HXX +#include +#endif +#ifndef _TOXE_HXX +#include // enums +#endif +#ifndef _REDLENUM_HXX +#include // enums +#endif +#ifndef _BKMRKE_HXX +#include +#endif +#ifndef _FLYENUM_HXX +#include +#endif +#ifndef _ITABENUM_HXX +#include +#endif + +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLCHECKER1_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATEDWORD_HPP_ +#include +#endif + +class SwExtTextInput; +class DateTime; +class EditFieldInfo; +class JobSetup; +class Color; +class KeyCode; +class Outliner; +class OutputDevice; +class Point; +class SbxArray; +class SdrModel; +class SdrObject; +class SdrUndoAction; +class SfxDocumentInfo; +class SfxPrinter; +class SvData; +class SvEmbeddedObjectRef; +class SvNumberFormatter; +class SvPersist; +class SvPseudoObject; +class SvStorage; +class SvStrings; +class SvStringsSort; +class SvUShorts; +class SvUShortsSort; +class SvxAutoCorrDoc; +class SvxLinkManager; +class SvxMacro; +class SvxMacroTableDtor; +class SvxBorderLine; +class SwAutoCompleteWord; +class SwAutoCorrExceptWord; +class SwBookmark; +class SwBookmarks; +class SwCalc; +class SwCellFrm; +class SwCharFmt; +class SwCharFmts; +class SwClient; +class SwConditionTxtFmtColl; +class SwCrsrShell; +class SwCursor; +class SwDBNameInfField; +class SwDocShell; +class SwDocUpdtFld; +class SwDrawFrmFmt; +class SwDrawView; +class SwEditShell; +class SwFieldType; +class SwFldTypes; +class SwFlyFrm; +class SwFlyFrmFmt; +class SwFmt; +class SwFmtCol; +class SwFmtINetFmt; +class SwFmtRefMark; +class SwFrmFmt; +class SwFrmFmts; +class SwFtnIdxs; +class SwFtnInfo; +class SwEndNoteInfo; +class SwGrfFmtColl; +class SwGrfFmtColls; +class SwLineNumberInfo; +class SwNewDBMgr; +class SwNoTxtNode; +class SwNodeIndex; +class SwNodeRange; +class SwNumRule; +class SwNumRuleTbl; +class SwPageDesc; +class SwPosFlyFrms; +class SwPagePreViewPrtData; +class SwRedline; +class SwRedlineTbl; +class SwRootFrm; +class SwSectionFmt; +class SwSectionFmts; +class SwSelBoxes; +class SwSpzFrmFmts; +class SwTOXBase; +class SwTOXBaseSection; +class SwTOXMark; +class SwTOXMarks; +class SwTOXType; +class SwTOXTypes; +class SwTabCols; +class SwTable; +class SwTableAutoFmt; +class SwTableBox; +class SwTableBoxFmt; +class SwTableFmt; +class SwTableLineFmt; +class SwTableNode; +class SwTextBlocks; +class SwTxtFld; +class SwTxtFmtColl; +class SwTxtFmtColls; +class SwURLStateChanged; +class SwUndo; +class SwUndoIds; +class SwUndoIter; +class SwUndos; +class SwUnoCrsr; +class SwUnoCrsrTbl; +class ViewShell; +class _SetGetExpFld; +class SwDrawContact; +class SwLayouter; +class SdrView; +class SdrMarkList; +class SwAuthEntry; +class SwUnoCallBack; +struct SwCallMouseEvent; +struct SwDocStat; +struct SwHash; +struct SwSortOptions; +struct SwDefTOXBase_Impl; + +//PageDescriptor-Schnittstelle, Array hier wegen inlines. +typedef SwPageDesc* SwPageDescPtr; +SV_DECL_PTRARR_DEL( SwPageDescs, SwPageDescPtr, 4, 4 ); + +enum SwMoveFlags +{ + DOC_MOVEDEFAULT = 0x00, + DOC_MOVEALLFLYS = 0x01, + DOC_CREATEUNDOOBJ = 0x02, + DOC_MOVEREDLINES = 0x04 +}; + +#define DUMMY_PARASPACEMAX 0x04 +#define DUMMY_PARASPACEMAX_AT_PAGES 0x20 + + +#define SW_HYPH_ERROR 0 +#define SW_HYPH_OK 1 +#define SW_HYPH_ABORTED 2 +#define SW_HYPH_CONTINUE 3 + +class SwDoc +{ + friend class SwReader; // fuers Undo von Insert(SwDoc) + friend class SwSwgReader; // Zugriff auf bDtor-Flag (wg. Loeschen v.Frames) + friend class Sw3IoImp; // Zugriff u.a. auf den Drawing Layer + friend class SwCompareData; // fuers Undo vom CompareDoc + + friend void _InitCore(); + friend void _FinitCore(); + + //Fuer das Loeschen der Header-/Footer-Formate + //Implementierung und Benutzung in frmatr.cxx + friend void DelHFFormat( SwClient *, SwFrmFmt * ); + +#if !( defined(PRODUCT) || defined(MAC) || defined(PM2) ) + friend class SwUndoWriter; // fuers Schreiben der Undo/Redo-History +#endif + + //---------------- private Member -------------------------------- + + // ------------------------------------------------------------------- + // die Objecte + SwNodes aNodes; // Inhalt des Dokumentes + SwNodes aUndoNodes; // Inhalt fuer das Undo + SwAttrPool aAttrPool; // der Attribut Pool + SwPageDescs aPageDescs; // PageDescriptoren + Link aOle2Link; // OLE 2.0-Benachrichtigung + AutoTimer aIdleTimer; // der eigene IdleTimer + Timer aChartTimer; // der Timer fuers Update aller Charts + Timer aOLEModifiedTimer; // Timer for update modified OLE-Objecs + String aDBName; // logischer Datenbankname + String sSectionPasswd; // Passwort fuer geschuetzte Bereiche + String sTOIAutoMarkURL; // ::com::sun::star::util::URL of table of index AutoMark file + SvStringsDtor aPatternNms; // Array fuer die Namen der Dokument-Vorlagen + + + // ------------------------------------------------------------------- + // die Pointer + //Defaultformate + SwFrmFmt *pDfltFrmFmt; + SwFrmFmt *pEmptyPageFmt; // Format fuer die Default-Leerseite. + SwFrmFmt *pColumnContFmt; // Format fuer Spaltencontainer + SwCharFmt *pDfltCharFmt; + SwTxtFmtColl *pDfltTxtFmtColl; // Defaultformatcollections + SwGrfFmtColl *pDfltGrfFmtColl; + + SwFrmFmts *pFrmFmtTbl; // Formattabellen + SwCharFmts *pCharFmtTbl; + SwSpzFrmFmts *pSpzFrmFmtTbl; + SwSectionFmts *pSectionFmtTbl; + SwFrmFmts *pTblFrmFmtTbl; // spz. fuer Tabellen + SwTxtFmtColls *pTxtFmtCollTbl; // FormatCollections + SwGrfFmtColls *pGrfFmtCollTbl; + + SwBookmarks *pBookmarkTbl; //Bookmarks + + SwTOXTypes *pTOXTypes; // Verzeichnisse + SwDefTOXBase_Impl * pDefTOXBases; // defaults of SwTOXBase's + + SwRootFrm *pLayout; // Rootframe des spezifischen Layouts. + SdrModel *pDrawModel; // StarView Drawing + + SwUndos *pUndos; // Undo/Redo History + + SwDocUpdtFld *pUpdtFlds; // Struktur zum Field-Update + SwFldTypes *pFldTypes; // Feldtypen + SwNewDBMgr *pNewDBMgr; // Pointer auf den neuen DBMgr fuer + // Evaluierung der DB-Fields + SfxPrinter *pPrt; + + SwDoc *pGlossaryDoc; // Pointer auf das Glossary-Dokument. Dieses + + SwNumRule *pOutlineRule; + SwFtnInfo *pFtnInfo; + SwEndNoteInfo *pEndNoteInfo; + SwLineNumberInfo *pLineNumberInfo; + SwFtnIdxs *pFtnIdxs; + SwDocStat *pDocStat; // Statistic Informationen + SfxDocumentInfo *pSwgInfo; // Dokumentinformationen + SvxMacroTableDtor *pMacroTable; // Tabelle der dokumentglobalen Macros + + SwDocShell *pDocShell; // Ptr auf die SfxDocShell vom Doc + SvEmbeddedObjectRef* pDocShRef; // fuers Kopieren von OLE-Nodes (wenn keine + // DocShell gesetzt ist, muss dieser + // Ref-Pointer gesetzt sein!!!!) + SvxLinkManager *pLinkMgr; // Liste von Verknuepften (Grafiken/DDE/OLE) + + SwAutoCorrExceptWord *pACEWord; // fuer die automatische Uebernahme von + // autokorrigierten Woertern, die "zurueck" + // verbessert werden + SwURLStateChanged *pURLStateChgd; // SfxClient fuer Aenderungen in der + // INetHistory + SvNumberFormatter *pNumberFormatter; // NumFormatter fuer die Tabellen/Felder + SwNumRuleTbl *pNumRuleTbl; // Liste aller benannten NumRules + SwRedlineTbl *pRedlineTbl; // Liste aller Redlines + String *pAutoFmtRedlnComment; // Kommentar fuer Redlines, die + // uebers Autoformat eingefuegt werden + SwUnoCrsrTbl *pUnoCrsrTbl; + + SwPagePreViewPrtData *pPgPViewPrtData; // Einzuege/Abstaende fuers + // Drucken der Seitenansicht + SwPaM *pExtInputRing; + + SwLayouter *pLayouter; // ::com::sun::star::frame::Controller for complex layout formatting + // like footnote/endnote in sections + + SwUnoCallBack *pUnoCallBack; + // ------------------------------------------------------------------- + // sonstige + sal_uInt16 nUndoPos; // akt. Undo-InsertPosition (fuers Redo!) + sal_uInt16 nUndoSavePos; // Position im Undo-Array, ab der das Doc + // nicht als modifiziert gilt + sal_uInt16 nUndoCnt; // Anzahl von Undo Aktionen + sal_uInt16 nUndoSttEnd; // != 0 -> innerhalb einer Klammerung + + sal_uInt16 nAutoFmtRedlnCommentNo; // SeqNo fuers UI-seitige zusammenfassen + // von AutoFmt-Redlines. Wird vom SwAutoFmt + // verwaltet! + sal_uInt16 nLinkUpdMode; // UpdateMode fuer Links + sal_uInt16 nFldUpdMode; // Mode fuer Felder/Charts automatisch aktualisieren + + SwRedlineMode eRedlineMode; // aktueller Redline Modus + + sal_Int8 nLinkCt; // wieviele kennen das Dokument + sal_Int8 nLockExpFld; // Wenn != 0 hat UpdateExpFlds() keine Wirkung + + sal_Int8 nHeaven; // LayerIds, Heaven == ueber dem Dokument + sal_Int8 nHell; // Hell == unter dem Dokument + sal_Int8 nControls; // Controls == ganz oben + + sal_Bool bGlossDoc : 1; //TRUE: ist ein Textbaustein Dokument + sal_Bool bModified : 1; //TRUE: Dokument ist veraendert + sal_Bool bDtor : 1; //TRUE: ist im SwDoc DTOR + // leider auch temporaer von + // SwSwgReader::InLayout(), wenn fehlerhafte + //Frames geloescht werden muessen + sal_Bool bUndo : 1; // TRUE: Undo eingeschaltet + sal_Bool bGroupUndo : 1; // TRUE: Undos werden gruppiert + sal_Bool bPageNums : 1; // TRUE: es gibt virtuelle Seitennummern + sal_Bool bLoaded : 1; // TRUE: ein geladenes Doc + sal_Bool bUpdateExpFld : 1; // TRUE: Expression-Felder updaten + sal_Bool bNewDoc : 1; // TRUE: neues Doc + sal_Bool bNewFldLst : 1; // TRUE: Felder-Liste neu aufbauen + sal_Bool bCopyIsMove : 1; // TRUE: Copy ist ein verstecktes Move + sal_Bool bNoDrawUndoObj : 1; // TRUE: keine DrawUndoObjecte speichern + sal_Bool bVisibleLinks : 1; // TRUE: Links werden sichtbar eingefuegt + sal_Bool bBrowseMode : 1; // TRUE: Dokument im BrowseModus anzeigen + sal_Bool bInReading : 1; // TRUE: Dokument wird gerade gelesen + sal_Bool bUpdateTOX : 1; // TRUE: nach Dokument laden die TOX Updaten + sal_Bool bInLoadAsynchron: 1; // TRUE: Dokument wird gerade asynchron geladen + sal_Bool bHTMLMode : 1; // TRUE: Dokument ist im HTMLMode + sal_Bool bHeadInBrowse : 1; // TRUE: Header sind im BrowseMode aktiviert + sal_Bool bFootInBrowse : 1; // TRUE: Footer sind im BrowseMode aktiviert + sal_Bool bFrmBeepEnabled : 1; // TRUE: Frames beepen wenn der Inhalt zu gross wird + sal_Bool bInCallModified : 1; // TRUE: im Set/Reset-Modified Link + sal_Bool bIsGlobalDoc : 1; // TRUE: es ist ein GlobalDokument + sal_Bool bGlblDocSaveLinks : 1; // TRUE: im GlobalDoc. gelinkte Sect. mit speichern + sal_Bool bIsLabelDoc : 1; // TRUE: es ist ein Etiketten-Dokument + sal_Bool bIsAutoFmtRedline : 1; // TRUE: die Redlines werden vom Autoformat aufgezeichnet + sal_Bool bOLEPrtNotifyPending:1; // TRUE: Printer ist geaendert und beim + // Erzeugen der ::com::sun::star::sdbcx::View ist eine Benachrichtigung + // der OLE-Objekte PrtOLENotify() notwendig. + sal_Bool bAllOLENotify :1; // True: Benachrichtigung aller Objekte ist notwendig + sal_Bool bIsRedlineMove : 1; // True: die Redlines werden in/aus der Section verschoben + sal_Bool bInsOnlyTxtGlssry : 1; // True: insert 'only text' glossary into doc + sal_Bool bContains_MSVBasic : 1; // True: MS-VBasic exist is in our storage + sal_Bool bPurgeOLE : 1; // TRUE: Purge OLE-Objects + + // ------------------------------------------------------------------- + // static - Members + static SvStringsDtor *pTextNmArray, // Array fuer alle + *pListsNmArray, // Pool-Vorlagen-Namen + *pExtraNmArray, + *pRegisterNmArray, + *pDocNmArray, + *pHTMLNmArray; + static SvStringsDtor *pFrmFmtNmArray, + *pChrFmtNmArray, + *pHTMLChrFmtNmArray; + static SvStringsDtor *pPageDescNmArray; + static SvStringsDtor *pNumRuleNmArray; + + static SwAutoCompleteWord *pACmpltWords; // Liste aller Worte fuers AutoComplete + static sal_uInt16 nUndoActions; // anzahl von Undo ::com::sun::star::chaos::Action + + // ------------------------------------------------------------------- + // Dummies Members fuers FileFormat + String sDummy1; // Dummy-Member. + String sDummy2; + sal_uInt32 n32Dummy1; + sal_uInt32 n32Dummy2; + sal_Int8 n8Dummy1; + sal_Int8 n8Dummy2; + + + //---------------- private Methoden ------------------------------ + + void AppendUndo(SwUndo*); // interne Verkuerzung fuer Insert am Ende + void ClearRedo(); // loescht alle UndoObjecte von nUndoPos + // bis zum Ende des Undo-Arrays + sal_Bool DelUndoObj( sal_uInt16 nEnde ); // loescht alle UndoObjecte vom Anfang + // bis zum angegebenen Ende + DECL_LINK( AddDrawUndo, SdrUndoAction * ); + // DrawModel + void DrawNotifyUndoHdl(); // wegen CLOOKs + void DrawSetRefDevice(); // wegen CLOOKs + + // nur fuer den internen Gebrauch deshalb privat. + // Kopieren eines Bereiches im oder in ein anderes Dokument ! + // Die Position darf nicht im Bereich liegen !! + sal_Bool _Copy( SwPaM&, SwPosition&, + sal_Bool MakeNewFrms = sal_True, SwPaM* pCpyRng = 0 ) const; // in ndcopy.cxx + + SwFlyFrmFmt* _MakeFlySection( const SwPosition& rAnchPos, + const SwCntntNode& rNode, RndStdIds eRequestId, + const SfxItemSet* pFlyAttrSet, + SwFrmFmt* = 0 ); + + SwFlyFrmFmt* _InsNoTxtNode( const SwPosition&rPos, SwNoTxtNode*, + const SfxItemSet* pFlyAttrSet, + const SfxItemSet* pGrfAttrSet, + SwFrmFmt* = 0 ); + + void _CopyFlyInFly( const SwNodeRange& rRg, const SwNodeIndex& rSttIdx, + sal_Bool bCopyFlyAtFly = sal_False ) const; // steht im ndcopy.cxx + sal_Bool SetFlyFrmAnchor( SwFrmFmt& rFlyFmt, SfxItemSet& rSet, sal_Bool bNewFrms ); + + typedef SwFmt* (SwDoc:: *FNCopyFmt)( const String&, SwFmt* ); + SwFmt* CopyFmt( const SwFmt& rFmt, const SvPtrarr& rFmtArr, + FNCopyFmt fnCopyFmt, const SwFmt& rDfltFmt ); + void CopyFmtArr( const SvPtrarr& rSourceArr, SvPtrarr& rDestArr, + FNCopyFmt fnCopyFmt, SwFmt& rDfltFmt ); + void _CopyPageDescHeaderFooter( sal_Bool bCpyHeader, + const SwFrmFmt& rSrcFmt, SwFrmFmt& rDestFmt ); + SwFmt* FindFmtByName( const SvPtrarr& rFmtArr, + const String& rName ) const; + SfxPrinter* _GetPrt() const; + void PrtDataChanged(); //Printer oder JobSetup geandert, es muss + //fuer entsprechende Invalidierungen und + //Benachrichtigungen gesorgt werden. + + static SvStringsDtor* NewNmArray( SvStringsDtor*&, sal_uInt16 nStt, sal_uInt16 nEnd ); + SvStringsDtor* NewTextNmArray() const; + SvStringsDtor* NewListsNmArray() const; + SvStringsDtor* NewExtraNmArray() const; + SvStringsDtor* NewRegisterNmArray() const; + SvStringsDtor* NewDocNmArray() const; + SvStringsDtor* NewHTMLNmArray() const; + SvStringsDtor* NewFrmFmtNmArray() const; + SvStringsDtor* NewChrFmtNmArray() const; + SvStringsDtor* NewHTMLChrFmtNmArray() const; + SvStringsDtor* NewPageDescNmArray() const; + SvStringsDtor* NewNumRuleNmArray() const; + + + // gcc: aFtnInfo::CopyCtor ist private, also muessen wir uns auch schuetzen + SwDoc( const SwDoc &); + + //wird nur von SwSwgReader::InlayoutFrames() verwendet! + inline void SetInDtor( sal_Bool b ) { bDtor = b; } + + // fuer Felder: + void _InitFieldTypes(); // wird vom CTOR gerufen!! + void _MakeFldList( int eMode ); + void RenameUserFld( const String& rOldName, const String& rNewName, + String& rFormel ); + // Datenbankfelder: + void UpdateDBNumFlds( SwDBNameInfField& rDBFld, SwCalc& rCalc ); + void AddUsedDBToList( SvStringsDtor& rDBNameList, + const SvStringsDtor& rUsedDBNames ); + void AddUsedDBToList( SvStringsDtor& rDBNameList, const String& rDBName ); + sal_Bool IsNameInArray( const SvStringsDtor& rOldNames, const String& rName ); + void GetAllDBNames( SvStringsDtor& rAllDBNames ); + void ReplaceUsedDBs( const SvStringsDtor& rUsedDBNames, + const String& rNewName, String& rFormel ); + SvStringsDtor& FindUsedDBs( const SvStringsDtor& rAllDBNames, + const String& rFormel, + SvStringsDtor& rUsedDBNames ); + + void InitDrawModel(); + void ReleaseDrawModel(); + + void _CreateNumberFormatter(); + + sal_Bool _UnProtectTblCells( SwTable& rTbl ); + + // erzeuge Anhand der vorgebenen Collection Teildokumente + // falls keine angegeben ist, nehme die Kapitelvorlage der 1. Ebene + sal_Bool SplitDoc( sal_uInt16 eDocType, const String& rPath, + const SwTxtFmtColl* pSplitColl ); + + // Charts der angegebenen Tabelle updaten + void _UpdateCharts( const SwTable& rTbl, ViewShell& rVSh ) const; + + // unser eigener 'IdlTimer' ruft folgende Methode + DECL_LINK( DoIdleJobs, Timer * ); + // der CharTimer ruft diese Methode + DECL_LINK( DoUpdateAllCharts, Timer * ); + DECL_LINK( DoUpdateModifiedOLE, Timer * ); + +public: + SwDoc(); + ~SwDoc(); + + SwNodes& GetNodes() { return aNodes; } + const SwNodes& GetNodes() const { return aNodes; } + + DECL_STATIC_LINK( SwDoc, BackgroundDone, SvxBrushItem *); + DECL_LINK(CalcFieldValueHdl, EditFieldInfo*); + + // Links un-/sichtbar in LinkManager einfuegen (gelinkte Bereiche) + sal_Bool IsVisibleLinks() const { return bVisibleLinks; } + void SetVisibleLinks( sal_Bool bFlag ) { bVisibleLinks = bFlag; } + + SvxLinkManager& GetLinkManager() { return *pLinkMgr; } + const SvxLinkManager& GetLinkManager() const { return *pLinkMgr; } + + // erfrage das spezifische Layout + const SwRootFrm* GetRootFrm() const { return pLayout; } + SwRootFrm* GetRootFrm() { return pLayout; } + // der alte muss !! von der Shell geloescht werden !! + void SetRootFrm( SwRootFrm* pNew ) { pLayout = pNew; } + + void StartIdleTimer() { aIdleTimer.Start(); } + void StopIdleTimer() { aIdleTimer.Stop(); } + sal_Bool IsIdleTimerActive() const { return aIdleTimer.IsActive(); } + + sal_Bool IsOLEPrtNotifyPending() const { return bOLEPrtNotifyPending; } + void SetOLEPrtNotifyPending() { bOLEPrtNotifyPending = sal_True; } + void PrtOLENotify( sal_Bool bAll ); //Alle oder nur Markierte + + sal_Bool IsPurgeOLE() const { return bPurgeOLE; } + void SetPurgeOLE( sal_Bool bFlag ) { bPurgeOLE = bFlag; } + + // das Dokument im Browse-Modus anzeigen + void SetBrowseMode( sal_Bool bFlag = sal_True ) { bBrowseMode = bFlag; } + sal_Bool IsBrowseMode() const { return bBrowseMode; } + void SetHTMLMode( sal_Bool bFlag = sal_True ) { bHTMLMode = bFlag; } + sal_Bool IsHTMLMode() const { return bHTMLMode; } + void SetHeadInBrowse( sal_Bool bFlag = sal_True ) { bHeadInBrowse = bFlag; } + sal_Bool IsHeadInBrowse() const { return bHeadInBrowse; } + void SetFootInBrowse( sal_Bool bFlag = sal_True ) { bFootInBrowse = bFlag; } + sal_Bool IsFootInBrowse() const { return bFootInBrowse; } + void SetFrmBeepEnabled( sal_Bool bFlag = sal_True ) { bFrmBeepEnabled = bFlag; } + sal_Bool IsFrmBeepEnabled() const { return bFrmBeepEnabled; } + + void SetGlobalDoc( sal_Bool bFlag = sal_True ) { bIsGlobalDoc = bFlag; } + sal_Bool IsGlobalDoc() const { return bIsGlobalDoc; } + void SetGlblDocSaveLinks( sal_Bool bFlag=sal_True ) { bGlblDocSaveLinks = bFlag; } + sal_Bool IsGlblDocSaveLinks() const { return bGlblDocSaveLinks; } + + void SetLabelDoc( sal_Bool bFlag = sal_True ) { bIsLabelDoc = bFlag; } + sal_Bool IsLabelDoc() const { return bIsLabelDoc; } + + sal_uInt16 GetLinkUpdMode() const; + void SetLinkUpdMode( sal_uInt16 nMode ) { nLinkUpdMode = nMode; } + // nur fuer den Writer, weil dieser das richtige Enum schreiben muss! + sal_uInt16 _GetLinkUpdMode() const { return nLinkUpdMode; } + + inline sal_Bool IsInDtor() const { return bDtor; } + + // SS fuer das Drawing, Model und LayerId's + const SdrModel* GetDrawModel() const { return pDrawModel; } + SdrModel* GetDrawModel() { return pDrawModel; } + sal_Int8 GetHeavenId() const { return nHeaven; } + sal_Int8 GetHellId() const { return nHell; } + sal_Int8 GetControlsId() const { return nControls; } + + // liefert zu allen fliegenden Rahmen die Position im Dokument. + // Wird ein Pam-Pointer uebergeben, muessen die absatzgebundenen + // FlyFrames von der ::com::sun::star::awt::Selection vollstaendig umschlossen sein + // ( Start < Pos < End ) !!! + // (wird fuer die Writer benoetigt) + void GetAllFlyFmts( SwPosFlyFrms& rPosFlyFmts, const SwPaM* = 0, + sal_Bool bDrawAlso = sal_False ) const; + + // dokumentglobale Macros + sal_Bool HasGlobalMacro(sal_uInt16 nEvent) const; + const SvxMacro& GetGlobalMacro(sal_uInt16 nEvent) const; + void SetGlobalMacro(sal_uInt16 nEvent, const SvxMacro&); + sal_Bool DelGlobalMacro(sal_uInt16 nEvent); + const SvxMacroTableDtor& GetMacroTable() const { return *pMacroTable; } + + // Fussnoten Informationen + const SwFtnInfo& GetFtnInfo() const { return *pFtnInfo; } + void SetFtnInfo(const SwFtnInfo& rInfo); + const SwEndNoteInfo& GetEndNoteInfo() const { return *pEndNoteInfo; } + void SetEndNoteInfo(const SwEndNoteInfo& rInfo); + + // Zeilennummerierung + const SwLineNumberInfo& GetLineNumberInfo() const { return *pLineNumberInfo; } + void SetLineNumberInfo(const SwLineNumberInfo& rInfo); + + SwFtnIdxs& GetFtnIdxs() { return *pFtnIdxs; } + const SwFtnIdxs& GetFtnIdxs() const { return *pFtnIdxs; } + // Fussnoten im Bereich aendern + sal_Bool SetCurFtn( const SwPaM& rPam, const String& rNumStr, + sal_uInt16 nNumber, sal_Bool bIsEndNote ); + + // wegen swrtf.cxx und define private public, jetzt hier + SwFlyFrmFmt *MakeFlyFrmFmt (const String &rFmtName, SwFrmFmt *pDerivedFrom); + SwDrawFrmFmt *MakeDrawFrmFmt(const String &rFmtName, SwFrmFmt *pDerivedFrom); + + SwLayouter* GetLayouter() { return pLayouter; } + const SwLayouter* GetLayouter() const { return pLayouter; } + void SetLayouter( SwLayouter* pNew ) { pLayouter = pNew; } + + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > + Spell(SwPaM&, ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > &, + sal_uInt16* pPageCnt, sal_uInt16* pPageSt ) const; + ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XHyphenatedWord > + Hyphenate( SwPaM *pPam, const Point &rCrsrPos, + sal_uInt16* pPageCnt, sal_uInt16* pPageSt ); + + const SwBookmarks& GetBookmarks() const { return *pBookmarkTbl; } + SwBookmark* MakeBookmark( const SwPaM& rPaM, const KeyCode&, + const String& rName, const String& rShortName, BOOKMARK_TYPE eMark = BOOKMARK); + void DelBookmark( sal_uInt16 nPos ); + void DelBookmark( const String& rName ); + sal_uInt16 FindBookmark( const String& rName ); + // erzeugt einen eindeutigen Namen. Der Name selbst muss vorgegeben + // werden, es wird dann bei gleichen Namen nur durchnumeriert. + void MakeUniqueBookmarkName( String& rNm ); + // Anzahl der ::com::sun::star::text::Bookmarks, gfs. nur "echte" + sal_uInt16 GetBookmarkCnt(sal_Bool bBkmrk = sal_False) const; + SwBookmark& GetBookmark( sal_uInt16, sal_Bool bBkmrk = sal_False); + + // Textbaustein Dokument? + void SetGlossDoc( sal_Bool bGlssDc = sal_True ) { bGlossDoc = bGlssDc; } + sal_Bool IsGlossDoc() const { return bGlossDoc; } + sal_Bool IsInsOnlyTextGlossary() const { return bInsOnlyTxtGlssry; } + + //Bei Formataenderungen muss das zu Fuss gerufen werden! + void SetModified(); + void ResetModified(); + sal_Bool IsModified() const { return bModified; } //Dokumentaenderungen? + + sal_Bool IsInCallModified() const { return bInCallModified; } + void SetUndoNoResetModified() { nUndoSavePos = USHRT_MAX; } + sal_Bool IsUndoNoResetModified() const { return USHRT_MAX == nUndoSavePos; } + + //Die neuen (hoffentlich bestaendigen) Schnittstellen fuer alles, + //was mit dem Layout zu tun hat. + SwFrmFmt *MakeLayoutFmt( RndStdIds eRequest, + SwFrmFmt* = 0, + const SfxItemSet* pSet = 0 ); + // JP 08.05.98: fuer Flys muss jetzt diese Schnittstelle benutzt + // werden. pAnchorPos muss gesetzt sein, wenn keine + // Seitenbindung vorliegt UND der ::com::sun::star::chaos::Anchor nicht schon + // im FlySet/FrmFmt mit gueltiger CntntPos gesetzt ist + SwFlyFrmFmt* MakeFlySection( RndStdIds eAnchorType, + const SwPosition* pAnchorPos, + const SfxItemSet* pSet = 0, + SwFrmFmt *pParent = 0 ); + SwFlyFrmFmt* MakeFlyAndMove( const SwPaM& rPam, const SfxItemSet& rSet, + const SwSelBoxes* pSelBoxes = 0, + SwFrmFmt *pParent = 0 ); + + void DelLayoutFmt( SwFrmFmt *pFmt ); + SwFrmFmt *CopyLayoutFmt( const SwFrmFmt& rSrc, + const SwFmtAnchor& rNewAnchor, + sal_Bool bSetTxtFlyAtt = sal_True, sal_Bool bMakeFrms = sal_True ); + void CopyWithFlyInFly( const SwNodeRange& rRg, + const SwNodeIndex& rInsPos, + sal_Bool bMakeNewFrms = sal_True, + sal_Bool bDelRedlines = sal_True, + sal_Bool bCopyFlyAtFly = sal_False ) const; + sal_Bool IsInHeaderFooter( const SwNodeIndex& rIdx ) const; + + sal_Bool SetFlyFrmAttr( SwFrmFmt& rFlyFmt, SfxItemSet& rSet ); + sal_Bool SetFrmFmtToFly( SwFrmFmt& rFlyFmt, SwFrmFmt& rNewFmt, + SfxItemSet* pSet = 0, sal_Bool bKeepOrient = sal_False ); + + // Abstakt fuellen + void Summary( SwDoc* pExtDoc, sal_uInt8 nLevel, sal_uInt8 nPara, sal_Bool bImpress ); + + /* Verwaltet SwDoc::nLinkCt, sollte (paarig!) von allen benutzt werden, + * die einen Pointer auf dieses Dokument halten, denn wenn Remove() 0 + * liefert, wird das Dokument zerstoert! Oder anders: Jeder bei dem + * Remove() 0 liefert, muss das Dokument zerstoeren. + */ + sal_Int8 AddLink() { return nLinkCt++; } + sal_Int8 RemoveLink() { return nLinkCt ? --nLinkCt : nLinkCt; } + sal_Int8 GetLinkCnt() const { return nLinkCt; } + + // UndoHistory am Dokument pflegen + // bei Save, SaveAs, Create wird UndoHistory zurueckgesetzt ??? + void DoUndo(sal_Bool bUn = sal_True) { bUndo = bUn; } + sal_Bool DoesUndo() const { return bUndo; } + // Zusammenfassen von Kontinuierlichen Insert/Delete/Overwrite von + // Charaktern. Default ist ::com::sun::star::sdbcx::Group-Undo. + void DoGroupUndo(sal_Bool bUn = sal_True) { bGroupUndo = bUn; } + sal_Bool DoesGroupUndo() const { return bGroupUndo; } + + // macht rueckgaengig: + // 0 letzte Aktion, sonst Aktionen bis zum Start der Klammerung nUndoId + // In rUndoRange wird der restaurierte Bereich gesetzt. + sal_Bool Undo( SwUndoIter& ); + // setzt Undoklammerung auf, nUndoId kommt von der UI-Seite + sal_uInt16 StartUndo( sal_uInt16 nUndoId = 0 ); + // schliesst Klammerung der nUndoId + sal_uInt16 EndUndo( sal_uInt16 nUndoId = 0 ); + // loescht die gesamten UndoObjecte ( fuer Methoden die am Nodes + // Array drehen ohne entsprechendes Undo !!) + void DelAllUndoObj(); + // liefert die Id der letzten undofaehigen Aktion zurueck + // oder USHRT_MAX + // fuellt ggf. VARARR mit ::com::sun::star::sdbcx::User-UndoIds + sal_uInt16 GetUndoIds( String* pStr = 0, SwUndoIds *pUndoIds = 0) const; + // gibt es Klammerung mit der Id? + sal_Bool HasUndoId(sal_uInt16 nId) const; + // die drei folgenden Methoden werden beim Undo und nur dort + // benoetigt. Sollten sonst nicht aufgerufen werden. + const SwNodes* GetUndoNds() const { return &aUndoNodes; } + + // bei einstufigem Undo muss die History und das Undo-Array geloescht + // werden. Dabei ist aber zu beachten, das nur vollstaendige Gruppen + // geloescht werden koennen. + // Sind beide FLAGS auf sal_False, kann erfragt werden, ob sich in der + // History eine offene Gruppe befindet. ( return = sal_True ) + // bDelHisory = sal_True: loesche die Undo-History + // bDelUndoNds = sal_True: loesche das Undo-Nodes-Arary + sal_Bool DelUndoGroups( sal_Bool bDelUndoNds=sal_True, sal_Bool bDelHistory=sal_True ); + SwUndo* RemoveLastUndo( sal_uInt16 nUndoId ); + + // abfragen/setzen der Anzahl von wiederherstellbaren Undo-Actions + static sal_uInt16 GetUndoActionCount() { return nUndoActions; } + static void SetUndoActionCount( sal_uInt16 nNew ) { nUndoActions = nNew; } + + // Redo + // wiederholt + sal_Bool Redo( SwUndoIter& ); + // liefert die Id der letzten Redofaehigen Aktion zurueck + // fuellt ggf. VARARR mit RedoIds + sal_uInt16 GetRedoIds( String* pStr = 0, SwUndoIds *pRedoIds = 0) const; + + // Repeat + // wiederholt + sal_Bool Repeat( SwUndoIter&, sal_uInt16 nRepeatCnt = 1 ); + // liefert die Id der letzten Repeatfaehigen Aktion zurueck + // fuellt ggf. VARARR mit RedoIds + sal_uInt16 GetRepeatIds( String* pStr = 0, SwUndoIds *pRedoIds = 0) const; + + /* Felder */ + const SwFldTypes *GetFldTypes() const { return pFldTypes; } + SwFieldType *InsertFldType(const SwFieldType &); + SwFieldType *GetSysFldType( const sal_uInt16 eWhich ) const; + SwFieldType* GetFldType(sal_uInt16 nResId, const String& rName) const; + void RemoveFldType(sal_uInt16 nFld); + void UpdateFlds( SfxPoolItem* pNewHt = 0, sal_Bool bCloseDB = sal_False ); + void InsDeletedFldType( SwFieldType & ); + sal_Bool RenameUserFields(const String& rOldName, const String& rNewName); + + // rufe das Update der Expression Felder auf; alle Ausdruecke werden + // neu berechnet. + void UpdateRefFlds( SfxPoolItem* pHt = 0); + void UpdateTblFlds( SfxPoolItem* pHt = 0); + void UpdateExpFlds( SwTxtFld* pFld = 0, sal_Bool bUpdateRefFlds = sal_True ); + void UpdateUsrFlds(); + void UpdatePageFlds( SfxPoolItem* ); + void LockExpFlds() { ++nLockExpFld; } + void UnlockExpFlds() { if( nLockExpFld ) --nLockExpFld; } + sal_Bool IsExpFldsLocked() const { return 0 != nLockExpFld; } + SwDocUpdtFld& GetUpdtFlds() const { return *pUpdtFlds; } + sal_Bool SetFieldsDirty( sal_Bool b, const SwNode* pChk = 0, sal_uInt32 nLen = 0 ); + + void SetFixFields( sal_Bool bOnlyTimeDate = sal_False, + const DateTime* pNewDateTime = 0 ); + + sal_uInt16 GetFldUpdateFlags() const; + void SetFldUpdateFlags( sal_uInt16 eMode ) { nFldUpdMode = eMode; } + // nur fuer den Writer, weil dieser das richtige Enum schreiben muss! + sal_uInt16 _GetFldUpdateFlags() const { return nFldUpdMode; } + + void ChangeAuthorityData(const SwAuthEntry* pNewData); + + // Zustaende ueber Ladezustand + // frueher DocInfo + // + sal_Bool IsPageNums() const { return bPageNums; } + sal_Bool IsLoaded() const { return bLoaded; } + sal_Bool IsUpdateExpFld() const { return bUpdateExpFld; } + sal_Bool IsNewDoc() const { return bNewDoc; } + + void SetPageNums(sal_Bool b = sal_True) { bPageNums = b; } + void SetNewDoc(sal_Bool b = sal_True) { bNewDoc = b; } + void SetUpdateExpFldStat(sal_Bool b = sal_True) { bUpdateExpFld = b; } + void SetLoaded(sal_Bool b = sal_True) { bLoaded = b; } + + // Setze im Calculator alle SetExpresion Felder, die bis zur + // angegebenen Position (Node [ + ::com::sun::star::ucb::Content]) gueltig sind. Es kann + // eine erzeugte Liste aller Felder mit uebergegeben werden. + // (ist die Adresse != 0, und der Pointer == 0 wird eine neue + // Liste returnt.) + void FldsToCalc( SwCalc& rCalc, sal_uInt32 nLastNd = ULONG_MAX, + sal_uInt16 nLastCntnt = USHRT_MAX ); + void FldsToCalc( SwCalc& rCalc, const _SetGetExpFld& rToThisFld ); + void FldsToExpand( SwHash**& ppTbl, sal_uInt16& rTblSize, + const _SetGetExpFld& rToThisFld ); + sal_Bool IsNewFldLst() const { return bNewFldLst; } + void SetNewFldLst( sal_Bool bFlag = sal_True ) { bNewFldLst = bFlag; } + void InsDelFldInFldLst( sal_Bool bIns, const SwTxtFld& rFld ); + + /* Datenbank && DB-Manager */ + void SetNewDBMgr( SwNewDBMgr* pNewMgr ) { pNewDBMgr = pNewMgr; } + SwNewDBMgr* GetNewDBMgr() const { return pNewDBMgr; } + void ChangeDBFields( const SvStringsDtor& rOldNames, + const String& rNewName ); + void SetInitDBFields(sal_Bool b); + // Von Feldern verwendete Datenbanken herausfinden + void GetAllUsedDB( SvStringsDtor& rDBNameList, + const SvStringsDtor* pAllDBNames = 0 ); + + void ChgDBName( const String& rNewName ); + String GetDBName(); + const String& GetDBDesc(); + const String& _GetDBDesc() const { return aDBName; } + + + // Kopieren eines Bereiches im oder in ein anderes Dokument ! + // Die Position kann auch im Bereich liegen !! + sal_Bool Copy( SwPaM&, SwPosition& ) const; // in ndcopy.cxx + + // Loesche die Section, in der der Node steht. + void DeleteSection( SwNode *pNode ); + + sal_Bool Delete( SwPaM& ); //loeschen eines Bereiches + sal_Bool DelFullPara( SwPaM& ); //loeschen gesamter Absaetze + sal_Bool DeleteAndJoin( SwPaM& ); //komplett loeschen eines Bereiches + + sal_Bool Move( SwPaM&, SwPosition&, SwMoveFlags = DOC_MOVEDEFAULT ); //verschieben eines Bereiches + sal_Bool Move( SwNodeRange&, SwNodeIndex&, + SwMoveFlags = DOC_MOVEDEFAULT ); // verschieben ganzer Nodes + sal_Bool MoveAndJoin( SwPaM&, SwPosition&, SwMoveFlags = DOC_MOVEDEFAULT ); //verschieben eines Bereiches + //Ueberschreiben eines einzelnen Zeichens. rRg.Start() bezeichnet + //den Node und die Position in dem Node, an der eingefuegt wird, + sal_Bool Overwrite( const SwPaM &rRg, sal_Unicode c ); + //Ueberschreiben eines Strings in einem bestehenden Textnode. + sal_Bool Overwrite(const SwPaM &rRg, const String& rStr ); + //Einfuegen eines einzelnen Zeichens. rRg.Start() bezeichnet + //den Node und die Position in dem Node, an der eingefuegt wird. + sal_Bool Insert(const SwPaM &rRg, sal_Unicode c ); + //Einfuegen eines Strings in einen bestehenden + //Textnode. Der Text wird kopiert. + sal_Bool Insert( const SwPaM &rRg, const String &, + sal_Bool bHintExpand = sal_True ); + + //Einfuegen einer Grafik, Formel. Die XXXX werden kopiert. + SwFlyFrmFmt* Insert(const SwPaM &rRg, + const String& rGrfName, + const String& rFltName, + const Graphic* pGraphic = 0, + const SfxItemSet* pFlyAttrSet = 0, + const SfxItemSet* pGrfAttrSet = 0, + SwFrmFmt* = 0 ); + // austauschen einer Grafik (mit Undo) + void ReRead( SwPaM&, const String& rGrfName, const String& rFltName, + const Graphic* pGraphic ); + + //Einfuegen eines DrawObjectes. Das Object muss bereits im DrawModel + // angemeldet sein. + SwDrawFrmFmt* Insert( const SwPaM &rRg, + SdrObject& rDrawObj, + const SfxItemSet* pFlyAttrSet = 0, + SwFrmFmt* = 0 ); + String GetUniqueGrfName() const; + + //Einfuegen von OLE-Objecten. + SwFlyFrmFmt* Insert( const SwPaM &rRg, SvInPlaceObject *, + const SfxItemSet* pFlyAttrSet = 0, + const SfxItemSet* pGrfAttrSet = 0, + SwFrmFmt* = 0 ); + String GetUniqueOLEName() const; + + void GrfToOle( const SwPaM &rRg, SvInPlaceObject * ); + void OleToGrf( const SwPaM &rRg, const Graphic *pGrf ); + + // ein bischen wa fuer die benannten FlyFrames + String GetUniqueFrameName() const; + void SetFlyName( SwFlyFrmFmt& rFmt, const String& rName ); + const SwFlyFrmFmt* FindFlyByName( const String& rName, sal_Int8 nNdTyp = 0 ) const; + + void GetGrfNms( const SwFlyFrmFmt& rFmt, String* pGrfName, + String* pFltName ) const; + + // setze bei allen Flys ohne Namen einen gueltigen (Wird von den Readern + // nach dem Einlesen gerufen ) + void SetAllUniqueFlyNames(); + + //Aufspalten eines Nodes an rPos (nur fuer den TxtNode implementiert) + sal_Bool SplitNode(const SwPosition &rPos, sal_Bool bChkTableStart = sal_False ); + sal_Bool AppendTxtNode( SwPosition& rPos ); // nicht const! + + // Ersetz einen selektierten Bereich in einem TextNode mit dem + // String. Ist fuers Suchen&Ersetzen gedacht. + // bRegExpRplc - ersetze Tabs (\\t) und setze den gefundenen String + // ein ( nicht \& ) + // z.B.: Fnd: "zzz", Repl: "xx\t\\t..&..\&" + // --> "xx\t..zzz..&" + sal_Bool Replace( SwPaM& rPam, const String& rNewStr, + sal_Bool bRegExpRplc = sal_False ); + + /* + * Einfuegen eines Attributs. Erstreckt sich rRg ueber + * mehrere Nodes, wird das Attribut aufgespaltet, sofern + * dieses Sinn macht. Nodes, in denen dieses Attribut keinen + * Sinn macht, werden ignoriert. In vollstaendig in der + * Selektion eingeschlossenen Nodes wird das Attribut zu + * harter Formatierung, in den anderen (Text-)Nodes wird das + * Attribut in das Attributearray eingefuegt. Bei einem + * Zeichenattribut wird ein "leerer" Hint eingefuegt, + * wenn keine Selektion + * vorliegt; andernfalls wird das Attribut als harte + * Formatierung dem durch rRg.Start() bezeichneten Node + * hinzugefuegt. Wenn das Attribut nicht eingefuegt werden + * konnte, liefert die Methode sal_False. + */ + sal_Bool Insert( const SwPaM &rRg, const SfxPoolItem&, sal_uInt16 nFlags = 0 ); + sal_Bool Insert( const SwPaM &rRg, const SfxItemSet&, sal_uInt16 nFlags = 0 ); + + //Zuruecksetzen der Attribute; es werden alle TxtHints und bei + //vollstaendiger Selektion harte Formatierung (AUTO-Formate) entfernt + void ResetAttr(const SwPaM &rRg, sal_Bool bTxtAttr = sal_True, + const SvUShortsSort* = 0 ); + void RstTxtAttr(const SwPaM &rRg, BOOL bInclRefToxMark = FALSE ); + + // Setze das Attribut im angegebenen Format. Ist Undo aktiv, wird + // das alte in die Undo-History aufgenommen + void SetAttr( const SfxPoolItem&, SwFmt& ); + void SetAttr( const SfxItemSet&, SwFmt& ); + + // Setze das Attribut als neues default Attribut in diesem Dokument. + // Ist Undo aktiv, wird das alte in die Undo-History aufgenommen + void SetDefault( const SfxPoolItem& ); + void SetDefault( const SfxItemSet& ); + + // Erfrage das Default Attribut in diesem Dokument. + const SfxPoolItem& GetDefault( sal_uInt16 nFmtHint ) const; + // TextAttribute nicht mehr aufspannen lassen + sal_Bool DontExpandFmt( const SwPosition& rPos, sal_Bool bFlag = sal_True ); + + /* Formate */ + const SwFrmFmts* GetFrmFmts() const { return pFrmFmtTbl; } + SwFrmFmts* GetFrmFmts() { return pFrmFmtTbl; } + const SwCharFmts* GetCharFmts() const { return pCharFmtTbl;} + + /* LayoutFormate (Rahmen, DrawObjecte), mal const mal nicht */ + const SwSpzFrmFmts* GetSpzFrmFmts() const { return pSpzFrmFmtTbl; } + SwSpzFrmFmts* GetSpzFrmFmts() { return pSpzFrmFmtTbl; } + + const SwFrmFmt *GetDfltFrmFmt() const { return pDfltFrmFmt; } + SwFrmFmt *GetDfltFrmFmt() { return pDfltFrmFmt; } + const SwFrmFmt *GetEmptyPageFmt() const { return pEmptyPageFmt; } + SwFrmFmt *GetEmptyPageFmt() { return pEmptyPageFmt; } + const SwFrmFmt *GetColumnContFmt() const{ return pColumnContFmt; } + SwFrmFmt *GetColumnContFmt() { return pColumnContFmt; } + const SwCharFmt *GetDfltCharFmt() const { return pDfltCharFmt;} + SwCharFmt *GetDfltCharFmt() { return pDfltCharFmt;} + + SwFrmFmt *MakeFrmFmt(const String &rFmtName, SwFrmFmt *pDerivedFrom); + void DelFrmFmt( SwFrmFmt *pFmt ); + SwFrmFmt* FindFrmFmtByName( const String& rName ) const + { return (SwFrmFmt*)FindFmtByName( (SvPtrarr&)*pFrmFmtTbl, rName ); } + SwFrmFmt* FindSpzFrmFmtByName( const String& rName ) const + { return (SwFrmFmt*)FindFmtByName( (SvPtrarr&)*pSpzFrmFmtTbl, rName ); } + + SwCharFmt *MakeCharFmt(const String &rFmtName, SwCharFmt *pDerivedFrom); + void DelCharFmt(sal_uInt16 nFmt); + void DelCharFmt(SwCharFmt* pFmt); + SwCharFmt* FindCharFmtByName( const String& rName ) const + { return (SwCharFmt*)FindFmtByName( (SvPtrarr&)*pCharFmtTbl, rName ); } + + /* Formatcollections (Vorlagen) */ + // TXT + const SwTxtFmtColl* GetDfltTxtFmtColl() const { return pDfltTxtFmtColl; } + const SwTxtFmtColls *GetTxtFmtColls() const { return pTxtFmtCollTbl; } + SwTxtFmtColl *MakeTxtFmtColl( const String &rFmtName, + SwTxtFmtColl *pDerivedFrom ); + SwConditionTxtFmtColl* MakeCondTxtFmtColl( const String &rFmtName, + SwTxtFmtColl *pDerivedFrom ); + void DelTxtFmtColl(sal_uInt16 nFmt); + void DelTxtFmtColl( SwTxtFmtColl* pColl ); + sal_Bool SetTxtFmtColl( const SwPaM &rRg, SwTxtFmtColl *pFmt, + sal_Bool bReset = sal_True); + SwTxtFmtColl* FindTxtFmtCollByName( const String& rName ) const + { return (SwTxtFmtColl*)FindFmtByName( (SvPtrarr&)*pTxtFmtCollTbl, rName ); } + + // GRF + const SwGrfFmtColl* GetDfltGrfFmtColl() const { return pDfltGrfFmtColl; } + const SwGrfFmtColls *GetGrfFmtColls() const { return pGrfFmtCollTbl; } + SwGrfFmtColl *MakeGrfFmtColl(const String &rFmtName, + SwGrfFmtColl *pDerivedFrom); + void DelGrfFmtColl(sal_uInt16 nFmt); + void DelGrfFmtColl( SwGrfFmtColl* pColl ); + SwGrfFmtColl* FindGrfFmtCollByName( const String& rName ) const + { return (SwGrfFmtColl*)FindFmtByName( (SvPtrarr&)*pGrfFmtCollTbl, rName ); } + + // Tabellen-Formate + const SwFrmFmts* GetTblFrmFmts() const { return pTblFrmFmtTbl; } + SwFrmFmts* GetTblFrmFmts() { return pTblFrmFmtTbl; } + sal_uInt16 GetTblFrmFmtCount( sal_Bool bUsed ) const; + SwFrmFmt& GetTblFrmFmt(sal_uInt16 nFmt, sal_Bool bUsed ) const; + SwTableFmt* MakeTblFrmFmt(const String &rFmtName, SwFrmFmt *pDerivedFrom); + void DelTblFrmFmt( SwTableFmt* pFmt ); + SwTableFmt* FindTblFmtByName( const String& rName, sal_Bool bAll = sal_False ) const; + + //Rahmenzugriff + //iterieren ueber Flys - fuer Basic-Collections + sal_uInt16 GetFlyCount(FlyCntType eType = FLYCNTTYPE_ALL) const; + SwFrmFmt* GetFlyNum(sal_uInt16 nIdx, FlyCntType eType = FLYCNTTYPE_ALL); + + + // kopiere die Formate in die eigenen Arrays und returne diese + SwFrmFmt *CopyFrmFmt ( const SwFrmFmt& ); + SwCharFmt *CopyCharFmt( const SwCharFmt& ); + SwTxtFmtColl* CopyTxtColl( const SwTxtFmtColl& rColl ); + SwGrfFmtColl* CopyGrfColl( const SwGrfFmtColl& rColl ); + + // ersetze alle Formate mit denen aus rSource + void ReplaceStyles( SwDoc& rSource ); + + // Gebe die "Auto-Collection" mit der Id zurueck. Existiert + // sie noch nicht, dann erzuege sie + // Ist der String-Pointer definiert, dann erfrage nur die + // Beschreibung der Attribute, !! es legt keine Vorlage an !! + SwTxtFmtColl* GetTxtCollFromPool( sal_uInt16 nId, String* pDescription = 0, + SfxItemPresentation ePres = SFX_ITEM_PRESENTATION_COMPLETE, + SfxMapUnit eCoreMetric = SFX_MAPUNIT_TWIP, + SfxMapUnit ePresMetric = SFX_MAPUNIT_TWIP ); + // return das geforderte automatische Format - Basis-Klasse ! + SwFmt* GetFmtFromPool( sal_uInt16 nId, String* pDescription = 0, + SfxItemPresentation ePres = SFX_ITEM_PRESENTATION_COMPLETE, + SfxMapUnit eCoreMetric = SFX_MAPUNIT_TWIP, + SfxMapUnit ePresMetric = SFX_MAPUNIT_TWIP ); + // returne das geforderte automatische Format + SwFrmFmt* GetFrmFmtFromPool( sal_uInt16 nId, String* pDescription = 0 ) + { return (SwFrmFmt*)GetFmtFromPool( nId, pDescription ); } + SwCharFmt* GetCharFmtFromPool( sal_uInt16 nId, String* pDescription = 0 ) + { return (SwCharFmt*)GetFmtFromPool( nId, pDescription ); } + // returne die geforderte automatische Seiten-Vorlage + SwPageDesc* GetPageDescFromPool( sal_uInt16 nId, String* pDescription = 0, + SfxItemPresentation ePres = SFX_ITEM_PRESENTATION_COMPLETE, + SfxMapUnit eCoreMetric = SFX_MAPUNIT_TWIP, + SfxMapUnit ePresMetric = SFX_MAPUNIT_TWIP ); + SwNumRule* GetNumRuleFromPool( sal_uInt16 nId, String* pDescription = 0, + SfxItemPresentation ePres = SFX_ITEM_PRESENTATION_COMPLETE, + SfxMapUnit eCoreMetric = SFX_MAPUNIT_TWIP, + SfxMapUnit ePresMetric = SFX_MAPUNIT_TWIP ); + + // pruefe, ob diese "Auto-Collection" in Dokument schon/noch + // benutzt wird + sal_Bool IsPoolTxtCollUsed( sal_uInt16 nId ) const; + sal_Bool IsPoolFmtUsed( sal_uInt16 nId ) const; + sal_Bool IsPoolPageDescUsed( sal_uInt16 nId ) const; + sal_Bool IsPoolNumRuleUsed( sal_uInt16 nId ) const; + + // erfrage ob die Absatz-/Zeichen-/Rahmen-/Seiten - Vorlage benutzt wird + sal_Bool IsUsed( const SwModify& ) const; + sal_Bool IsUsed( const SwNumRule& ) const; + + // ist der Name ein Pool-Vorlagen-Name, returne seine ID, + // sonst USHRT_MAX + sal_uInt16 GetPoolId( const String& rName, SwGetPoolIdFromName ) const; + + const SvStringsDtor& GetTextNmArray() const + { return pTextNmArray ? *pTextNmArray : *NewTextNmArray(); } + const SvStringsDtor& GetListsNmArray() const + { return pListsNmArray ? *pListsNmArray : *NewListsNmArray(); } + const SvStringsDtor& GetExtraNmArray() const + { return pExtraNmArray ? *pExtraNmArray : *NewExtraNmArray(); } + const SvStringsDtor& GetRegisterNmArray() const + { return pRegisterNmArray ? *pRegisterNmArray : *NewRegisterNmArray(); } + const SvStringsDtor& GetDocNmArray() const + { return pDocNmArray ? *pDocNmArray : *NewDocNmArray(); } + const SvStringsDtor& GetHTMLNmArray() const + { return pHTMLNmArray ? *pHTMLNmArray : *NewHTMLNmArray(); } + const SvStringsDtor& GetFrmFmtNmArray() const + { return pFrmFmtNmArray ? *pFrmFmtNmArray : *NewFrmFmtNmArray(); } + const SvStringsDtor& GetChrFmtNmArray() const + { return pChrFmtNmArray ? *pChrFmtNmArray : *NewChrFmtNmArray(); } + const SvStringsDtor& GetHTMLChrFmtNmArray() const + { return pHTMLChrFmtNmArray ? *pHTMLChrFmtNmArray : *NewHTMLChrFmtNmArray(); } + const SvStringsDtor& GetPageDescNmArray() const + { return pPageDescNmArray ? *pPageDescNmArray : *NewPageDescNmArray(); } + const SvStringsDtor& GetNumRuleNmArray() const + { return pNumRuleNmArray ? *pNumRuleNmArray : *NewNumRuleNmArray(); } + + // erfrage zu einer PoolId den Namen (steht im poolfmt.cxx) + static String& GetPoolNm( sal_uInt16 nId, String& rFillNm ); + + // setze den Namen der neu geladenen Dokument-Vorlage + sal_uInt16 SetDocPattern( const String& rPatternName ); + // gebe die Anzahl von geladenen Dok-VorlagenNamen zurueck. + // !! Die nicht mehr benutzten sind 0-Pointer !! + sal_uInt16 GetDocPatternCnt() const { return aPatternNms.Count(); } + // gebe den Dok-VorlagenNamen zurueck. !!! Kann auch 0 sein !!! + String* GetDocPattern( sal_uInt16 nPos ) const { return aPatternNms[nPos]; } + // loeche die nicht mehr benutzten Pattern-Namen aus dem Array. + + // alle nicht mehr referenzierten Namen werden durch 0-Pointer + // ersetzt. Diese Positionen koennen wieder vergeben werden. + void ReOrgPatternHelpIds(); + + + // Loesche alle nicht referenzierten FeldTypen + void GCFieldTypes(); // impl. in docfld.cxx + + // akt. Dokument mit Textbausteindokument verbinden/erfragen + void SetGlossaryDoc( SwDoc* pDoc ) { pGlossaryDoc = pDoc; } + SwDoc* GetGlossaryDoc() const { return pGlossaryDoc; } + // jetzt mit einem verkappten Reader/Writer/Dokument + + // travel over PaM Ring + sal_Bool InsertGlossary( SwTextBlocks& rBlock, const String& rEntry, + SwPaM& rPaM, SwCrsrShell* pShell = 0); + + String GetCurWord(SwPaM&); + + // JobSetup und Freunde + SfxPrinter* GetPrt( sal_Bool bCreate ) const + { if( !bCreate || pPrt ) return pPrt; else return _GetPrt(); } + SfxPrinter* GetPrt() const { return pPrt; } + inline void _SetPrt( SfxPrinter *pP ) { pPrt = pP; } + void SetPrt( SfxPrinter *pP ); + const JobSetup* GetJobsetup() const; + void SetJobsetup( const JobSetup& rJobSetup ); + + // Dokument - Info + // legt sie auf jedenfall an! + const SfxDocumentInfo* GetInfo(); + // kann auch 0 sein !!! + const SfxDocumentInfo* GetpInfo() const { return pSwgInfo; } + + // setze ueber die DocShell in den entsp. Storage-Stream. Hier wird + // jetzt die DocInfo verwaltet. Fuer die Felder ist am Doc eine Kopie + // der Info, um einen schnellen Zugriff zu ermoeglichen. + // (impl. in docsh2.cxx) + void SetInfo( const SfxDocumentInfo& rInfo ); + // die DocInfo hat siche geaendert (Notify ueber die DocShell) + // stosse die entsp. Felder zum Updaten an. + void DocInfoChgd( const SfxDocumentInfo& rInfo ); + + // Dokument - Statistics + inline const SwDocStat &GetDocStat() const { return *pDocStat; } + void SetDocStat( const SwDocStat& rStat ); + void UpdateDocStat( SwDocStat& rStat, sal_uInt16 nNumPages ); + + //PageDescriptor-Schnittstelle + sal_uInt16 GetPageDescCnt() const { return aPageDescs.Count(); } + const SwPageDesc& GetPageDesc( sal_uInt16 i ) const { return *aPageDescs[i]; } + SwPageDesc* FindPageDescByName( const String& rName, + sal_uInt16* pPos = 0 ) const; + + // kopiere den gesamten PageDesc - ueber Dokumentgrenzen und "tief"! + // optional kann das kopieren der PoolFmtId, -HlpId verhindert werden + void CopyPageDesc( const SwPageDesc& rSrcDesc, SwPageDesc& rDstDesc, + sal_Bool bCopyPoolIds = sal_True ); + + // kopiere die Kopzeile (mit dem Inhalt!) aus dem SrcFmt + // ins DestFmt ( auch ueber Doc grenzen hinaus!) + void CopyHeader( const SwFrmFmt& rSrcFmt, SwFrmFmt& rDestFmt ) + { _CopyPageDescHeaderFooter( sal_True, rSrcFmt, rDestFmt ); } + // kopiere die Fusszeile (mit dem Inhalt!) aus dem SrcFmt + // ins DestFmt ( auch ueber Doc grenzen hinaus!) + void CopyFooter( const SwFrmFmt& rSrcFmt, SwFrmFmt& rDestFmt ) + { _CopyPageDescHeaderFooter( sal_False, rSrcFmt, rDestFmt ); } + + //fuer Reader + SwPageDesc& _GetPageDesc( sal_uInt16 i ) const { return *aPageDescs[i]; } + void ChgPageDesc( sal_uInt16 i, const SwPageDesc& ); + void DelPageDesc( sal_uInt16 i ); + sal_uInt16 MakePageDesc( const String &rName, const SwPageDesc* pCpy = 0 ); + + // Methoden fuer die Verzeichnisse: + // - Verzeichnismarke einfuegen loeschen travel + sal_uInt16 GetCurTOXMark( const SwPosition& rPos, SwTOXMarks& ) const; + void Delete( SwTOXMark* pTOXMark ); + const SwTOXMark& GotoTOXMark( const SwTOXMark& rCurTOXMark, + SwTOXSearch eDir, sal_Bool bInReadOnly ); + + // - Verzeichnis einfuegen, und bei Bedarf erneuern + const SwTOXBaseSection* InsertTableOf( const SwPosition& rPos, + const SwTOXBase& rTOX, + const SfxItemSet* pSet = 0, + sal_Bool bExpand = sal_False ); + const SwTOXBaseSection* InsertTableOf( sal_uInt32 nSttNd, sal_uInt32 nEndNd, + const SwTOXBase& rTOX, + const SfxItemSet* pSet = 0 ); + const SwTOXBase* GetCurTOX( const SwPosition& rPos ) const; + const SwAttrSet& GetTOXBaseAttrSet(const SwTOXBase& rTOX) const; + + sal_Bool DeleteTOX( const SwTOXBase& rTOXBase, sal_Bool bDelNodes = sal_False ); + String GetUniqueTOXBaseName( const SwTOXType& rType, + const String* pChkStr = 0 ) const; + + sal_Bool SetTOXBaseName(const SwTOXBase& rTOXBase, const String& rName); + void SetTOXBaseProtection(const SwTOXBase& rTOXBase, sal_Bool bProtect); + + // nach einlesen einer Datei alle Verzeichnisse updaten + void SetUpdateTOX( sal_Bool bFlag = sal_True ) { bUpdateTOX = bFlag; } + sal_Bool IsUpdateTOX() const { return bUpdateTOX; } + + const String& GetTOIAutoMarkURL() const {return sTOIAutoMarkURL;} + void SetTOIAutoMarkURL(const String& rSet) {sTOIAutoMarkURL = rSet;} + void ApplyAutoMark(); + + sal_Bool IsInReading() const { return bInReading; } + + // - Verzeichnis-Typen verwalten + sal_uInt16 GetTOXTypeCount( TOXTypes eTyp ) const; + const SwTOXType* GetTOXType( TOXTypes eTyp, sal_uInt16 nId ) const; + sal_Bool DeleteTOXType( TOXTypes eTyp, sal_uInt16 nId ); + const SwTOXType* InsertTOXType( const SwTOXType& rTyp ); + const SwTOXTypes& GetTOXTypes() const { return *pTOXTypes; } + + const SwTOXBase* GetDefaultTOXBase( TOXTypes eTyp, sal_Bool bCreate = sal_False ); + void SetDefaultTOXBase(const SwTOXBase& rBase); + + // - Schluessel fuer die Indexverwaltung + sal_uInt16 GetTOIKeys( SwTOIKeyType eTyp, SvStringsSort& rArr ) const; + + // Sortieren Tabellen Text + sal_Bool SortTbl(const SwSelBoxes& rBoxes, const SwSortOptions&); + sal_Bool SortText(const SwPaM&, const SwSortOptions&); + + // korrigiere die im Dokument angemeldeten SwPosition-Objecte, + // wie z.B. die ::com::sun::star::text::Bookmarks oder die Verzeichnisse. + // JP 22.06.95: ist bMoveCrsr gesetzt, verschiebe auch die Crsr + + // Setzt alles in rOldNode auf rNewPos + Offset + void CorrAbs( const SwNodeIndex& rOldNode, const SwPosition& rNewPos, + const xub_StrLen nOffset = 0, sal_Bool bMoveCrsr = sal_False ); + // Setzt alles im Bereich von [rStartNode, rEndNode] nach rNewPos + void CorrAbs( const SwNodeIndex& rStartNode, const SwNodeIndex& rEndNode, + const SwPosition& rNewPos, sal_Bool bMoveCrsr = sal_False ); + // Setzt alles im Bereich von rRange nach rNewPos + void CorrAbs( const SwPaM& rRange, const SwPosition& rNewPos, + sal_Bool bMoveCrsr = sal_False ); + // Setzt alles in rOldNode auf relative Pos + void CorrRel( const SwNodeIndex& rOldNode, const SwPosition& rNewPos, + const xub_StrLen nOffset = 0, sal_Bool bMoveCrsr = sal_False ); + + // GliederungsRegeln erfragen / setzen + const SwNumRule* GetOutlineNumRule() const { return pOutlineRule; } + void SetOutlineNumRule( const SwNumRule& rRule ); + // Gliederung - hoch-/runterstufen + sal_Bool OutlineUpDown( const SwPaM& rPam, short nOffset = 1 ); + // Gliederung - hoch-/runtermoven + sal_Bool MoveOutlinePara( const SwPaM& rPam, short nOffset = 1); + // zu diesem Gliederungspunkt + sal_Bool GotoOutline( SwPosition& rPos, const String& rName ) const; + // die Aenderungen an den Gliederungsvorlagen in die OutlineRule uebernehmen + void SetOutlineLSpace( sal_uInt8 nLevel, short nFirstLnOfst, sal_uInt16 nLSpace ); + + // setzt, wenn noch keine Numerierung, sonst wird geaendert + // arbeitet mit alten und neuen Regeln, nur Differenzen aktualisieren + void SetNumRule( const SwPaM&, const SwNumRule&, + sal_Bool bSetAbsLSpace = sal_True ); + // ab hier neu starten lassen oder den Start wieder aufheben + void SetNumRuleStart( const SwPosition& rPos, sal_Bool bFlag = sal_True ); + void SetNodeNumStart( const SwPosition& rPos, sal_uInt16 nStt = USHRT_MAX ); + + SwNumRule* GetCurrNumRule( const SwPosition& rPos ) const; + SwNumRuleTbl& GetNumRuleTbl() { return *pNumRuleTbl; } + const SwNumRuleTbl& GetNumRuleTbl() const { return *pNumRuleTbl; } + sal_uInt16 MakeNumRule( const String &rName, const SwNumRule* pCpy = 0 ); + sal_uInt16 FindNumRule( const String& rName ) const; + SwNumRule* FindNumRulePtr( const String& rName ) const; + // loeschen geht nur, wenn die ::com::sun::star::chaos::Rule niemand benutzt! + sal_Bool DelNumRule( const String& rName ); + String GetUniqueNumRuleName( const String* pChkStr = 0, sal_Bool bAutoNum = sal_True ) const; + void UpdateNumRule( const String& rName, sal_uInt32 nUpdPos ); + void UpdateNumRule(); // alle invaliden Updaten + void ChgNumRuleFmts( const SwNumRule& rRule ); + sal_Bool ReplaceNumRule( const SwPosition& rPos, const String& rOldRule, + const String& rNewRule ); + + // zum naechsten/vorhergehenden Punkt auf gleicher Ebene + sal_Bool GotoNextNum( SwPosition&, sal_Bool bOverUpper = sal_True, + sal_uInt8* pUpper = 0, sal_uInt8* pLower = 0 ); + sal_Bool GotoPrevNum( SwPosition&, sal_Bool bOverUpper = sal_True, + sal_uInt8* pUpper = 0, sal_uInt8* pLower = 0 ); + + // Absaetze ohne Numerierung, aber mit Einzuegen + sal_Bool NoNum( const SwPaM& ); + // Loeschen, Splitten der Aufzaehlungsliste + sal_Bool DelNumRules( const SwPaM& ); + // Hoch-/Runterstufen + sal_Bool NumUpDown( const SwPaM&, sal_Bool bDown = sal_True ); + // Bewegt selektierte Absaetze (nicht nur Numerierungen) + // entsprechend des Offsets. (negativ: zum Doc-Anf.) + sal_Bool MoveParagraph( const SwPaM&, long nOffset = 1, sal_Bool bIsOutlMv = sal_False ); + // No-/Numerierung ueber Delete/Backspace ein/abschalten + sal_Bool NumOrNoNum( const SwNodeIndex& rIdx, sal_Bool bDel = sal_False, + sal_Bool bOutline = sal_False ); + // Animation der Grafiken stoppen + void StopNumRuleAnimations( OutputDevice* ); + + // fuege eine neue Tabelle auf der Position rPos ein. (es + // wird vor dem Node eingefuegt !!) + //JP 28.10.96: + // fuer AutoFormat bei der Eingabe: dann muessen die Spalten + // auf die vordefinierten Breite gesetzt werden. Im Array stehen die + // Positionen der Spalten!! (nicht deren Breite!) + const SwTable* InsertTable( const SwPosition& rPos, sal_uInt16 nRows, + sal_uInt16 nCols, SwHoriOrient eAdjust, + sal_uInt16 nInsert = HEADLINE_NO_BORDER, + const SwTableAutoFmt* pTAFmt = 0, + const SvUShorts* pColArr = 0 ); + + // steht der Index in einer Tabelle, dann returne den TableNode sonst 0 + SwTableNode* IsIdxInTbl( const SwNodeIndex& rIdx ); + inline const SwTableNode* IsIdxInTbl( const SwNodeIndex& rIdx ) const; + + // erzeuge aus dem makierten Bereich eine ausgeglichene Tabelle + const SwTable* TextToTable( const SwPaM& rRange, sal_Unicode cCh, + SwHoriOrient eAdjust, + sal_uInt16 nInsert = HEADLINE_NO_BORDER, + const SwTableAutoFmt* = 0 ); + // erzeuge aus der Tabelle wieder normalen Text + sal_Bool TableToText( const SwTableNode* pTblNd, sal_Unicode cCh ); + // einfuegen von Spalten/Zeilen in der Tabelle + sal_Bool InsertCol( const SwCursor& rCursor, + sal_uInt16 nCnt = 1, sal_Bool bBehind = sal_True ); + sal_Bool InsertCol( const SwSelBoxes& rBoxes, + sal_uInt16 nCnt = 1, sal_Bool bBehind = sal_True ); + sal_Bool InsertRow( const SwCursor& rCursor, + sal_uInt16 nCnt = 1, sal_Bool bBehind = sal_True ); + sal_Bool InsertRow( const SwSelBoxes& rBoxes, + sal_uInt16 nCnt = 1, sal_Bool bBehind = sal_True ); + // loeschen von Spalten/Zeilen in der Tabelle + sal_Bool DeleteRowCol( const SwSelBoxes& rBoxes ); + sal_Bool DeleteRow( const SwCursor& rCursor ); + sal_Bool DeleteCol( const SwCursor& rCursor ); + // teilen / zusammenfassen von Boxen in der Tabelle + sal_Bool SplitTbl( const SwSelBoxes& rBoxes, sal_Bool bVert = sal_True, sal_uInt16 nCnt=1 ); + // returnt den enum TableMergeErr + sal_uInt16 MergeTbl( SwPaM& rPam ); + String GetUniqueTblName() const; + sal_Bool IsInsTblFormatNum() const; + sal_Bool IsInsTblChangeNumFormat() const; + sal_Bool IsInsTblAlignNum() const; + + // aus der FEShell wg.. Undo und bModified + void GetTabCols( SwTabCols &rFill, const SwCursor* pCrsr, + const SwCellFrm* pBoxFrm = 0 ) const; + void SetTabCols( const SwTabCols &rNew, sal_Bool bCurRowOnly, + const SwCursor* pCrsr, const SwCellFrm* pBoxFrm = 0 ); + + // Direktzugriff fuer Uno + void SetTabCols(SwTable& rTab, const SwTabCols &rNew, SwTabCols &rOld, + const SwTableBox *pStart, sal_Bool bCurRowOnly); + + void SetHeadlineRepeat( SwTable &rTable, sal_Bool bSet ); + // AutoFormat fuer die Tabelle/TabellenSelection + sal_Bool SetTableAutoFmt( const SwSelBoxes& rBoxes, const SwTableAutoFmt& rNew ); + // Erfrage wie attributiert ist + sal_Bool GetTableAutoFmt( const SwSelBoxes& rBoxes, SwTableAutoFmt& rGet ); + // setze das TabelleAttribut Undo auf: + void AppendUndoForAttrTable( const SwTable& rTbl ); + // setze die Spalten/Zeilen/ZTellen Breite/Hoehe + sal_Bool SetColRowWidthHeight( SwTableBox& rAktBox, sal_uInt16 eType, + SwTwips nAbsDiff, SwTwips nRelDiff ); + SwTableBoxFmt* MakeTableBoxFmt(); + SwTableLineFmt* MakeTableLineFmt(); + // teste ob die Box ein numerischen Wert darstellt und aender dann ggfs. + // das Format der Box + void ChkBoxNumFmt( SwTableBox& rAktBox, sal_Bool bCallUpdate ); + void SetTblBoxFormulaAttrs( SwTableBox& rBox, const SfxItemSet& rSet ); + void ClearBoxNumAttrs( const SwNodeIndex& rNode ); + + sal_Bool CopyTblInTbl( const SwTable& rSrcTable, SwTable& rDestTbl, + const SwNodeIndex& rBoxIdx ); + sal_Bool InsCopyOfTbl( SwPosition& rInsPos, const SwSelBoxes& rBoxes, + const SwTable* pCpyTbl = 0, sal_Bool bCpyName = sal_False, + sal_Bool bCorrPos = sal_False ); + + sal_Bool UnProtectCells( const String& rTblName ); + sal_Bool UnProtectCells( const SwSelBoxes& rBoxes ); + sal_Bool UnProtectTbls( const SwPaM& rPam ); + sal_Bool HasTblAnyProtection( const SwPosition* pPos, + const String* pTblName = 0, + sal_Bool* pFullTblProtection = 0 ); + + // Tabelle an der Position in der GrundLine aufsplitten, sprich eine + // neue Tabelle erzeugen. + sal_Bool SplitTable( const SwPosition& rPos, sal_uInt16 eMode = 0, + sal_Bool bCalcNewSize = sal_False ); + // und die Umkehrung davon. rPos muss in der Tabelle stehen, die bestehen + // bleibt. Das Flag besagt ob die aktuelle mit der davor oder dahinter + // stehenden vereint wird. + sal_Bool MergeTable( const SwPosition& rPos, sal_Bool bWithPrev = sal_True, + sal_uInt16 nMode = 0 ); + + // Raeume die Umrandung innerhalb der Tabelle ein wenig auf (doppelte + // an einer Kante erkennen und beseitigen) + sal_Bool GCTableBorder( const SwPosition& rPos ); + // Charts der angegebenen Tabelle zum Update bewegen + void UpdateCharts( const String &rName ) const; + // update all charts, for that exists any table + void UpdateAllCharts() { DoUpdateAllCharts( 0 ); } + // Tabelle wird umbenannt und aktualisiert die Charts + void SetTableName( SwFrmFmt& rTblFmt, const String &rNewName ); + + // returne zum Namen die im Doc gesetzte Referenz + const SwFmtRefMark* GetRefMark( const String& rName ) const; + // returne die RefMark per Index - fuer Uno + const SwFmtRefMark* GetRefMark( sal_uInt16 nIndex ) const; + // returne die Namen aller im Doc gesetzten Referenzen. + // Ist der ArrayPointer 0 dann returne nur, ob im Doc. eine RefMark + // gesetzt ist + sal_uInt16 GetRefMarks( SvStringsDtor* = 0 ) const; + + //Einfuegen einer Beschriftung - falls ein FlyFormat erzeugt wird, so + // returne dieses. + SwFlyFrmFmt* InsertLabel( const SwLabelType eType, const String &rTxt, + const sal_Bool bBefore, const sal_uInt16 nId, const sal_uInt32 nIdx, + const sal_Bool bCpyBrd = sal_True ); + SwFlyFrmFmt* InsertDrawLabel( const String &rTxt, const sal_uInt16 nId, + SdrObject& rObj ); + + // erfrage den Attribut Pool + const SwAttrPool& GetAttrPool() const { return aAttrPool; } + SwAttrPool& GetAttrPool() { return aAttrPool; } + + // suche ueber das Layout eine EditShell und ggfs. eine ViewShell + SwEditShell* GetEditShell( ViewShell** ppSh = 0 ) const; + + // OLE 2.0-Benachrichtung + inline void SetOle2Link(const Link& rLink) {aOle2Link = rLink;} + inline const Link& GetOle2Link() const {return aOle2Link;} + + // SS fuer Bereiche + SwSection* Insert( const SwPaM& rRange, const SwSection& rNew, + const SfxItemSet* pAttr = 0, sal_Bool bUpdate = sal_True ); + sal_uInt16 IsInsRegionAvailable( const SwPaM& rRange, + const SwNode** ppSttNd = 0 ) const; + SwSection* GetCurrSection( const SwPosition& rPos ) const; + SwSectionFmts& GetSections() { return *pSectionFmtTbl; } + const SwSectionFmts& GetSections() const { return *pSectionFmtTbl; } + SwSectionFmt *MakeSectionFmt( SwSectionFmt *pDerivedFrom ); + void DelSectionFmt( SwSectionFmt *pFmt, sal_Bool bDelNodes = sal_False ); + void ChgSection( sal_uInt16 nSect, const SwSection&, const SfxItemSet* = 0 ); + String GetUniqueSectionName( const String* pChkStr = 0 ) const; + + // Passwort fuer geschuetzte Bereiche erfragen/setzen + void ChgSectionPasswd( const String& sNew ); + const String& GetSectionPasswd() const { return sSectionPasswd; } + + // Pointer auf die SfxDocShell vom Doc, kann 0 sein !!! + SwDocShell* GetDocShell() { return pDocShell; } + const SwDocShell* GetDocShell() const { return pDocShell; } + void SetDocShell( SwDocShell* pDSh ); + + // falls beim Kopieren von OLE-Nodes eine DocShell angelegt werden muss, + // dann MUSS der Ref-Pointer besetzt sein!!!! + SvEmbeddedObjectRef* GetRefForDocShell() { return pDocShRef; } + void SetRefForDocShell( SvEmbeddedObjectRef* p ) { pDocShRef = p; } + + // fuer die TextBausteine - diese habe nur ein SvPersist zur + // Verfuegung + SvPersist* GetPersist() const; + void SetPersist( SvPersist* ); + + // Pointer auf den Storage des SfxDocShells, kann 0 sein !!! + SvStorage* GetDocStorage(); + + // abfrage/setze Flag, ob das Dokument im asynchronen Laden ist + sal_Bool IsInLoadAsynchron() const { return bInLoadAsynchron; } + void SetInLoadAsynchron( sal_Bool bFlag ) { bInLoadAsynchron = bFlag; } + + // SS fuers Linken von Dokumentteilen + sal_Bool GetData( const String& rItem, SvData& rData ) const; + sal_Bool ChangeData( const String& rItem, const SvData& rData ); + SvPseudoObject* CreateHotLink( const String& rItem ); + // erzeuge um das zu Servende Object eine Selektion + sal_Bool SelectServerObj( const String& rStr, SwPaM*& rpPam, + SwNodeRange*& rpRange ) const; + // erfage alle zu servendenen Objecte + sal_uInt16 GetServerObjects( SvStrings& rStrArr ) const; + + // fuer Drag&Move: ( z.B. RefMarks "verschieben" erlauben ) + sal_Bool IsCopyIsMove() const { return bCopyIsMove; } + void SetCopyIsMove( sal_Bool bFlag ) { bCopyIsMove = bFlag; } + + // fuers Draw-Undo: Aktionen auf Flys wollen wir selbst behandeln + sal_Bool IsNoDrawUndoObj() const { return bNoDrawUndoObj; } + void SetNoDrawUndoObj( sal_Bool bFlag ) { bNoDrawUndoObj = bFlag; } + SwDrawContact* GroupSelection( SdrView& ); + void UnGroupSelection( SdrView& ); + sal_Bool DeleteSelection( SwDrawView& ); + + // Invalidiert OnlineSpell-WrongListen + void SpellItAgainSam( sal_Bool bInvalid, sal_Bool bOnlyWrong ); + void InvalidateAutoCompleteFlag(); + + SdrModel* _MakeDrawModel(); + inline SdrModel* MakeDrawModel() + { return GetDrawModel() ? GetDrawModel() : _MakeDrawModel(); } + void SetCalcFieldValueHdl(Outliner* pOutliner); + + // erfrage ob die ::com::sun::star::util::URL besucht war. Uebers Doc, falls nur ein ::com::sun::star::text::Bookmark + // angegeben ist. Dann muss der Doc. Name davor gesetzt werden! + sal_Bool IsVisitedURL( const String& rURL ) const; + + // speicher die akt. Werte fuer die automatische Aufnahme von Ausnahmen + // in die Autokorrektur + void SetAutoCorrExceptWord( SwAutoCorrExceptWord* pNew ); + SwAutoCorrExceptWord* GetAutoCorrExceptWord() { return pACEWord; } + + const SwFmtINetFmt* FindINetAttr( const String& rName ) const; + + // rufe ins dunkle Basic, mit evt. Return String + sal_Bool ExecMacro( const SvxMacro& rMacro, String* pRet = 0, SbxArray* pArgs = 0 ); + // rufe ins dunkle Basic/JavaScript + sal_uInt16 CallEvent( sal_uInt16 nEvent, const SwCallMouseEvent& rCallEvent, + sal_Bool bChkPtr = sal_False, SbxArray* pArgs = 0, + const Link* pCallBack = 0 ); + + // linken Rand ueber Objectleiste einstellen (aenhlich dem Stufen von + // Numerierungen), optional kann man "um" den Offset stufen oder "auf" + // die Position gestuft werden (bModulus = sal_True) + void MoveLeftMargin( const SwPaM& rPam, sal_Bool bRight = sal_True, + sal_Bool bModulus = sal_True ); + + // Numberformatter erfragen + inline SvNumberFormatter* GetNumberFormatter( sal_Bool bCreate = sal_True ); + inline const SvNumberFormatter* GetNumberFormatter( sal_Bool bCreate = sal_True ) const; + + // loesche den nicht sichtbaren ::com::sun::star::ucb::Content aus dem Document, wie z.B.: + // versteckte Bereiche, versteckte Absaetze + sal_Bool RemoveInvisibleContent(); + // embedded alle lokalen Links (Bereiche/Grafiken) + sal_Bool EmbedAllLinks(); + // erzeuge Anhand der vorgebenen Collection Teildokumente + // falls keine angegeben ist, nehme die Kapitelvorlage der 1. Ebene + sal_Bool GenerateGlobalDoc( const String& rPath, + const SwTxtFmtColl* pSplitColl = 0 ); + sal_Bool GenerateHTMLDoc( const String& rPath, + const SwTxtFmtColl* pSplitColl = 0 ); + + + // alles fuers Redlining + SwRedlineMode GetRedlineMode() const { return eRedlineMode; } + sal_Bool IsRedlineOn() const { return ::IsRedlineOn( eRedlineMode ); } + sal_Bool IsIgnoreRedline() const { return REDLINE_IGNORE & eRedlineMode; } + void SetRedlineMode_intern( sal_uInt16 eMode ) { eRedlineMode = (SwRedlineMode)eMode; } + void SetRedlineMode( sal_uInt16 eMode ); + + const SwRedlineTbl& GetRedlineTbl() const { return *pRedlineTbl; } + sal_Bool AppendRedline( SwRedline* pPtr, sal_Bool bCallDelete = sal_True ); + sal_Bool SplitRedline( const SwPaM& rPam ); + sal_Bool DeleteRedline( const SwPaM& rPam, sal_Bool bSaveInUndo = sal_True, + sal_uInt16 nDelType = USHRT_MAX ); + sal_Bool DeleteRedline( const SwStartNode& rSection, sal_Bool bSaveInUndo = sal_True, + sal_uInt16 nDelType = USHRT_MAX ); + void DeleteRedline( sal_uInt16 nPos ); + sal_uInt16 GetRedlinePos( const SwNode& rNd, sal_uInt16 nType = USHRT_MAX ) const; + void CompressRedlines(); + const SwRedline* GetRedline( const SwPosition& rPos, + sal_uInt16* pFndPos = 0 ) const; + + sal_Bool IsRedlineMove() const { return bIsRedlineMove; } + void SetRedlineMove( sal_Bool bFlag ) { bIsRedlineMove = bFlag; } + + sal_Bool AcceptRedline( sal_uInt16 nPos, sal_Bool bCallDelete = sal_True ); + sal_Bool AcceptRedline( const SwPaM& rPam, sal_Bool bCallDelete = sal_True ); + sal_Bool RejectRedline( sal_uInt16 nPos, sal_Bool bCallDelete = sal_True ); + sal_Bool RejectRedline( const SwPaM& rPam, sal_Bool bCallDelete = sal_True ); + const SwRedline* SelNextRedline( SwPaM& rPam ) const; + const SwRedline* SelPrevRedline( SwPaM& rPam ) const; + + // alle Redline invalidieren, die Darstellung hat sich geaendert + void UpdateRedlineAttr(); + // legt gegebenenfalls einen neuen Author an + sal_uInt16 GetRedlineAuthor(); + // fuer die Reader usw. - neuen Author in die Tabelle eintragen + sal_uInt16 InsertRedlineAuthor( const String& ); + // Kommentar am Redline an der Position setzen + sal_Bool SetRedlineComment( const SwPaM& rPam, const String& rS ); + + // vergleiche zwei Dokument miteinander + long CompareDoc( const SwDoc& rDoc ); + // merge zweier Dokumente + long MergeDoc( const SwDoc& rDoc ); + // setze Kommentar-Text fuers Redline, das dann per AppendRedline + // hereinkommt. Wird vom Autoformat benutzt. 0-Pointer setzt den Modus + // wieder zurueck. Die SequenceNummer ist fuers UI-seitige zusammen- + // fassen von Redlines. + void SetAutoFmtRedlineComment( const String* pTxt, sal_uInt16 nSeqNo = 0 ); + + sal_Bool IsAutoFmtRedline() const { return bIsAutoFmtRedline; } + void SetAutoFmtRedline( sal_Bool bFlag ) { bIsAutoFmtRedline = bFlag; } + + // fuer AutoFormat: mit Undo/Redlining - Behandlung + void SetTxtFmtCollByAutoFmt( const SwPosition& rPos, sal_uInt16 nPoolId, + const SfxItemSet* pSet = 0 ); + void SetFmtItemByAutoFmt( const SwPaM& rPam, const SfxPoolItem& ); + + // !!!NUR fuer die SW-Textblocks!! beachtet kein LAYOUT!!! + void ClearDoc(); // loescht den gesamten Inhalt. + + // erfrage / setze die Daten fuer die PagePreView + const SwPagePreViewPrtData* GetPreViewPrtData() const { return pPgPViewPrtData; } + // wenn der Pointer == 0 ist, dann wird im Doc der Pointer zerstoert, + // ansonsten wird das Object kopiert. + // Der Pointer geht NICHT in den Besitz des Doc's!! + void SetPreViewPrtData( const SwPagePreViewPrtData* pData ); + + // update all modified OLE-Objects. The modification is called over the + // StarOne - Interface --> Bug 67026 + void SetOLEObjModified() + { if( GetRootFrm() ) aOLEModifiedTimer.Start(); } + + // -------------------- Uno - Schnittstellen --------------------------- + const SwUnoCrsrTbl& GetUnoCrsrTbl() const { return *pUnoCrsrTbl; } + SwUnoCrsr* CreateUnoCrsr( const SwPosition& rPos, sal_Bool bTblCrsr = sal_False ); + // -------------------- Uno - Schnittstellen --------------------------- + + // -------------------- FeShell - Schnittstellen ----------------------- + // !!!!! diese gehen immer davon aus, das ein Layout existiert !!!! + sal_Bool ChgAnchor( const SdrMarkList &rMrkList, int eAnchorId, + sal_Bool bSameOnly, sal_Bool bPosCorr ); + + void SetRowHeight( const SwCursor& rCursor, const SwFmtFrmSize &rNew ); + void GetRowHeight( const SwCursor& rCursor, SwFmtFrmSize *& rpSz ) const; + sal_Bool BalanceRowHeight( const SwCursor& rCursor, sal_Bool bTstOnly = sal_True ); + void SetRowBackground( const SwCursor& rCursor, const SvxBrushItem &rNew ); + sal_Bool GetRowBackground( const SwCursor& rCursor, SvxBrushItem &rToFill ) const; + void SetTabBorders( const SwCursor& rCursor, const SfxItemSet& rSet ); + void SetTabLineStyle( const SwCursor& rCursor, + const Color* pColor, sal_Bool bSetLine, + const SvxBorderLine* pBorderLine ); + void GetTabBorders( const SwCursor& rCursor, SfxItemSet& rSet ) const; + void SetBoxAttr( const SwCursor& rCursor, const SfxPoolItem &rNew ); + sal_Bool GetBoxBackground( const SwCursor& rCursor, SvxBrushItem &rToFill ) const; + void SetBoxAlign( const SwCursor& rCursor, sal_uInt16 nAlign ); + sal_uInt16 GetBoxAlign( const SwCursor& rCursor ) const; + void AdjustCellWidth( const SwCursor& rCursor, sal_Bool bBalance = sal_False ); + + int Chainable( const SwFrmFmt &rSource, const SwFrmFmt &rDest ); + int Chain( SwFrmFmt &rSource, const SwFrmFmt &rDest ); + void Unchain( SwFrmFmt &rFmt ); + + // fuers Copy/Move aus der FrmShell + SdrObject* CloneSdrObj( const SdrObject&, sal_Bool bMoveWithinDoc = sal_False, + sal_Bool bInsInPage = sal_True ); + + // + // -------------------- FeShell - Schnittstellen Ende ------------------ + + + // Schnittstelle fuer die TextInputDaten - ( fuer die Texteingabe + // von japanischen/chinesischen Zeichen) + SwExtTextInput* CreateExtTextInput( const SwPaM& rPam ); + void DeleteExtTextInput( SwExtTextInput* pDel ); + SwExtTextInput* GetExtTextInput( const SwNode& rNd, + xub_StrLen nCntntPos = STRING_NOTFOUND) const; + + // Schnistelle fuer den Zugriff auf die AutoComplete-Liste + static SwAutoCompleteWord& GetAutoCompleteWords() { return *pACmpltWords; } + + sal_Bool ContainsMSVBasic() const { return bContains_MSVBasic; } + void SetContainsMSVBasic( sal_Bool bFlag ) { bContains_MSVBasic = bFlag; } + + // ------------------- Zugriff auf Dummy-Member -------------------- + + sal_Bool IsParaSpaceMax() const { return n8Dummy1 & DUMMY_PARASPACEMAX; } + sal_Bool IsParaSpaceMaxAtPages() const { return n8Dummy1 & DUMMY_PARASPACEMAX_AT_PAGES; } + void SetParaSpaceMax( sal_Bool bNew, sal_Bool bAtPages ) + { + if( bNew ) n8Dummy1 |= DUMMY_PARASPACEMAX; else n8Dummy1 &= ~DUMMY_PARASPACEMAX; + if( bAtPages ) n8Dummy1 |= DUMMY_PARASPACEMAX_AT_PAGES; else n8Dummy1 &= ~DUMMY_PARASPACEMAX_AT_PAGES; + } + + void SetULongDummy1( sal_uInt32 n ) { n32Dummy1 = n; } + void SetULongDummy2( sal_uInt32 n ) { n32Dummy2 = n; } + void SetByteDummy1( sal_Int8 n ) { n8Dummy1 = n; } + void SetByteDummy2( sal_Int8 n ) { n8Dummy2 = n; } + void SetStringDummy1( const String& r ) { sDummy1 = r; } + void SetStringDummy2( const String& r ) { sDummy2 = r; } + sal_uInt32 GetULongDummy1() const { return n32Dummy1; } + sal_uInt32 GetULongDummy2() const { return n32Dummy2; } + sal_Int8 GetByteDummy1() const { return n8Dummy1; } + sal_Int8 GetByteDummy2() const { return n8Dummy2; } + const String& GetStringDummy1() const { return sDummy1; } + const String& GetStringDummy2() const { return sDummy2; } + + // call back for API wrapper + SwModify* GetUnoCallBack() const; +}; + + +// Diese Methode wird im Dtor vom SwDoc gerufen und loescht den Cache +// der Konturobjekte +void ClrContourCache(); + + +//------------------ inline impl. --------------------------------- + +inline const SwTableNode* SwDoc::IsIdxInTbl( const SwNodeIndex& rIdx ) const +{ + return ((SwDoc*)this)->IsIdxInTbl( rIdx ); +} + +inline SvNumberFormatter* SwDoc::GetNumberFormatter( sal_Bool bCreate ) +{ + if( bCreate && !pNumberFormatter ) + _CreateNumberFormatter(); + return pNumberFormatter; +} + +inline const SvNumberFormatter* SwDoc::GetNumberFormatter( sal_Bool bCreate ) const +{ + return ((SwDoc*)this)->GetNumberFormatter( bCreate ); +} + + +// ist das NodesArray das normale vom Doc? (nicht das UndoNds, .. ) +// Implementierung steht hier, weil man dazu Doc kennen muss! +inline sal_Bool SwNodes::IsDocNodes() const +{ + return this == &pMyDoc->GetNodes(); +} + + + +#endif //_DOC_HXX diff --git a/sw/inc/docary.hxx b/sw/inc/docary.hxx new file mode 100644 index 000000000000..d904c90b1cdc --- /dev/null +++ b/sw/inc/docary.hxx @@ -0,0 +1,166 @@ +/************************************************************************* + * + * $RCSfile: docary.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOCARY_HXX +#define _DOCARY_HXX + +class SwFieldType; +class SwFrmFmt; +class SwCharFmt; +class SwBookmark; +class SwTOXType; +class SwUndo; +class SwSectionFmt; +class SwNumRule; +class SwRedline; +class SwUnoCrsr; +class SwOLENode; + +#ifndef _SWTYPES_HXX //autogen +#include +#endif + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +typedef SwFieldType* SwFldTypePtr; +#define GROW_FLDTYPES 16 + +//PageDescriptor-Schnittstelle +//typedef SwPageDesc * SwPageDescPtr; +//SV_DECL_PTRARR_DEL(SwPageDescs, SwPageDescPtr,1,1); + +typedef SwFrmFmt* SwFrmFmtPtr; +SV_DECL_PTRARR_DEL(SwFrmFmts,SwFrmFmtPtr,4,4) + +//Spezifische Frameformate (Rahmen, DrawObjecte) +SV_DECL_PTRARR_DEL(SwSpzFrmFmts,SwFrmFmtPtr,0,4) + +typedef SwCharFmt* SwCharFmtPtr; +SV_DECL_PTRARR_DEL(SwCharFmts,SwCharFmtPtr,4,4) + +SV_DECL_PTRARR_DEL( SwFldTypes, SwFldTypePtr, INIT_FLDTYPES, GROW_FLDTYPES ) + +//Bookmarks (nach Dokumentpositionen sortiertes Array) +typedef SwBookmark* SwBookmarkPtr; +SV_DECL_PTRARR_SORT(SwBookmarks, SwBookmarkPtr,0,1) + +typedef SwTOXType* SwTOXTypePtr; +SV_DECL_PTRARR_DEL( SwTOXTypes, SwTOXTypePtr, 0, 1 ) + +// Undo +#define INIT_UNDOS 5 +#define GROW_UNDOS 5 +// Das Array der Undo-History +typedef SwUndo* SwUndoPtr; +SV_DECL_PTRARR_DEL( SwUndos, SwUndoPtr, INIT_UNDOS, GROW_UNDOS ) + +typedef SwSectionFmt* SwSectionFmtPtr; +SV_DECL_PTRARR_DEL(SwSectionFmts,SwSectionFmtPtr,0,4) + + +typedef SwNumRule* SwNumRulePtr; +SV_DECL_PTRARR_DEL( SwNumRuleTbl, SwNumRulePtr, 0, 5 ) + +typedef SwRedline* SwRedlinePtr; +SV_DECL_PTRARR_SORT_DEL( _SwRedlineTbl, SwRedlinePtr, 0, 16 ) + +class SwRedlineTbl : private _SwRedlineTbl +{ +public: + SwRedlineTbl( BYTE nSize = 0, BYTE nG = 16 ) + : _SwRedlineTbl( nSize, nG ) {} + ~SwRedlineTbl() {} + + BOOL SavePtrInArr( SwRedlinePtr p ) { return _SwRedlineTbl::Insert( p ); } + + BOOL Insert( SwRedlinePtr& p, BOOL bIns = TRUE ); + BOOL Insert( SwRedlinePtr& p, USHORT& rInsPos, BOOL bIns = TRUE ); + BOOL InsertWithValidRanges( SwRedlinePtr& p, USHORT* pInsPos = 0 ); + + void Remove( USHORT nP, USHORT nL = 1 ); + void DeleteAndDestroy( USHORT nP, USHORT nL=1 ); + + // suche den naechsten oder vorherigen Redline mit dergleichen Seq.No + // Mit dem Lookahead kann die Suche eingeschraenkt werden. 0 oder + // USHRT_MAX suchen im gesamten Array. + USHORT FindNextOfSeqNo( USHORT nSttPos, USHORT nLookahead = 20 ) const; + USHORT FindPrevOfSeqNo( USHORT nSttPos, USHORT nLookahead = 20 ) const; + USHORT FindNextSeqNo( USHORT nSeqNo, USHORT nSttPos, + USHORT nLookahead = 20 ) const; + USHORT FindPrevSeqNo( USHORT nSeqNo, USHORT nSttPos, + USHORT nLookahead = 20 ) const; + + _SwRedlineTbl::Count; + _SwRedlineTbl::operator[]; + _SwRedlineTbl::GetObject; + _SwRedlineTbl::Seek_Entry; + _SwRedlineTbl::GetPos; +}; + +typedef SwUnoCrsr* SwUnoCrsrPtr; +SV_DECL_PTRARR_DEL( SwUnoCrsrTbl, SwUnoCrsrPtr, 0, 4 ) + +typedef SwOLENode* SwOLENodePtr; +SV_DECL_PTRARR(SwOLENodes,SwOLENodePtr,16,16) + + +#endif //_DOCARY_HXX diff --git a/sw/inc/docfac.hxx b/sw/inc/docfac.hxx new file mode 100644 index 000000000000..d73888366b63 --- /dev/null +++ b/sw/inc/docfac.hxx @@ -0,0 +1,85 @@ +/************************************************************************* + * + * $RCSfile: docfac.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOCFAC_HXX +#define _DOCFAC_HXX + +#ifndef _SOLAR_H +#include +#endif + +class SwDoc; + +class SwDocFac +{ +protected: + SwDoc* pDoc; + +public: + SwDocFac( SwDoc *pDoc = 0 ); + ~SwDocFac(); + + // Das Dokument ist nach dem Aufruf von Read(..) angelegt + SwDoc* GetDoc(); + ULONG Count() const; +}; + +#endif + diff --git a/sw/inc/docsh.hxx b/sw/inc/docsh.hxx new file mode 100644 index 000000000000..9c6af7bd89b3 --- /dev/null +++ b/sw/inc/docsh.hxx @@ -0,0 +1,303 @@ +/************************************************************************* + * + * $RCSfile: docsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWDOCSH_HXX +#define _SWDOCSH_HXX + +#ifndef _TIMER_HXX //autogen +#include +#endif +#ifndef _SFX_OBJFAC_HXX //autogen +#include +#endif +#ifndef _SFX_INTERNO_HXX //autogen +#include +#endif + +#ifndef _SFX_OBJSH_HXX //autogen +#include +#endif +#ifndef SW_SWDLL_HXX +#include +#endif +#include "shellid.hxx" + +class SwDoc; +class Sw3Io; +class SfxDocumentInfoDialog; +class SfxStyleSheetBasePool; +class FontList; +class SwView; +class SwWrtShell; +class SwFEShell; +class Reader; +class SwReader; +class SwCrsrShell; +class SwSrcView; +class SfxFileDialog; +class PushButton; +class FixedText; +class SwPaM; + +class SwDocShell: public SfxObjectShell, public SfxInPlaceObject, + public SfxListener +{ + SwDoc* pDoc; // Document + Sw3Io* pIo; // Reader / Writer + SfxStyleSheetBasePool* pBasePool; // Durchreiche fuer Formate + FontList* pFontList; // aktuelle FontListe + + // Nix geht ohne die WrtShell (historische Gruende) + // RuekwaertsPointer auf die View (historische Gruende) + // Dieser gilt solange bis im Activate ein neuer gesetzt wird + // oder dieser im Dtor der View geloescht wird + // + SwView* pView; + SwWrtShell* pWrtShell; + + Timer aFinishedTimer; // Timer fuers ueberpriefen der + // Grafik-Links. Sind alle da, + // dann ist Doc voll. geladen + + SvPersistRef xOLEChildList; // fuers RemoveOLEObjects + + // Methoden fuer den Zugriff aufs Doc + void AddLink(); + void RemoveLink(); + + // Hint abfangen fuer DocInfo + virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); + + // FileIO + virtual BOOL InitNew(SvStorage* pNewStor); + virtual BOOL Load(SvStorage* pStor); + virtual BOOL LoadFrom(SvStorage* pStor); + virtual BOOL ConvertFrom( SfxMedium &rMedium ); + virtual void HandsOff(); + virtual BOOL SaveAs(SvStorage * pNewStor ); + virtual BOOL ConvertTo(SfxMedium &rMedium ); + virtual BOOL SaveCompleted(SvStorage * pNewStor ); + virtual USHORT PrepareClose( BOOL bUI = TRUE, BOOL bForBrowsing = FALSE ); + + // DocInfo dem Doc melden + // + virtual SfxDocumentInfoDialog* CreateDocumentInfoDialog( + Window *pParent, const SfxItemSet &); + // Template-Btn + Window* AddTemplateBtn(SfxFileDialog* pFileDlg); + + // OLE-Geraffel + virtual void Draw( OutputDevice*, const JobSetup&, USHORT); + + // Methoden fuer StyleSheets + USHORT Edit( const String &rName, const String& rParent, USHORT nFamily, + USHORT nMask, BOOL bNew, + BOOL bColumn = FALSE, + SwWrtShell* pActShell = 0, + BOOL bBasic = FALSE ); + USHORT Delete(const String &rName, USHORT nFamily); + USHORT ApplyStyles(const String &rName, USHORT nFamily, SwWrtShell* pShell = 0, + USHORT nMode = 0 ); + USHORT DoWaterCan( const String &rName, USHORT nFamily); + USHORT UpdateStyle(const String &rName, USHORT nFamily, SwWrtShell* pShell = 0); + USHORT MakeByExample(const String &rName, + USHORT nFamily, USHORT nMask, SwWrtShell* pShell = 0); + + void InitDraw(); + void SubInitNew(); // fuer InitNew und HtmlSourceModus + inline void SetWrtShell(SwWrtShell* pShell) + { pWrtShell = pShell; } + + void RemoveOLEObjects(); + + DECL_STATIC_LINK( SwDocShell, IsLoadFinished, void* ); + DECL_LINK( SelTemplateHdl, PushButton * ); + +public: + + // aber selbst implementieren + SFX_DECL_INTERFACE(SW_DOCSHELL); + SFX_DECL_OBJECTFACTORY_DLL(SwDocShell, SW_DLL()); + TYPEINFO(); + + static SfxInterface *_GetInterface() { return _GetInterfaceImpl(); } + + //Das Doc wird fuer SO-Datenaustausch benoetigt! + SwDocShell(SfxObjectCreateMode eMode = SFX_CREATE_MODE_EMBEDDED); + SwDocShell( SwDoc *pDoc, SfxObjectCreateMode eMode = SFX_CREATE_MODE_STANDARD ); + ~SwDocShell(); + + // OLE 2.0-Benachrichtigung + DECL_LINK( Ole2ModifiedHdl, void * ); + + // OLE-Geraffel + virtual void SetVisArea( const Rectangle &rRect ); + virtual Rectangle GetVisArea( USHORT nAspect ) const; + virtual Printer *GetDocumentPrinter(); + virtual void OnDocumentPrinterChanged( Printer * pNewPrinter ); + virtual ULONG GetMiscStatus() const; + + virtual void PrepareReload(); + virtual void SetModified( BOOL = TRUE ); + + // Dispatcher + void Execute(SfxRequest &); + void ExecStyleSheet(SfxRequest&); + void ExecDB(SfxRequest&); + + void GetState(SfxItemSet &); + void StateAlways(SfxItemSet &); + void StateStyleSheet(SfxItemSet&, SwWrtShell* pSh = 0 ); + + // Doc rausreichen aber VORSICHT + inline SwDoc* GetDoc() { return pDoc; } + void UpdateFontList(); + void UpdateChildWindows(); + + // DocumentInfo neu setzen + BOOL SetDocumentInfo(const SfxDocumentInfo& rInfo); + + // globaler IO + virtual BOOL Save(); + + // fuer VorlagenPI + virtual SfxStyleSheetBasePool* GetStyleSheetPool(); + + // Fuer Organizer + virtual BOOL Insert(SfxObjectShell &rSource, + USHORT nSourceIdx1, + USHORT nSourceIdx2, + USHORT nSourceIdx3, + USHORT& nIdx1, + USHORT& nIdx2, + USHORT& nIdx3, + USHORT& nRemovedIdx); + + virtual BOOL Remove(USHORT nIdx1, + USHORT nIdx2 = INDEX_IGNORE, + USHORT nIdx3 = INDEX_IGNORE); + + virtual Bitmap GetStyleFamilyBitmap( SfxStyleFamily eFamily ); + + // View setzen fuer Aktionen ueber Shell + void SetView(SwView* pVw); + const SwView *GetView() const { return pView; } + + // Zugriff auf die zur SwView gehoerige SwWrtShell + SwWrtShell *GetWrtShell() { return pWrtShell; } + const SwWrtShell *GetWrtShell() const { return pWrtShell; } + + // fuer die Core - die kennt die DocShell aber keine WrtShell! + SwFEShell *GetFEShell(); + const SwFEShell *GetFEShell() const + { return ((SwDocShell*)this)->GetFEShell(); } + + + // Fuer Einfuegen Dokument + Reader* StartConvertFrom(SfxMedium& rMedium, SwReader** ppRdr, + SwCrsrShell* pCrsrSh = 0, SwPaM* pPaM = 0); + + // Anforderung der pIo-Struktur fuer den Zugriff auf Substorages + // und Streams + Sw3Io* GetIoSystem() { return pIo; } + + virtual long DdeGetData( const String& rItem, SvData& rData ); + virtual long DdeSetData( const String& rItem, const SvData& rData ); + virtual SvPseudoObject* DdeCreateHotLink( const String& rItem ); + virtual void FillClass( SvGlobalName * pClassName, + ULONG * pClipFormat, + String * pAppName, + String * pLongUserName, + String * pUserName, + long nVersion = SOFFICE_FILEFORMAT_NOW ) const; + virtual void FillRegInfo( SvEmbeddedRegistryInfo * ); + + virtual SvDataMemberObjectRef CreateSnapshot(); + + virtual void LoadStyles( SfxObjectShell& rSource ); + + // Seitenvorlagedialog anzeigen, ggf. auf Spaltenpage + void FormatPage( const String& rPage, + BOOL bColumn = FALSE, + SwWrtShell* pActShell = 0 ); + + // Timer starten fuers ueberpruefen der Grafik-Links. Sind alle + // vollstaendig geladen, dann ist das Doc fertig + void StartLoadFinishedTimer(); + + // eine Uebertragung wird abgebrochen (wird aus dem SFX gerufen) + virtual void CancelTransfers(); + + // Doc aus Html-Source neu laden + void ReloadFromHtml( const String& rStreamName, SwSrcView* pSrcView ); + + // embedded alle lokalen Links (Bereiche/Grafiken) + BOOL EmbedAllLinks(); + + //Activate wait cursor for all windows of this document + //Optionally all dispatcher could be Locked + //Usually locking should be done using the class: SwWaitObject! + void EnterWait( BOOL bLockDispatcher ); + void LeaveWait( BOOL bLockDispatcher ); + + void ToggleBrowserMode(BOOL bOn, SwView* pView = 0); +}; + +#endif diff --git a/sw/inc/docstat.hxx b/sw/inc/docstat.hxx new file mode 100644 index 000000000000..4581e70d9aea --- /dev/null +++ b/sw/inc/docstat.hxx @@ -0,0 +1,90 @@ +/************************************************************************* + * + * $RCSfile: docstat.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOCSTAT_HXX +#define _DOCSTAT_HXX + +#ifndef _SOLAR_H +#include +#endif + +/////////////////////////////////////////////////////////////////////////// +// PRODUCT: struct SwInternStat ist nur fuer CORE Interne Statistics und +// hat nichts in einer ProductVersion zu suchen. +/////////////////////////////////////////////////////////////////////////// + +struct SwInternStat; + +struct SwDocStat +{ + USHORT nTbl; + USHORT nGrf; + USHORT nOLE; + ULONG nPage; + ULONG nPara; + ULONG nWord; + ULONG nChar; + BOOL bModified; + SwInternStat* pInternStat; + SwDocStat(); + void Reset(); +}; + +#endif diff --git a/sw/inc/docstyle.hxx b/sw/inc/docstyle.hxx new file mode 100644 index 000000000000..709dda4bcc7b --- /dev/null +++ b/sw/inc/docstyle.hxx @@ -0,0 +1,261 @@ +/************************************************************************* + * + * $RCSfile: docstyle.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOCSTYLE_HXX +#define _DOCSTYLE_HXX + +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_STRINGSDTOR +#include +#endif + +#ifndef _SFXSTYLE_HXX //autogen +#include +#endif + +#ifndef _SFXITEMSET_HXX //autogen +#include +#endif + +class SwDoc; +class SwDocStyleSheetPool; +class SwPageDesc; +class SwCharFmt; +class SwTxtFmtColl; +class SwFrmFmt; +class SwNumRule; + +/*-------------------------------------------------------------------- + Beschreibung: Lokale Hilfsklasse + --------------------------------------------------------------------*/ +class SwPoolFmtList : public SvStringsDtor +{ +public: + SwPoolFmtList() {} + void Append( char cChar, const String& rStr ); + void Erase(); +}; + + +/*-------------------------------------------------------------------- + Beschreibung: temp. StyleSheet + --------------------------------------------------------------------*/ +class SwDocStyleSheet : public SfxStyleSheetBase +{ + friend class SwDocStyleSheetPool; + friend class SwStyleSheetIterator; + + SwCharFmt* pCharFmt; + SwTxtFmtColl* pColl; + SwFrmFmt* pFrmFmt; + const SwPageDesc* pDesc; + const SwNumRule* pNumRule; + + SwDoc& rDoc; + SfxItemSet aCoreSet; + + BOOL bPhysical; + + + // leere Huelse zum richtigen StyleSheet (Core) machen + void Create(); + + // den StyleSheet mit Daten fuellen + enum FillStyleType { + FillOnlyName, + FillAllInfo, + FillPhysical + }; + BOOL FillStyleSheet( FillStyleType eFType ); + + +public: + SwDocStyleSheet( SwDoc& rDoc, + const String& rName, + SwDocStyleSheetPool& rPool, + SfxStyleFamily eFam, + USHORT nMask); + + SwDocStyleSheet( const SwDocStyleSheet& ); + virtual ~SwDocStyleSheet(); + + void Reset(); + + void SetMask(USHORT nMsk) { nMask = nMsk; } + void SetFamily(SfxStyleFamily eFam) { nFamily = eFam; } + + BOOL IsPhysical() const { return bPhysical; } + void SetPhysical(BOOL bPhys); + + void SetItemSet(const SfxItemSet& rSet); + + virtual SfxItemSet& GetItemSet(); + virtual const String& GetParent() const; + virtual const String& GetFollow() const; + + virtual ULONG GetHelpId( String& rFile ); + virtual void SetHelpId( const String& r, ULONG nId ); + + // Vorbelegen der member ohne physikalischen Zugriff + // wird vom StyleSheetPool benutzt + // + void PresetName(const String& rName) { aName = rName; } + void PresetNameAndFamily(const String& rName); + void PresetParent(const String& rName){ aParent = rName; } + void PresetFollow(const String& rName){ aFollow = rName; } + + virtual BOOL SetName( const String& rStr); + virtual BOOL SetParent( const String& rStr); + virtual BOOL SetFollow( const String& rStr); + + virtual BOOL HasFollowSupport() const; + virtual BOOL HasParentSupport() const; + virtual BOOL HasClearParentSupport() const; + virtual String GetDescription(); + virtual String GetDescription(SfxMapUnit eUnit); + + SwCharFmt* GetCharFmt(); + SwTxtFmtColl* GetCollection(); + SwFrmFmt* GetFrmFmt(); + const SwPageDesc* GetPageDesc(); + const SwNumRule* GetNumRule(); + void SetNumRule(const SwNumRule& rRule); + + virtual BOOL IsUsed() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Iterator fuer den Pool + --------------------------------------------------------------------*/ + +class SwStyleSheetIterator : public SfxStyleSheetIterator, public SfxListener +{ + SwDocStyleSheet aIterSheet; + SwDocStyleSheet aStyleSheet; + SwPoolFmtList aLst; + USHORT nLastPos; + BOOL bFirstCalled; + + void AppendStyleList(const SvStringsDtor& rLst, + BOOL bUsed, + USHORT nSection, + char cType); + +public: + SwStyleSheetIterator( SwDocStyleSheetPool* pBase, + SfxStyleFamily eFam, USHORT n=0xFFFF ); + virtual ~SwStyleSheetIterator(); + + virtual USHORT Count(); + virtual SfxStyleSheetBase *operator[](USHORT nIdx); + virtual SfxStyleSheetBase* First(); + virtual SfxStyleSheetBase* Next(); +#ifndef ENABLEUNICODE + virtual SfxStyleSheetBase* Find(const String& rStr); +#else + virtual SfxStyleSheetBase* Find(const UniString& rStr); +#endif + + virtual void Notify( SfxBroadcaster&, const SfxHint& ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Pool fuer + --------------------------------------------------------------------*/ + +class SwDocStyleSheetPool : public SfxStyleSheetBasePool +{ + SwDocStyleSheet aStyleSheet; + SwDoc& rDoc; + BOOL bOrganizer : 1; // TRUE: fuer den Organizer + + + virtual SfxStyleSheetBase* Create( const String&, SfxStyleFamily, USHORT nMask); + virtual SfxStyleSheetBase* Create( const SfxStyleSheetBase& ); +public: + SwDocStyleSheetPool( SwDoc&, BOOL bOrganizer = FALSE ); + virtual ~SwDocStyleSheetPool(); + + virtual void Replace( SfxStyleSheetBase& rSource, + SfxStyleSheetBase& rTarget ); + virtual SfxStyleSheetBase& Make(const String&, SfxStyleFamily, USHORT nMask, USHORT nPos = 0xffff); + virtual SfxStyleSheetBase* Find( const String&, SfxStyleFamily eFam, + USHORT n=0xFFFF ); + virtual BOOL SetParent( SfxStyleFamily eFam, const String &rStyle, + const String &rParent ); + + virtual void Erase( SfxStyleSheetBase* pStyle); + void SetItemSet(const SfxItemSet& rSet) { aStyleSheet.SetItemSet(rSet); } + + void SetOrganizerMode( BOOL bMode ) { bOrganizer = bMode; } + BOOL IsOrganizerMode() const { return bOrganizer; } + + virtual SfxStyleSheetIterator* CreateIterator( SfxStyleFamily, + USHORT nMask ); + + SwDoc& GetDoc() const { return rDoc; } + + //Fuer die daemlicheren Compiler +private: + SwDocStyleSheetPool( const SwDocStyleSheetPool& ); +}; + + +#endif diff --git a/sw/inc/docufld.hxx b/sw/inc/docufld.hxx new file mode 100644 index 000000000000..516ebb23a923 --- /dev/null +++ b/sw/inc/docufld.hxx @@ -0,0 +1,818 @@ +/************************************************************************* + * + * $RCSfile: docufld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DOCUFLD_HXX +#define _DOCUFLD_HXX + +#ifndef _DATE_HXX //autogen +#include +#endif + +#include "fldbas.hxx" +#include "numrule.hxx" + +class _SetGetExpFlds; +class SwTxtFld; +class SwFrm; + +enum SwAuthorFormat +{ + AF_BEGIN, + AF_NAME = AF_BEGIN, + AF_SHORTCUT, + AF_END, + AF_FIXED = 0x8000 +}; + +/*-------------------------------------------------------------------- + Beschreibung: Untertyp der Dokumentstatistik + --------------------------------------------------------------------*/ + +enum SwDocStatSubType +{ + DS_BEGIN, + DS_PAGE = DS_BEGIN, + DS_PARA, + DS_WORD, + DS_CHAR, + DS_TBL, + DS_GRF, + DS_OLE, + DS_END +}; + +enum SwDocInfoSubType +{ + DI_SUBTYPE_BEGIN, + DI_TITEL = DI_SUBTYPE_BEGIN, + DI_THEMA, + DI_KEYS, + DI_COMMENT, + DI_INFO1, + DI_INFO2, + DI_INFO3, + DI_INFO4, + DI_CREATE, + DI_CHANGE, + DI_PRINT, + DI_DOCNO, + DI_EDIT, + DI_SUBTYPE_END +}; + +enum SwDocInfoExtSubType +{ + DI_SUB_AUTHOR = 0x0100, + DI_SUB_TIME = 0x0200, + DI_SUB_DATE = 0x0300, + DI_SUB_FIXED = 0x1000 +}; + +enum RegInfoFormat // Nur noch zum laden alter Dokumente!!! +{ + RF_AUTHOR, + RF_TIME, + RF_DATE, + RF_ALL +}; + +enum SwPageNumSubType +{ + PG_RANDOM, + PG_NEXT, + PG_PREV +}; + +enum SwExtUserSubType +{ + EU_COMPANY /*EU_FIRMA*/, + EU_FIRSTNAME /*EU_VORNAME*/, + EU_NAME /*EU_NAME*/, + EU_SHORTCUT /*EU_ABK*/, + EU_STREET /*EU_STRASSE*/, + EU_COUNTRY /*EU_LAND*/, + EU_ZIP /*EU_PLZ*/, + EU_CITY /*EU_ORT*/, + EU_TITLE /*EU_TITEL*/, + EU_POSITION /*EU_POS*/, + EU_PHONE_PRIVATE /*EU_TELPRIV*/, + EU_PHONE_COMPANY /*EU_TELFIRMA*/, + EU_FAX, + EU_EMAIL, + EU_STATE, + EU_FATHERSNAME, + EU_APARTMENT +}; + +enum SwJumpEditFormat +{ + JE_FMT_TEXT, + JE_FMT_TABLE, + JE_FMT_FRAME, + JE_FMT_GRAPHIC, + JE_FMT_OLE +}; + +/*-------------------------------------------------------------------- + Beschreibung: Seitennummer + --------------------------------------------------------------------*/ + +class SwPageNumberFieldType : public SwFieldType +{ + SvxExtNumType eNumFormat; + USHORT nNum, nMax; + BOOL bVirtuell; + +public: + SwPageNumberFieldType(); + + String& Expand( ULONG nFmt, short nOff, const String&, String& rRet ) const; + void ChangeExpansion( SwDoc* pDoc, USHORT nNum, USHORT nMax, + BOOL bVirtPageNum, const SvxExtNumType* pNumFmt = 0 ); + inline SvxExtNumType GetNumFormat() const { return eNumFormat; } + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Seitennummerierung + --------------------------------------------------------------------*/ + +class SwPageNumberField : public SwField +{ + String sUserStr; + USHORT nSubType; + short nOffset; + +public: + SwPageNumberField(SwPageNumberFieldType*, USHORT nSub = PG_RANDOM, + ULONG nFmt = 0, short nOff = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + virtual USHORT GetSubType() const; + // virtual void SetSubType(USHORT nSub); // OM: entfernt, da unbenoetigt und gefaehrlich + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); + + const String& GetUserString() const { return sUserStr; } + void SetUserString( const String& rS ) { sUserStr = rS; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Autoren + --------------------------------------------------------------------*/ + +class SwAuthorFieldType : public SwFieldType +{ + SwDoc *pDoc; +public: + SwAuthorFieldType(SwDoc*); + + String Expand(ULONG) const; + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: AutorenFeld + --------------------------------------------------------------------*/ + +class SwAuthorField : public SwField +{ + String aContent; + +public: + SwAuthorField(SwAuthorFieldType*, ULONG nFmt = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline void SetExpansion(const String& rStr) { aContent = rStr; } + inline const String& GetContent() const { return aContent; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Filename + --------------------------------------------------------------------*/ + +class SwFileNameFieldType : public SwFieldType +{ + SwDoc *pDoc; +public: + SwFileNameFieldType(SwDoc*); + + String Expand(ULONG) const; + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: FileName + --------------------------------------------------------------------*/ + +class SwFileNameField : public SwField +{ + String aContent; + +public: + SwFileNameField(SwFileNameFieldType*, ULONG nFmt = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline void SetExpansion(const String& rStr) { aContent = rStr; } + inline const String& GetContent() const { return aContent; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: TemplName + --------------------------------------------------------------------*/ + +class SwTemplNameFieldType : public SwFieldType +{ + SwDoc *pDoc; +public: + SwTemplNameFieldType(SwDoc*); + + String Expand(ULONG) const; + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: TemplName + --------------------------------------------------------------------*/ + +class SwTemplNameField : public SwField +{ +public: + SwTemplNameField(SwTemplNameFieldType*, ULONG nFmt = 0); + + virtual String Expand() const; + virtual SwField* Copy() const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Docstatistik + --------------------------------------------------------------------*/ + +class SwDocStatFieldType : public SwFieldType +{ + SwDoc* pDoc; + SvxExtNumType eNumFormat; + +public: + SwDocStatFieldType(SwDoc*); + String Expand(USHORT nSubType, ULONG nFmt) const; + virtual SwFieldType* Copy() const; + + inline SvxExtNumType GetNumFormat() const { return eNumFormat; } + inline void SetNumFormat( SvxExtNumType eFmt ) { eNumFormat = eFmt; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Dokumentstatistik + --------------------------------------------------------------------*/ + +class SwDocStatField : public SwField +{ + USHORT nSubType; + +public: + SwDocStatField( SwDocStatFieldType*, + USHORT nSubType = 0, ULONG nFmt = 0); + + void ChangeExpansion( const SwFrm* pFrm ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nSub); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: versteckter Text + --------------------------------------------------------------------*/ + +class SwHiddenTxtFieldType : public SwFieldType +{ + BOOL bHidden; +public: + SwHiddenTxtFieldType(BOOL bSetHidden = TRUE); + + virtual SwFieldType* Copy() const; + + void SetHiddenFlag( BOOL bSetHidden = TRUE ); + inline BOOL GetHiddenFlag() const { return bHidden; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Versteckter Text + --------------------------------------------------------------------*/ + +class SwHiddenTxtField : public SwField +{ + String aTRUETxt; // Text wenn Bedingung TRUE + String aFALSETxt; // Wenn Bedingung falsch + String aContent; // Ausgewerteter DB-Text + + String aCond; // Bedingung + USHORT nSubType; + + BOOL bCanToggle : 1; // kann das Feld einzeln getoggelt werden? + BOOL bIsHidden : 1; // ist es nicht sichtbar? + BOOL bValid : 1; // DB-Feld evaluiert? + +public: + SwHiddenTxtField( SwHiddenTxtFieldType*, + BOOL bConditional, + const String& rCond, + const String& rTxt, + BOOL bHidden = FALSE, + USHORT nSubType = TYP_HIDDENTXTFLD); + + SwHiddenTxtField( SwHiddenTxtFieldType*, + const String& rCond, + const String& rTrue, + const String& rFalse, + USHORT nSubType = TYP_HIDDENTXTFLD); + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual String Expand() const; + virtual SwField* Copy() const; + + void Evaluate(SwDoc*); + + inline void SetValue(BOOL bHidden) { bIsHidden = bHidden; } + inline BOOL GetValue() const { return bIsHidden; } + inline BOOL IsConditional() const { return bCanToggle; } + inline BOOL IsValid() const { return bValid; } + String GetColumnName(const String& rName); + String GetDBName(const String& rName, SwDoc *pDoc); + + // Condition + virtual void SetPar1(const String& rStr); + virtual const String& GetPar1() const; + + // True/False - String + virtual void SetPar2(const String& rStr); + virtual String GetPar2() const; + + + virtual USHORT GetSubType() const; + // virtual void SetSubType(USHORT nSub); // OM: entfernt, da unbenoetigt und gefaehrlich + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Feld das zu einer Leerzeile (ohne Hoehe) expandiert + --------------------------------------------------------------------*/ + +class SwHiddenParaFieldType : public SwFieldType +{ +public: + SwHiddenParaFieldType(); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Versteckter Absatz + --------------------------------------------------------------------*/ + +class SwHiddenParaField : public SwField +{ + String aCond; + BOOL bIsHidden:1; +public: + // Direkte Eingabe alten Wert loeschen + SwHiddenParaField(SwHiddenParaFieldType*, const String& rCond); + + virtual String Expand() const; + virtual SwField* Copy() const; + + void SetHidden(BOOL bHidden) { bIsHidden = bHidden; } + BOOL IsHidden() const { return bIsHidden; } + + // Bedingung erfragen/setzen + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Macro ausfuehren + --------------------------------------------------------------------*/ + +class SwMacroFieldType : public SwFieldType +{ + SwDoc* pDoc; + +public: + SwMacroFieldType(SwDoc*); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Macrofeld + --------------------------------------------------------------------*/ + +class SwMacroField : public SwField +{ + String aMacro; + String aText; + +public: + // Direkte Eingabe alten Wert loeschen + SwMacroField( SwMacroFieldType*, const String& rLibAndName, + const String& rTxt); + + inline const String& GetMacro() const { return aMacro; } + String GetLibName() const; + String GetMacroName() const; + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual String Expand() const; + virtual SwField* Copy() const; + + // Library und FileName + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // Macrotext + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +/*-------------------------------------------------------------------- + Beschreibung: PostIts + --------------------------------------------------------------------*/ + +class SwPostItFieldType : public SwFieldType +{ +public: + SwPostItFieldType(); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: PostIt + --------------------------------------------------------------------*/ + +class SwPostItField : public SwField +{ + String sTxt; // die Anmerkung + String sAuthor; // der Author + Date aDate; // Datum ??/Zeit?? der Anmerkung + +public: + SwPostItField( SwPostItFieldType*, + const String& rAuthor, const String& rTxt, const Date& rDate); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline const Date& GetDate() const { return aDate; } + inline void SetDate( const Date& rDate ) { aDate = rDate;} + + // Author + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // Text + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + const String& GetTxt() const { return sTxt; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: DokumentInfo + --------------------------------------------------------------------*/ + +class SwDocInfoFieldType : public SwValueFieldType +{ +public: + SwDocInfoFieldType(SwDoc* pDc); + + String Expand(USHORT nSubType, ULONG nFormat, USHORT nLang) const; + virtual SwFieldType* Copy() const; +}; + +class SwDocInfoField : public SwValueField +{ + USHORT nSubType; + String aContent; + +public: + SwDocInfoField(SwDocInfoFieldType*, USHORT nSub, ULONG nFmt=0); + + virtual void SetSubType(USHORT); + virtual USHORT GetSubType() const; + virtual void SetLanguage(USHORT nLng); + virtual String Expand() const; + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual SwField* Copy() const; + + inline void SetExpansion(const String& rStr) { aContent = rStr; } + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: erweiterte Benutzereinstellung + --------------------------------------------------------------------*/ + + +class SwExtUserFieldType : public SwFieldType +{ + String aData; +public: + SwExtUserFieldType(); + + inline const String& GetData() const { return aData; } + inline void SetData(const String& rStr) { aData = rStr; } + + String Expand(USHORT nSubType, ULONG nFormat) const; + virtual SwFieldType* Copy() const; +}; + +class SwExtUserField : public SwField +{ + String aContent; + USHORT nType; + +public: + SwExtUserField(SwExtUserFieldType*, USHORT nSub, ULONG nFmt=0); + + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nSub); + + inline void SetExpansion(const String& rStr) { aContent = rStr; } + inline const String& GetContent() const { return aContent; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Relatives Seitennummern - Feld + --------------------------------------------------------------------*/ + +class SwRefPageSetFieldType : public SwFieldType +{ +public: + SwRefPageSetFieldType(); + + virtual SwFieldType* Copy() const; + // ueberlagert, weil es nichts zum Updaten gibt! + virtual void Modify( SfxPoolItem *, SfxPoolItem * ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Relative Seitennummerierung + --------------------------------------------------------------------*/ + +class SwRefPageSetField : public SwField +{ + short nOffset; + BOOL bOn; + +public: + SwRefPageSetField( SwRefPageSetFieldType*, short nOff = 0, + BOOL bOn = TRUE ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + BOOL IsOn() const { return bOn; } + void SetOn( BOOL bFlag ) { bOn = bFlag; } + + short GetOffset() const { return nOffset; } + void SetOffset( short nOff ) { nOffset = nOff; } + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: relatives Seitennummern - Abfrage Feld + --------------------------------------------------------------------*/ + +class SwRefPageGetFieldType : public SwFieldType +{ + SwDoc* pDoc; + SvxExtNumType eNumFormat; + + void UpdateField( SwTxtFld* pTxtFld, _SetGetExpFlds& rSetList ); + +public: + SwRefPageGetFieldType( SwDoc* pDoc ); + virtual SwFieldType* Copy() const; + + // ueberlagert, um alle RefPageGet-Felder zu updaten + virtual void Modify( SfxPoolItem *, SfxPoolItem * ); + USHORT MakeSetList( _SetGetExpFlds& rTmpLst ); + + SvxExtNumType GetNumFormat() const { return eNumFormat; } + void SetNumFormat( SvxExtNumType eFmt ) { eNumFormat = eFmt; } + SwDoc* GetDoc() const { return pDoc; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Relative Seitennummerierung Abfragen + --------------------------------------------------------------------*/ + +class SwRefPageGetField : public SwField +{ + String sTxt; +public: + SwRefPageGetField( SwRefPageGetFieldType*, ULONG nFmt ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + void SetText( const String& rTxt ) { sTxt = rTxt; } + const String& GetText() const { return sTxt; } + + void ChangeExpansion( const SwFrm* pFrm, const SwTxtFld* pFld ); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Feld zum Anspringen und Editieren + --------------------------------------------------------------------*/ + +class SwJumpEditFieldType : public SwFieldType +{ + SwDoc* pDoc; + SwDepend aDep; + +public: + SwJumpEditFieldType( SwDoc* pDoc ); + virtual SwFieldType* Copy() const; + + SwDoc* GetDoc() { return pDoc; } + const SwDoc* GetDoc() const { return pDoc; } + + SwCharFmt* GetCharFmt(); +}; + +class SwJumpEditField : public SwField +{ + String sTxt, sHelp; +public: + SwJumpEditField( SwJumpEditFieldType*, ULONG nFormat, + const String& sText, const String& sHelp ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + // Platzhalter-Text + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // HinweisText + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + SwCharFmt* GetCharFmt() const + { return ((SwJumpEditFieldType*)GetTyp())->GetCharFmt(); } + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: PostIts + --------------------------------------------------------------------*/ + +class SwScriptFieldType : public SwFieldType +{ + SwDoc* pDoc; +public: + SwScriptFieldType( SwDoc* pDoc ); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: PostIt + --------------------------------------------------------------------*/ + +class SwScriptField : public SwField +{ + String sType; // Type von Code (Java/VBScript/...) + String sCode; // der Code als Text + // der Code als JavaCode ? + + BOOL bCodeURL; // Code enthaelt URL eines Scripts + +public: + SwScriptField( SwScriptFieldType*, const String& rType, + const String& rCode, BOOL bURL=FALSE ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + // Type + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + // Text + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + const String& GetCode() const { return sCode; } + + BOOL IsCodeURL() const { return bCodeURL; } + void SetCodeURL( BOOL bURL ) { bCodeURL = bURL; } + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +#endif // _DOCUFLD_HXX diff --git a/sw/inc/dpage.hxx b/sw/inc/dpage.hxx new file mode 100644 index 000000000000..e865bacf36dd --- /dev/null +++ b/sw/inc/dpage.hxx @@ -0,0 +1,100 @@ +/************************************************************************* + * + * $RCSfile: dpage.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _DPAGE_HXX +#define _DPAGE_HXX + +#ifndef _FM_FMPAGE_HXX +#include +#endif + +#ifndef _SVDOBJ_HXX +#include +#endif + +class SdrPageGridFrameList; +class SwDrawDocument; + +class SwDPage : public FmFormPage, public SdrObjUserCall +{ + SdrPageGridFrameList *pGridLst; + +public: + SwDPage(SwDrawDocument& rNewModel, BOOL bMasterPage=FALSE); + ~SwDPage(); + + virtual Point GetOffset() const; + virtual SdrObject* ReplaceObject( SdrObject* pNewObj, ULONG nObjNum ); + + virtual void RequestBasic(); + + virtual const SdrPageGridFrameList* GetGridFrameList(const SdrPageView* pPV, + const Rectangle *pRect) const; + + virtual String GetLinkData( const String& rLinkName ); + virtual void SetLinkData( const String& rLinkName, const String& rLinkData ); + + BOOL RequestHelp( Window* pWindow, SdrView* pView, const HelpEvent& rEvt ); +}; + +#endif // _DPAGE_HXX + + + diff --git a/sw/inc/edglbldc.hxx b/sw/inc/edglbldc.hxx new file mode 100644 index 000000000000..9b1047bd22e0 --- /dev/null +++ b/sw/inc/edglbldc.hxx @@ -0,0 +1,113 @@ +/************************************************************************* + * + * $RCSfile: edglbldc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _EDGLBLDC_HXX +#define _EDGLBLDC_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +class SwSection; +class SwTOXBase; +class SwTOXBaseSection; + +enum GlobalDocContentType { + GLBLDOC_UNKNOWN, + GLBLDOC_TOXBASE, + GLBLDOC_SECTION +}; + +class SwGlblDocContent +{ + GlobalDocContentType eType; + ULONG nDocPos; + union { + const SwTOXBase* pTOX; + const SwSection* pSect; + } PTR; + +public: + SwGlblDocContent( ULONG nPos ); + SwGlblDocContent( const SwTOXBaseSection* pTOX ); + SwGlblDocContent( const SwSection* pSect ); + + // Inhalte abfragen + GlobalDocContentType GetType() const { return eType; } + const SwSection* GetSection() const + { return GLBLDOC_SECTION == eType ? PTR.pSect : 0; } + const SwTOXBase* GetTOX() const + { return GLBLDOC_TOXBASE == eType ? PTR.pTOX : 0; } + ULONG GetDocPos() const { return nDocPos; } + + // fuers Sortieren + inline int operator==( const SwGlblDocContent& rCmp ) + { return GetDocPos() == rCmp.GetDocPos(); } + inline int operator<( const SwGlblDocContent& rCmp ) + { return GetDocPos() < rCmp.GetDocPos(); } +}; + + +typedef SwGlblDocContent* SwGlblDocContentPtr; +SV_DECL_PTRARR_SORT_DEL( SwGlblDocContents, SwGlblDocContentPtr, 10, 10 ); + + + +#endif diff --git a/sw/inc/edimp.hxx b/sw/inc/edimp.hxx new file mode 100644 index 000000000000..2b463ad00453 --- /dev/null +++ b/sw/inc/edimp.hxx @@ -0,0 +1,124 @@ +/************************************************************************* + * + * $RCSfile: edimp.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _EDIMP_HXX +#define _EDIMP_HXX + +#include "crsrsh.hxx" +#include "doc.hxx" +#include "viscrs.hxx" + +/* + * MACROS um ueber alle Bereiche zu iterieren + */ +#define PCURCRSR (_pStartCrsr) + +#define FOREACHPAM_START(pCURSH) \ + {\ + SwPaM *_pStartCrsr = (pCURSH)->GetCrsr(), *__pStartCrsr = _pStartCrsr; \ + do { + +#define FOREACHPAM_END() \ + } while( (_pStartCrsr=(SwPaM *)_pStartCrsr->GetNext()) != __pStartCrsr ); \ + } + + +#define FOREACHCURSOR_START(pCURSH) \ + {\ + SwShellCrsr *_pStartCrsr = *(pCURSH)->GetSwCrsr(), *__pStartCrsr = _pStartCrsr; \ + do { + +#define FOREACHCURSOR_END() \ + } while( (_pStartCrsr=*(SwCursor*)_pStartCrsr->GetNext()) != __pStartCrsr ); \ + } + + +struct SwPamRange +{ + ULONG nStart, nEnd; + + SwPamRange() : nStart( 0 ), nEnd( 0 ) {} + SwPamRange( ULONG nS, ULONG nE ) : nStart( nS ), nEnd( nE ) {} + + BOOL operator==( const SwPamRange& rRg ) + { return nStart == rRg.nStart ? TRUE : FALSE; } + BOOL operator<( const SwPamRange& rRg ) + { return nStart < rRg.nStart ? TRUE : FALSE; } +}; + +SV_DECL_VARARR_SORT( _SwPamRanges, SwPamRange, 0, 1 ) + +class SwPamRanges : private _SwPamRanges +{ +public: + SwPamRanges( const SwPaM& rRing ); + + void Insert( const SwNodeIndex& rIdx1, const SwNodeIndex& rIdx2 ); + SwPaM& SetPam( USHORT nArrPos, SwPaM& rPam ); + + USHORT Count() const + { return _SwPamRanges::Count(); } + SwPamRange operator[]( USHORT nPos ) const + { return _SwPamRanges::operator[](nPos); } +}; + + +#endif diff --git a/sw/inc/editsh.hxx b/sw/inc/editsh.hxx new file mode 100644 index 000000000000..652aa39797b3 --- /dev/null +++ b/sw/inc/editsh.hxx @@ -0,0 +1,956 @@ +/************************************************************************* + * + * $RCSfile: editsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _EDITSH_HXX +#define _EDITSH_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SVARRAY_HXX //autogen +#include +#endif +#ifndef _SV_FONT_HXX //autogen +#include +#endif +#ifndef _SVXSWAFOPT_HXX +#include +#endif +#ifndef _CRSRSH_HXX +#include // fuer Basisklasse +#endif +#ifndef _ITABENUM_HXX +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLALTERNATIVES_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLCHECKER1_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATOR_HPP_ +#include +#endif + +class PolyPolygon; +class SwDoc; +class DateTime; +class CommandExtTextInputData; + +class SvNumberFormatter; +class SfxPoolItem; +class SfxItemSet; +class SvxLinkManager; +class SvxAutoCorrect; + +class SwField; // fuer Felder +class SwFieldType; +class SwDDEFieldType; +class SwNewDBMgr; + +struct SwDocStat; +class SfxDocumentInfo; +class SvStringsDtor; +class SvStringsSort; +class SwAutoCompleteWord; + +class SwFmtRefMark; +class SwFmtCol; +class SwNumRule; // Numerierung +class SwNodeNum; // Numerierung +class SwUndoIds; // fuer Undo +class SwTxtFmtColl; +#ifdef USED +class SwGrfFmt; +class SwGrfFmtColl; +#endif +class SwGrfNode; +class SwFlyFrmFmt; + +class SwFrmFmt; // fuer GetTxtNodeFmts() +class SwCharFmt; +class SwExtTextInput; +class SwTxtNode; // fuer IsNotMakeTxtNode +class SwRootFrm; // fuer CTOR +class Graphic; // fuer GetGraphic +class GraphicObject; // fuer GetGraphicObj +class SwFmtINetFmt; // InsertURL +class SvInPlaceObjectRef; +class SvInPlaceObject; +class SwTable; +class SwTextBlocks; // fuer GlossaryRW +class SwBlockExceptList; +class SwFmtFtn; +class SpellCheck; +class SwSection; +class SwSectionFmt; +class SwTOXMarks; +class SwTOXBase; +class SwTOXType; +class SwTableAutoFmt; +class SwPageDesc; +class SchMemChart; +class Font; +class SwTxtINetFmt; +class SwSeqFldList; +class SwGlblDocContent; +class SwGlblDocContents; +class SwRedline; +class SwRedlineData; +class SwFtnInfo; +class SwEndNoteInfo; +class SwLineNumberInfo; +class SwAttrSet; +class SwAuthEntry; + +#define GETSELTXT_PARABRK_TO_BLANK 0 +#define GETSELTXT_PARABRK_KEEP 1 +#define GETSELTXT_PARABRK_TO_ONLYCR 2 + +/**************************************************************** + * zum Abfragen der INet-Attribute fuer den Navigator + ****************************************************************/ +struct SwGetINetAttr +{ + String sText; + const SwTxtINetFmt& rINetAttr; + + SwGetINetAttr( const String& rTxt, const SwTxtINetFmt& rAttr ) + : sText( rTxt ), rINetAttr( rAttr ) + {} +}; +SV_DECL_PTRARR_DEL( SwGetINetAttrs, SwGetINetAttr*, 0, 5 ) + +/**************************************************************** + * Typen der Inhaltsformen + ****************************************************************/ +#define CNT_TXT 0x0001 +#define CNT_GRF 0x0002 +#define CNT_OLE 0x0010 +/* Teste einen USHORT auf eine bestimmte Inhaltsform */ +#define CNT_HasTxt(USH) ((USH)&CNT_TXT) +#define CNT_HasGrf(USH) ((USH)&CNT_GRF) +#define CNT_HasOLE(USH) ((USH)&CNT_OLE) + +class SwEditShell: public SwCrsrShell +{ + static SvxSwAutoFmtFlags* pAutoFmtFlags; + + // fuer die privaten Methoden DelRange und die vom AutoCorrect + friend class SwAutoFormat; + friend void _InitCore(); + friend void _FinitCore(); + // fuer die PamCorrAbs/-Rel Methoden + friend class SwUndo; + + SfxPoolItem& _GetChrFmt( SfxPoolItem& ) const; + + /* + * liefert einen Pointer auf einen SwGrfNode; dieser wird von + * GetGraphic() und GetGraphicSize() verwendet. + */ + SwGrfNode *_GetGrfNode() const ; + + void DeleteSel( SwPaM& rPam, BOOL* pUndo = 0 ); + + void _SetSectionAttr( SwSectionFmt& rSectFmt, const SfxItemSet& rSet ); + +public: + // Editieren (immer auf allen selektierten Bereichen) + void Insert( sal_Unicode ); + void Insert( const String &); + void Overwrite( const String & ); + + // Ersetz einen selektierten Bereich in einem TextNode mit dem + // String. Ist fuers Suchen&Ersetzen gedacht. + // bRegExpRplc - ersetze Tabs (\\t) und setze den gefundenen String + // ein ( nicht \& ) + // z.B.: Fnd: "zzz", Repl: "xx\t\\t..&..\&" + // --> "xx\t..zzz..&" + BOOL Replace( const String& rNewStr, BOOL bRegExpRplc = FALSE ); + + // loescht den Inhalt aller Bereiche; + // werden ganze Nodes selektiert, werden die Nodes geloescht + long Delete(); + + // Voellig private Methode. Nur fuer JOE's-Wizzards + BOOL DelFullPara(); + + // loesche den nicht sichtbaren Content aus dem Document, wie z.B.: + // versteckte Bereiche, versteckte Absaetze + BOOL RemoveInvisibleContent(); + + // embedded alle lokalen Links (Bereiche/Grafiken) + BOOL EmbedAllLinks(); + USHORT GetLinkUpdMode(BOOL bDocSettings = FALSE) const; + void SetLinkUpdMode( USHORT nMode ); + + // verschiebe den Inhalt aller Bereiche an die akt. Cursor-Position + long Move(); + + // kopiere den Inhalt aller Bereiche an die akt. Cursor-Position + // in die angegebene Shell + long Copy( SwEditShell* pDestShell = 0 ); + + // fuers Kopieren uebers ClipBoard: + // wird Tabelle in Tabelle kopiert, verschiebe aus dieser dann + // alle Cursor. Copy und Paste muss aufgrund der FlyFrames in + // der FEShell stehen! + // kopiere alle Selectionen und das Doc + //JP 21.10.96: und fuer die SVX-Autokorrektur + BOOL _CopySelToDoc( SwDoc* pInsDoc, SwNodeIndex* pNdInsPos = 0 ); + + long SplitNode( BOOL bAutoFormat = FALSE, BOOL bCheckTableStart = TRUE ); + void AutoFmtBySplitNode(); + + // ist der Cursor in einem INetAttribut, dann wird das komplett + // geloescht; inclusive des Hinweistextes (wird beim Drag&Drop gebraucht) + BOOL DelINetAttrWithText(); + + // ist der Cursor am Ende einer Zeichenvorlage, an der das DontExpand-Flag + // noch nicht gesetzt ist, wird dies gesetzt ( => return TRUE; ) + BOOL DontExpandFmt(); + + // Anwenden / Entfernen von Attributen + // liefert Attribute im angeforderten AttributSet. Wenn nicht eindeutig + // steht im Set ein DONT_CARE !! + BOOL GetAttr( SfxItemSet& ) const; + void SetAttr( const SfxPoolItem&, USHORT nFlags = 0 ); + void SetAttr( const SfxItemSet&, USHORT nFlags = 0 ); + + // Setze das Attribut als neues default Attribut im Dokument. + void SetDefault( const SfxPoolItem& ); + + // Erfrage das Default Attribut vom Dokument. + const SfxPoolItem& GetDefault( USHORT nFmtHint ) const; + + void ResetAttr(); + void GCAttr(); + + // FrameFormate + SwFrmFmt* FindFrmFmtByName( const String& rName ) const; + + // TABLE + USHORT GetTblFrmFmtCount( BOOL bUsed = FALSE ) const; + SwFrmFmt& GetTblFrmFmt(USHORT nFmt, BOOL bUsed = FALSE ) const; + String GetUniqueTblName() const; + + // CHAR + USHORT GetCharFmtCount() const; + SwCharFmt& GetCharFmt(USHORT nFmt) const; + SwCharFmt* GetCurCharFmt() const; + void FillByEx(SwCharFmt*, BOOL bReset = FALSE); + SwCharFmt* MakeCharFmt( const String& rName, SwCharFmt* pDerivedFrom = 0 ); + SwCharFmt* FindCharFmtByName( const String& rName ) const; + + + /* Formatcollections, neu */ + /* GetXXXCount() liefert die Anzahl der im Dokument vorhandenen XXX + * GetXXX(i) liefert das i-te XXX (ERR_RAISE bei Ueberindizierung!) + * DelXXX(i) loescht das i-te XXX (ERR_RAISE bei Ueberindizierung!) + * GetCurXXX() liefert das am Cursor oder in den Bereichen + * geltende XXX (0, wenn nicht eindeutig!) + * SetXXX() setzt am Cursor oder in den Bereichen das XXX + * MakeXXX() macht ein XXX, abgeleitet vom pDerivedFrom + */ + + // TXT + SwTxtFmtColl& GetDfltTxtFmtColl() const; + USHORT GetTxtFmtCollCount() const; + SwTxtFmtColl& GetTxtFmtColl( USHORT nTxtFmtColl) const; + SwTxtFmtColl* GetCurTxtFmtColl() const; + void SetTxtFmtColl(SwTxtFmtColl*); + SwTxtFmtColl *MakeTxtFmtColl(const String &rFmtCollName, + SwTxtFmtColl *pDerivedFrom = 0); + void FillByEx(SwTxtFmtColl*, BOOL bReset = FALSE); + SwTxtFmtColl* FindTxtFmtCollByName( const String& rName ) const; +#ifdef USED + // GRF + USHORT GetGrfFmtCollCount() const; + SwGrfFmtColl& GetGrfFmtColl( USHORT nGrfFmtColl) const; + void DelGrfFmtColl(USHORT nFmt); + SwGrfFmtColl* GetCurGrfFmtColl() const; + void SetGrfFmtColl(SwGrfFmtColl*); + SwGrfFmtColl *MakeGrfFmtColl(const String &rFmtCollName, + SwGrfFmtColl *pDerivedFrom = 0); + SwGrfFmtColl* FindGrfFmtCollByName( const String& rName ) const; +#endif + + // Gebe die "Auto-Collection" mit der Id zurueck. Existiert + // sie noch nicht, dann erzuege sie + SwTxtFmtColl* GetTxtCollFromPool( USHORT nId ); + // return das geforderte automatische Format - Basis-Klasse ! + SwFmt* GetFmtFromPool( USHORT nId ); + // returne die geforderte automatische Seiten-Vorlage + SwPageDesc* GetPageDescFromPool( USHORT nId ); + // returne die geforderte automatische NumRule + SwNumRule* GetNumRuleFromPool( USHORT nId ); + + // erfrage ob die Absatz-/Zeichen-/Rahmen-/Seiten - Vorlage benutzt wird + BOOL IsUsed( const SwModify& ) const; + BOOL IsUsed( const SwNumRule& ) const; + // ist der Name ein Pool-Vorlagen-Name, returne seine ID, + // sonst USHRT_MAX + USHORT GetPoolId( const String& rName, SwGetPoolIdFromName eFlag ) const; + + const SvStringsDtor& GetChrFmtNmArray() const; + const SvStringsDtor& GetHTMLChrFmtNmArray() const; + + // returne das geforderte automatische Format + SwFrmFmt* GetFrmFmtFromPool( USHORT nId ) + { return (SwFrmFmt*)SwEditShell::GetFmtFromPool( nId ); } + SwCharFmt* GetCharFmtFromPool( USHORT nId ) + { return (SwCharFmt*)SwEditShell::GetFmtFromPool( nId ); } + + // Felder + void Insert(SwField&); + SwField* GetCurFld() const; + + void UpdateFlds( SwField & ); // ein einzelnes Feld + + USHORT GetFldTypeCount(USHORT nResId = USHRT_MAX, BOOL bUsed = FALSE) const; + SwFieldType* GetFldType(USHORT nId, USHORT nResId = USHRT_MAX, BOOL bUsed = FALSE) const; + SwFieldType* GetFldType(USHORT nResId, const String& rName) const; + + void RemoveFldType(USHORT nId, USHORT nResId = USHRT_MAX); + void RemoveFldType(USHORT nResId, const String& rName); + BOOL RenameUserFields(const String& rOldName, const String& rNewName); + + void FieldToText( SwFieldType* pType ); + + void ChangeAuthorityData(const SwAuthEntry* pNewData); + + // Datenbankinfo + String GetDBName() const; + const String& GetDBDesc() const; + void ChgDBName(const String& rNewName); + void ChangeDBFields( const SvStringsDtor& rOldNames, + const String& rNewName ); + void GetAllUsedDB( SvStringsDtor& rDBNameList, + SvStringsDtor* pAllDBNames = 0 ); + + void UpdateExpFlds(BOOL bCloseDB = FALSE);// nur alle ExpressionFelder updaten + void SetFixFields( BOOL bOnlyTimeDate = FALSE, + const DateTime* pNewDateTime = 0 ); + void LockExpFlds(); + void UnlockExpFlds(); + BOOL IsExpFldsLocked() const; + + USHORT GetFldUpdateFlags(BOOL bDocSettings = FALSE) const; + void SetFldUpdateFlags( USHORT eFlags ); + + // fuer die Evaluierung der DBFelder (neuer DB-Manager) + SwNewDBMgr* GetNewDBMgr() const; + + SwFieldType* InsertFldType(const SwFieldType &); + + // Aenderungen am Dokument? + BOOL IsModified() const; + void SetModified(); + void ResetModified(); + void SetUndoNoResetModified(); + + // Dokument - Statistics + void UpdateDocStat( SwDocStat& rStat ); + + // Dokument - Info + const SfxDocumentInfo* GetInfo() const; + + // Verzeichnismarke einfuegen loeschen + void Insert(const SwTOXMark& rMark); + void DeleteTOXMark(SwTOXMark* pMark); + + // Alle Markierungen am aktuellen SPoint ermitteln + USHORT GetCurTOXMarks(SwTOXMarks& rMarks) const ; + + // Verzeichnis einfuegen, und bei Bedarf erneuern + void InsertTableOf(const SwTOXBase& rTOX, + const SfxItemSet* pSet = 0); + BOOL UpdateTableOf(const SwTOXBase& rTOX, + const SfxItemSet* pSet = 0); + const SwTOXBase* GetCurTOX() const; + const SwAttrSet& GetTOXBaseAttrSet(const SwTOXBase& rTOX) const; + const SwTOXBase* GetDefaultTOXBase( TOXTypes eTyp, BOOL bCreate = FALSE ); + void SetDefaultTOXBase(const SwTOXBase& rBase); + + BOOL IsTOXBaseReadonly(const SwTOXBase& rTOXBase) const; + void SetTOXBaseReadonly(const SwTOXBase& rTOXBase, BOOL bReadonly); + + USHORT GetTOXCount() const; + const SwTOXBase* GetTOX( USHORT nPos ) const; + BOOL DeleteTOX( const SwTOXBase& rTOXBase, BOOL bDelNodes = FALSE ); + BOOL DeleteCurTOX(); + + String GetUniqueTOXBaseName( const SwTOXType& rType, + const String* pChkStr = 0 ) const; + + BOOL SetTOXBaseName(const SwTOXBase& rTOXBase, const String& rName); + void SetTOXBaseProtection(const SwTOXBase& rTOXBase, BOOL bProtect); + + // nach einlesen einer Datei alle Verzeichnisse updaten + void SetUpdateTOX( BOOL bFlag = TRUE ); + BOOL IsUpdateTOX() const; + + // Verzeichnis-Typen verwalten + USHORT GetTOXTypeCount(TOXTypes eTyp) const; + const SwTOXType* GetTOXType(TOXTypes eTyp, USHORT nId) const; + void InsertTOXType(const SwTOXType& rTyp); + + //AutoMark file + const String& GetTOIAutoMarkURL() const; + void SetTOIAutoMarkURL(const String& rSet); + void ApplyAutoMark(); + + // Schluessel fuer die Indexverwaltung + USHORT GetTOIKeys( SwTOIKeyType eTyp, SvStringsSort& rArr ) const; + + void SetOutlineNumRule(const SwNumRule&); + const SwNumRule* GetOutlineNumRule() const; + // Gliederung - hoch-/runterstufen + BOOL OutlineUpDown( short nOffset = 1 ); + // Gliederung - hoch-/runtermoven + BOOL MoveOutlinePara( short nOffset = 1); + // Outlines and SubOutline are protected ? + BOOL IsProtectedOutlinePara() const; + + // Numerierung Aufzaehlunglisten + // liefert Regelwerk der aktuellen Aufzaehlung (FALSE sonst) + const SwNumRule* GetCurNumRule() const; + // setzt, wenn noch keine Numerierung, sonst wird geaendert + // arbeitet mit alten und neuen Regeln, nur Differenzen aktualisieren + void SetCurNumRule(const SwNumRule&); + // Absaetze ohne Numerierung, aber mit Einzuegen + BOOL NoNum(); + // Loeschen, Splitten der Aufzaehlungsliste + BOOL DelNumRules(); + // Hoch-/Runterstufen + BOOL NumUpDown( BOOL bDown = TRUE ); + // Hoch-/Runtermoven sowohl innerhalb als auch ausserhalb von Numerierungen + BOOL MoveParagraph( long nOffset = 1); + BOOL MoveNumParas( BOOL bUpperLower, BOOL bUpperLeft ); + // No-/Numerierung ueber Delete/Backspace ein/abschalten + BOOL NumOrNoNum( BOOL bDelete = FALSE, BOOL bChkStart = TRUE, + BOOL bOutline = FALSE ); + BOOL IsNoNum( BOOL bChkStart = TRUE, BOOL bOutline = FALSE ) const; + // returne den Num-Level des Nodes, in dem sich der Point vom + // Cursor befindet. Return kann sein : + // - NO_NUMBERING, 0..MAXLEVEL-1, NO_NUMLEVEL .. NO_NUMLEVEL|MAXLEVEL-1 + BYTE GetNumLevel( BOOL* pHasChilds = 0 ) const; + String GetUniqueNumRuleName( const String* pChkStr = 0, BOOL bAutoNum = TRUE ) const; + void ChgNumRuleFmts( const SwNumRule& rRule ); + // setze und erfrage, ob an aktueller PointPos eine Numerierung mit + // dem StartFlag startet + void SetNumRuleStart( BOOL bFlag = TRUE ); + BOOL IsNumRuleStart() const; + void SetNodeNumStart( USHORT nStt = USHRT_MAX ); + USHORT IsNodeNumStart() const; + BOOL ReplaceNumRule( const String& rOldRule, const String& rNewRule ); + + // Undo + // UndoHistory am Dokument pflegen + // bei Save, SaveAs, Create wird UndoHistory zurueckgesetzt ??? + void DoUndo( BOOL bOn = TRUE ); + BOOL DoesUndo() const; + void DoGroupUndo( BOOL bUn = TRUE ); + BOOL DoesGroupUndo() const; + void DelAllUndoObj(); + + // macht rueckgaengig: + // setzt Undoklammerung auf, liefert nUndoId der Klammerung + USHORT StartUndo( USHORT nUndoId = 0 ); + // schliesst Klammerung der nUndoId, nicht vom UI benutzt + USHORT EndUndo( USHORT nUndoId = 0 ); + // liefert die Id der letzten undofaehigen Aktion zurueck + // fuellt ggf. VARARR mit User-UndoIds + USHORT GetUndoIds( String* pUndoStr = 0, SwUndoIds *pUndoIds = 0) const; + + // abfragen/setzen der Anzahl von wiederherstellbaren Undo-Actions + static USHORT GetUndoActionCount(); + static void SetUndoActionCount( USHORT nNew ); + + // Redo + // liefert die Id der letzten Redofaehigen Aktion zurueck + // fuellt ggf. VARARR mit RedoIds + USHORT GetRedoIds( String* pRedoStr = 0, SwUndoIds *pRedoIds = 0) const; + + // Repeat + // liefert die Id der letzten Repeatfaehigen Aktion zurueck + // fuellt ggf. VARARR mit RedoIds + USHORT GetRepeatIds( String* pRepeatStr = 0, SwUndoIds *pRedoIds = 0) const; + + // 0 letzte Aktion, sonst Aktionen bis zum Start der Klammerung nUndoId + // mit KillPaMs, ClearMark + BOOL Undo(USHORT nUndoId = 0); + // wiederholt + USHORT Repeat( USHORT nCount ); + // wiederholt + USHORT Redo(); +#ifdef USED + // Aktionen klammern + void StartAction(); + void EndAction(); +#endif + // fuer alle Sichten auf dieses Dokument + void StartAllAction(); + void EndAllAction(); + + //Damit Start-/EndActions aufgesetzt werden koennen. + void CalcLayout(); + + // Inhaltsform bestimmen, holen, liefert Type am CurCrsr->SPoint + USHORT GetCntType() const; + BOOL HasOtherCnt() const; // gibt es Rahmen, Fussnoten, ... + + /* Anwenden der ViewOptions mit Start-/EndAction */ + inline void ApplyViewOptions( const SwViewOption &rOpt ); + + // Text innerhalb der Selektion erfragen + // Returnwert liefert FALSE, wenn der selektierte Bereich + // zu gross ist, um in den Stringpuffer kopiert zu werden + // oder andere Fehler auftreten + BOOL GetSelectedText( String &rBuf, + int nHndlParaBreak = GETSELTXT_PARABRK_TO_BLANK ); + + /* + * liefert eine Graphic, wenn CurCrsr->Point() auf einen + * SwGrfNode zeigt (und Mark nicht gesetzt ist oder auf die + * gleiche Graphic zeigt), sonst gibt's was auf die Finger + */ + const Graphic &GetGraphic( BOOL bWait = TRUE ) const; + const GraphicObject &GetGraphicObj() const; + BOOL IsGrfSwapOut( BOOL bOnlyLinked = FALSE ) const; + USHORT GetGraphicType() const; + + const PolyPolygon *GetGraphicPolygon() const; + void SetGraphicPolygon( const PolyPolygon *pPoly ); + + /* + * liefert die Groesse einer Graphic in Twips, wenn der Cursor + * auf einer Graphic steht; BOOL liefert FALSE, wenn s.o. + */ + BOOL GetGrfSize(Size&) const; + /* + * liefert den Namen und den Filter einer Graphic, wenn der Cursor + * auf einer Graphic steht, sonst gibt's was auf die Finger! + * Ist ein String-Ptr != 0 dann returne den entsp. Namen + */ + void GetGrfNms( String* pGrfName, String* pFltName, + const SwFlyFrmFmt* = 0 ) const; + /* + * erneutes Einlesen, falls Graphic nicht Ok ist. Die + * aktuelle wird durch die neue ersetzt. + */ + void ReRead( const String& rGrfName, const String& rFltName, + const Graphic* pGraphic = 0 ); + + // alternativen Text einer Grafik/OLe-Objectes abfragen/setzen + const String& GetAlternateText() const; + void SetAlternateText( const String& rTxt ); + + //eindeutige Identifikation des Objektes (fuer ImageMapDlg) + void *GetIMapInventor() const; + Graphic GetIMapGraphic( BOOL bWait = TRUE ) const; //liefert eine Graphic fuer alle Flys! + const SwFlyFrmFmt* FindFlyByName( const String& rName, BYTE nNdTyp = 0 ) const; + + //liefert ein ClientObject, wenn CurCrsr->Point() auf einen + //SwOLENode zeigt (und Mark nicht gesetzt ist oder auf das + //gleiche ClientObject zeigt), sonst gibt's was auf die + //Finger. + SvInPlaceObjectRef GetOLEObj() const; + //Gibt es ein OleObject mit diesem Namen (SwFmt)? + BOOL HasOLEObj( const String &rName ) const; + + //Liefert den Pointer auf die Daten des Chart, indem sich der Crsr + //befindet. + void SetChartName( const String &rName ); + // returne den ChartNamen - vom Crsr oder vom uebergebenen OLE-Object + // reurnt aEmptyStr wenn nicht gefunden wurde + const String& GetChartName( SvInPlaceObject* pObj = 0 ); + //Sucht die Tabelle und liefert ein mit den Daten der Tabelle gefuelltes + //pData. Wenn pData 0 ist wird eines angelegt. + void UpdateChartData( const String &rName, SchMemChart *&pData ); + //Updaten der Inhalte aller Charts zu der Tabelle mit dem angegeben Namen + void UpdateCharts( const String &rName ); + + // aktuelles Wort erfragen + String GetCurWord(); + + // Textbaustein aus dem Textbausteindokument in + // das aktuelle Dokument, Vorlagen nur wenn es nicht schon gibt + void InsertGlossary( SwTextBlocks& rGlossary, const String& ); + // aktuelle Selektion zum Textbaustein machen und ins + // Textbausteindokument einfuegen, einschliesslich Vorlagen + USHORT MakeGlossary( SwTextBlocks& rToFill, const String& rName, + const String& rShortName, BOOL bSaveRelFile = FALSE, + BOOL bSaveRelNet = FALSE, const String* pOnlyTxt=0 ); + // speicher den gesamten Inhalt des Docs als Textbaustein + USHORT SaveGlossaryDoc( SwTextBlocks& rGlossary, const String& rName, + const String& rShortName, + BOOL bSaveRelFile = FALSE, + BOOL bSaveRelNet = FALSE, + BOOL bOnlyTxt = FALSE ); + + // Linguistik + // Selektionen sichern + void HyphStart( SwDocPositions eStart, SwDocPositions eEnde ); + // Selektionen wiederherstellen + void HyphEnd(); + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> + HyphContinue( USHORT* pPageCnt, USHORT* pPageSt ); + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> + SpellContinue( USHORT* pPageCnt, USHORT* pPageSt ); + // zu trennendes Wort ignorieren + void HyphIgnore(); + + // zum Einfuegen des SoftHyphens, Position ist der Offset + // innerhalb des getrennten Wortes. + void InsertSoftHyph( const xub_StrLen nHyphPos ); + + //Tabelle + const SwTable& InsertTable(USHORT nRows, USHORT nCols, + SwHoriOrient = HORI_FULL, + USHORT nInsert = ALL_TBL_INS_ATTR, + const SwTableAutoFmt* pTAFmt = 0 ); + void InsertDDETable( SwDDEFieldType* pDDEType, + USHORT nRows, USHORT nCols, + SwHoriOrient eAdj = HORI_FULL, + USHORT nInsert = HEADLINE_NO_BORDER ); + void UpdateTable(); + void SetTableName( SwFrmFmt& rTblFmt, const String &rNewName ); + + SwFrmFmt *GetTableFmt(); + BOOL TextToTable( sal_Unicode cCh, SwHoriOrient eAdj = HORI_FULL, + USHORT nInsert = ALL_TBL_INS_ATTR, + const SwTableAutoFmt* pTAFmt = 0 ); + BOOL TableToText( sal_Unicode cCh ); + FASTBOOL IsTextToTableAvailable() const; + + BOOL GetTblBoxFormulaAttrs( SfxItemSet& rSet ) const; + void SetTblBoxFormulaAttrs( const SfxItemSet& rSet ); + + BOOL IsTableBoxTextFormat() const; + // Change Modus erfragen/setzen + USHORT GetTblChgMode() const; + void SetTblChgMode( USHORT eMode ); + + // Zellenbreiten ueber Min/Max Berechnung an Tabellenbreite anpassen + void OptimizeTblBoxWidthMinMax(); + // Tabelle an der Cursor Position aufsplitten + BOOL SplitTable( USHORT eMode ); + // Tabellen verbinden + // CanMerge kann feststellen, ob Prev oder Next moeglich ist. Wird + // der Pointer pChkNxtPrv uebergeben, wird festgestellt in welche + // Richtung es moeglich ist. + BOOL CanMergeTable( BOOL bWithPrev = TRUE, BOOL* pChkNxtPrv = 0 ) const; + BOOL MergeTable( BOOL bWithPrev = TRUE, USHORT nMode = 0 ); + + // Selektionen sichern + void SpellStart( SwDocPositions eStart, SwDocPositions eEnde, + SwDocPositions eCurr ); + // Selektionen wiederherstellen + void SpellEnd(); + + // Is spelling active somewhere else? + BOOL HasSpellIter() const; + // Is hyphenation active somewhere else? + BOOL HasHyphIter() const; + + ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XSpellAlternatives> + GetCorrection( const Point* pPt ); + + void SetLinguRange( SwDocPositions eStart, SwDocPositions eEnde ); + + // returne zum Namen die im Doc gesetzte Referenz + const SwFmtRefMark* GetRefMark( const String& rName ) const; + // returne die Namen aller im Doc gesetzten Referenzen + // Ist der ArrayPointer 0 dann returne nur, ob im Doc. eine RefMark + // gesetzt ist + USHORT GetRefMarks( SvStringsDtor* = 0 ) const; + + // rufe die Autokorrektur auf + void AutoCorrect( SvxAutoCorrect& rACorr, BOOL bInsertMode = TRUE, + sal_Unicode cChar = ' ' ); + BOOL GetPrevAutoCorrWord( SvxAutoCorrect& rACorr, String& rWord ); + + // dann setze nach entsprechenden Regeln unsere Vorlagen + void AutoFormat( const SvxSwAutoFmtFlags* pAFlags = 0 ); + + static SvxSwAutoFmtFlags* GetAutoFmtFlags(); + static void SetAutoFmtFlags(SvxSwAutoFmtFlags *); + + // errechnet die Selektion + String Calculate(); + + BOOL InsertURL( const SwFmtINetFmt& rFmt, const String& rStr, BOOL bKeepSelection = FALSE ); + USHORT GetINetAttrs( SwGetINetAttrs& rArr ); + + //SS Fuer holen/ersetzen DropCap-Inhalt + String GetDropTxt( const USHORT nChars ) const; + void ReplaceDropTxt( const String &rStr ); + + // Abfrage von Oultine Informationen: + USHORT GetOutlineCnt() const; + + BYTE GetOutlineLevel( USHORT nIdx ) const; + // mit exp. Felder und KapitelNummern + String GetOutlineText( USHORT nIdx, BOOL bWithNum = TRUE ) const; + // die Nummer + const SwNodeNum* GetOutlineNum( USHORT nIdx ) const; + + // darf verschoben werden? + BOOL IsOutlineMovable( USHORT nIdx ) const; + + USHORT GetLineCount( BOOL bActPos = TRUE ); + + // erfrage und setze den Fussnoten-Text/Nummer. Set.. auf akt. SSelection! + BOOL GetCurFtn( SwFmtFtn* pToFillFtn = 0 ); + BOOL SetCurFtn( const SwFmtFtn& rFillFtn ); + BOOL HasFtns( BOOL bEndNotes = FALSE ) const; +//z.Zt nicht benoetigt USHORT GetFtnCnt( BOOL bEndNotes = FALSE ) const; + // gebe Liste aller Fussnoten und deren Anfangstexte + USHORT GetSeqFtnList( SwSeqFldList& rList, BOOL bEndNotes = FALSE ); + + // SS fuer Bereiche + const SwSection* InsertSection( const SwSection& rNew, + const SfxItemSet* = 0 ); + BOOL IsInsRegionAvailable() const; + const SwSection* GetCurrSection() const; + // liefert wie GetCurrSection() den aktuellen Bereich, allerdings geht diese Funktion + // ueber die Frames und erwischt dabei auch den Bereich, wenn der Cursor in einer + // Fussnote steht, deren Referenz in einem spaltigen Bereich steckt. + // Wenn man bOutOfTab setzt, wird der Bereich gesucht, + // der die Tabelle umfasst, nicht etwa ein innerer. + const SwSection* GetAnySection( BOOL bOutOfTab = FALSE ) const; + + USHORT GetSectionFmtCount() const; + USHORT GetSectionFmtPos( const SwSectionFmt& ) const; + const SwSectionFmt& GetSectionFmt(USHORT nFmt) const; + void DelSectionFmt( USHORT nFmt ); + void ChgSection( USHORT nSect, const SwSection&, const SfxItemSet* = 0 ); + BOOL IsAnySectionInDoc( BOOL bChkReadOnly = FALSE, + BOOL bChkHidden = FALSE, + BOOL BChkTOX = FALSE ) const; + // Passwort fuer geschuetzte Bereiche erfragen/setzen + void ChgSectionPasswd( const String& sNew ); + const String& GetSectionPasswd() const; + String GetUniqueSectionName( const String* pChkStr = 0 ) const; + + //Attribute setzen + void SetSectionAttr(const SfxItemSet& rSet, SwSectionFmt* pSectFmt = 0); + + // search inside the cursor selection for full selected sections. + // if any part of section in the selection return 0. + // if more than one in the selection return the count + USHORT GetFullSelectedSectionCount() const; + + BOOL AppendNodeInSection(); + int CanInsertNodeAtEndOfSection() const; + + // Optimierung UI + void SetNewDoc(BOOL bNew = TRUE); + + SvxLinkManager& GetLinkManager(); + inline const SvxLinkManager& GetLinkManager() const; + + // linken Rand ueber Objectleiste einstellen (aenhlich dem Stufen von + // Numerierungen), optional kann man "um" den Offset stufen oder "auf" + // die Position gestuft werden (bModulus = TRUE) + BOOL IsMoveLeftMargin( BOOL bRight = TRUE, BOOL bModulus = TRUE ) const; + void MoveLeftMargin( BOOL bRight = TRUE, BOOL bModulus = TRUE ); + + // Numberformatter vom Doc erfragen + SvNumberFormatter* GetNumberFormatter(); + const SvNumberFormatter* GetNumberFormatter() const + { return ((SwEditShell*)this)->GetNumberFormatter(); } + + // Extrakt fuellen + void Summary( SwDoc* pExtDoc, BYTE nLevel, BYTE nPara, BOOL bImpress ); + + // Schnitstellen fuers GlobalDokument + void SetGlobalDoc( BOOL bFlag = TRUE ); + BOOL IsGlobalDoc() const; + void SetGlblDocSaveLinks( BOOL bFlag = TRUE ); + BOOL IsGlblDocSaveLinks() const; + USHORT GetGlobalDocContent( SwGlblDocContents& rArr ) const; + BOOL InsertGlobalDocContent( const SwGlblDocContent& rPos, + const SwSection& rNew ); + BOOL InsertGlobalDocContent( const SwGlblDocContent& rPos, + const SwTOXBase& rTOX ); + BOOL InsertGlobalDocContent( const SwGlblDocContent& rPos ); + BOOL DeleteGlobalDocContent( const SwGlblDocContents& rArr, + USHORT nPos ); + BOOL MoveGlobalDocContent( const SwGlblDocContents& rArr , + USHORT nFromPos, USHORT nToPos, + USHORT nNewPos ); + BOOL GotoGlobalDocContent( const SwGlblDocContent& rPos ); + // erzeuge Anhand der vorgebenen Collection Teildokumente + // falls keine angegeben ist, nehme die Kapitelvorlage der 1. Ebene + BOOL GenerateGlobalDoc( const String& rPath, + const SwTxtFmtColl* pSplitColl = 0 ); + BOOL GenerateHTMLDoc( const String& rPath, + const SwTxtFmtColl* pSplitColl = 0 ); + + // alles fuers Redlining + USHORT GetRedlineMode() const; + void SetRedlineMode( USHORT eMode ); + BOOL IsRedlineOn() const; + USHORT GetRedlineCount() const; + const SwRedline& GetRedline( USHORT nPos ) const; + BOOL AcceptRedline( USHORT nPos ); + BOOL AcceptRedline(); + BOOL RejectRedline( USHORT nPos ); + BOOL RejectRedline(); + // suche das Redline zu diesem Data und returne die Pos im Array + // USHRT_MAX wird returnt, falls nicht vorhanden + USHORT FindRedlineOfData( const SwRedlineData& ) const; + + // Kommentar am Redline an der Position setzen + BOOL SetRedlineComment( const String& rS ); + const SwRedline* GetCurrRedline() const; + + // Redline Anzeigeattribute wurden geaendert, Views updaten + void UpdateRedlineAttr(); + + // vergleiche zwei Dokument mit einander + long CompareDoc( const SwDoc& rDoc ); + // merge zweier Dokumente + long MergeDoc( const SwDoc& rDoc ); + + // Dokumentglobale Fussnoteneigenschaften + const SwFtnInfo& GetFtnInfo() const; + void SetFtnInfo(const SwFtnInfo& rInfo); + const SwEndNoteInfo& GetEndNoteInfo() const; + void SetEndNoteInfo(const SwEndNoteInfo& rInfo); + + //Einstellungen fuer Zeilennummierung + const SwLineNumberInfo &GetLineNumberInfo() const; + void SetLineNumberInfo( const SwLineNumberInfo& rInfo); + + // Etiketten: Bereiche synchronisieren + void SetLabelDoc( BOOL bFlag = TRUE ); + BOOL IsLabelDoc() const; + + // Schnittstelle fuer die TextInputDaten - ( fuer die Texteingabe + // von japanischen/chinesischen Zeichen) + SwExtTextInput* CreateExtTextInput(); + void DeleteExtTextInput( SwExtTextInput* pDel = 0, BOOL bInsText = TRUE ); + SwExtTextInput* GetExtTextInput() const; + void SetExtTextInputData( const CommandExtTextInputData& ); + + // Schnistelle fuer den Zugriff auf die AutoComplete-Liste + static SwAutoCompleteWord& GetAutoCompleteWords(); + + // ctor/dtor + SwEditShell( SwDoc*, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 >, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator >, Window*, + SwRootFrm* = 0, const SwViewOption *pOpt = 0 ); + // verkleideter Copy-Constructor + SwEditShell( SwEditShell*, Window* ); + ~SwEditShell(); + +private: + // fuer METWARE: + // es wird nicht kopiert und nicht zugewiesen + SwEditShell(const SwEditShell &); + const SwEditShell &operator=(const SwEditShell &); +}; + +inline void SwEditShell::ApplyViewOptions( const SwViewOption &rOpt ) +{ + SwCrsrShell::StartAction(); + ViewShell::ApplyViewOptions( rOpt ); + SwEditShell::EndAction(); +} + +inline const SvxLinkManager& SwEditShell::GetLinkManager() const +{ return ((SwEditShell*)this)->GetLinkManager(); } + +/* + * Klasse fuer den automatisierten Aufruf von Start- und + * EndAction(); + */ +class SwActKontext { + SwEditShell *pSh; +public: + SwActKontext(SwEditShell *pShell); + ~SwActKontext(); +}; + +#define ACT_KONTEXT(x) SwActKontext _aActKontext_(x) + +/* + * Klasse fuer den automatisierten Aufruf von Start- und + * EndCrsrMove(); + */ +class SwMvKontext { + SwEditShell *pSh; +public: + SwMvKontext(SwEditShell *pShell ); + ~SwMvKontext(); +}; + +#define MV_KONTEXT(x) SwMvKontext _aMvKontext_(x) + + + +#endif diff --git a/sw/inc/errhdl.hxx b/sw/inc/errhdl.hxx new file mode 100644 index 000000000000..23fdf06dfaba --- /dev/null +++ b/sw/inc/errhdl.hxx @@ -0,0 +1,129 @@ +/************************************************************************* + * + * $RCSfile: errhdl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _ERRHDL_HXX +#define _ERRHDL_HXX + +#ifndef PRODUCT + +#ifndef _SOLAR_H +#include +#endif +#ifndef _SAL_TYPES_H_ +#include +#endif +extern BOOL bAssert; // TRUE, wenn eine ASSERT-Box hochkam + +// ----------------------------------------------------------------------- +// Ausgabe einer Fehlermeldung inkl. Dateiname und Zeilennummer +// wo der Fehler auftrat. +// Die Funktion darf nicht direkt benutzt werden! +// ----------------------------------------------------------------------- +extern void AssertFail( const sal_Char*, const sal_Char*, USHORT ); +extern void AssertFail( USHORT, const sal_Char*, USHORT ); + +#ifdef WIN +//MSC (7.0) machts nur mit static, ZTC in inlines nur ohne... +#define ASSERT( cond, message ) \ + if( !(cond) ) { \ + static const char __FAR_DATA _pErrorText[] = #message; \ + static const char __FAR_DATA _pFileName[] = __FILE__; \ + ::AssertFail( _pErrorText, _pFileName, __LINE__ ); \ + } +#else +#define ASSERT( cond, message ) \ + if( !(cond) ) { \ + const char *_pErrorText = #message; \ + const char *_pFileName = __FILE__; \ + ::AssertFail( _pErrorText, _pFileName, __LINE__ ); \ + } +#endif + +// ----------------------------------------------------------------------- +// Prueft ob die angegebene Bedingung wahr ist, wenn nicht wird eine +// Fehlermeldung die ueber die ID Identifiziert wird, ausgegeben. +// ----------------------------------------------------------------------- +#ifdef WIN +//MSC (7.0) machts nur mit static, ZTC in inlines nur ohne... +#define ASSERT_ID( cond, id ) \ + if( !(cond) ) { \ + static const char __FAR_DATA _pFileName[] = __FILE__; \ + ::AssertFail( (USHORT)id, _pFileName, __LINE__ ); \ + } +#else +#define ASSERT_ID( cond, id ) \ + if( !(cond) ) { \ + const char *_pFileName = __FILE__; \ + ::AssertFail( (USHORT)id, _pFileName, __LINE__ ); \ + } +#endif + +// ----------------------------------------------------------------------- +// Beim Bilden der Produktversion werden alle Debug-Utilities automatisch +// ignoriert +// ----------------------------------------------------------------------- +#else +#define ASSERT( cond, message ) ; +#define ASSERT_ID( cond, id ) ; +#endif // PRODUCT + + + +#endif diff --git a/sw/inc/error.h b/sw/inc/error.h new file mode 100644 index 000000000000..fd093a5ed7b7 --- /dev/null +++ b/sw/inc/error.h @@ -0,0 +1,84 @@ +/************************************************************************* + * + * $RCSfile: error.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWERROR_H +#define _SWERROR_H + +#define ERR_SWGBASE 25000 + +/*** Error Codes **********************************************************/ +#define ERR_VAR_IDX (ERR_SWGBASE+ 0) +#define ERR_OUTOFSCOPE (ERR_SWGBASE+ 1) + +/* Error Codes fuer Numerierungsregeln */ +#define ERR_NUMLEVEL (ERR_SWGBASE+ 2) + +/* Error Codes fuer TxtNode */ +#define ERR_NOHINTS (ERR_SWGBASE+ 3) + +// von _START bis _END sind in der COREDL.DLL entsprechende Strings +// abgelegt, die erfragt werden koennen. +#define ERR_SWGMSG_START (ERR_VAR_IDX) +#define ERR_SWGMSG_END (ERR_NOHINTS) + + + +#endif diff --git a/sw/inc/expfld.hxx b/sw/inc/expfld.hxx new file mode 100644 index 000000000000..274553e011a4 --- /dev/null +++ b/sw/inc/expfld.hxx @@ -0,0 +1,470 @@ +/************************************************************************* + * + * $RCSfile: expfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _EXPFLD_HXX +#define _EXPFLD_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _FLDBAS_HXX +#include +#endif +#ifndef _CELLFML_HXX +#include +#endif + +class SfxPoolItem; +class SwTxtNode; +class SwCalc; +class SwFrm; +struct SwPosition; +class SwTxtFld; +class SwTableSortBoxes; +class SwDoc; +class SwTable; +class SwFmtFld; + +// Vorwaertsdeklaration: besorge den "Body-TextNode", fuer Exp.Fld in Fly's +// Header/Footers/Footnodes +const SwTxtNode* GetBodyTxtNode( const SwDoc& pDoc, SwPosition& rPos, + const SwFrm& rFrm ); +// Wandlung Address -> Adressen +void ReplacePoint(String& sTmpName); + +struct _SeqFldLstElem +{ + String sDlgEntry; + USHORT nSeqNo; + + _SeqFldLstElem( const String& rStr, USHORT nNo ) + : sDlgEntry( rStr ), nSeqNo( nNo ) + {} +}; +SV_DECL_PTRARR_DEL( _SwSeqFldList, _SeqFldLstElem*, 10, 10 ) + +class SwSeqFldList : public _SwSeqFldList +{ +public: + SwSeqFldList() : _SwSeqFldList( 10, 10 ) {} + + BOOL InsertSort( _SeqFldLstElem* ); + BOOL SeekEntry( const _SeqFldLstElem& , USHORT* pPos = 0 ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Ausdruck + --------------------------------------------------------------------*/ + +class SwGetExpFieldType : public SwValueFieldType +{ +public: + SwGetExpFieldType(SwDoc* pDoc); + virtual SwFieldType* Copy() const; + + // ueberlagert, weil das Get-Field nicht veraendert werden kann + // und dann auch nicht aktualisiert werden muss. Aktualisierung + // erfolgt beim Aendern von Set-Werten ! + + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: GetExperession + --------------------------------------------------------------------*/ + +class SwGetExpField : public SwFormulaField +{ + String sExpand; + BOOL bIsInBodyTxt; + USHORT nSubType; + +public: + SwGetExpField( SwGetExpFieldType*, const String& rFormel, + USHORT nSubType = GSE_EXPR, ULONG nFmt = 0); + + virtual void SetValue( const double& rVal ); + virtual void SetLanguage(USHORT nLng); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline const String& GetExpStr() const; + inline void ChgExpStr(const String& rExpand); + + // wird von der Formatierung abgefragt + inline BOOL IsInBodyTxt() const; + // wird von UpdateExpFlds gesetzt (dort ist die Node-Position bekannt) + inline void ChgBodyTxtFlag( BOOL bIsInBody ); + // fuer Felder in Header/Footer/Footnotes/Flys: + // (wird nur von der Formatierung aufgerufen!!) + void ChangeExpansion( const SwFrm&, const SwTxtFld& ); + + virtual String GetCntnt(BOOL bName = FALSE) const; + + // Die Formel aendern + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nType); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); + + static USHORT GetReferenceTextPos( const SwFmtFld& rFmt, SwDoc& rDoc); +}; + +inline void SwGetExpField::ChgExpStr(const String& rExpand) + { sExpand = rExpand;} + +inline const String& SwGetExpField::GetExpStr() const + { return sExpand; } + +// wird von der Formatierung abgefragt +inline BOOL SwGetExpField::IsInBodyTxt() const + { return bIsInBodyTxt; } + +// wird von UpdateExpFlds gesetzt (dort ist die Node-Position bekannt) +inline void SwGetExpField::ChgBodyTxtFlag( BOOL bIsInBody ) + { bIsInBodyTxt = bIsInBody; } + + +/*-------------------------------------------------------------------- + Beschreibung: Ausdruck setzen + --------------------------------------------------------------------*/ + +class SwSetExpField; + +class SwSetExpFieldType : public SwValueFieldType +{ + String sName; + const SwNode* pOutlChgNd; + sal_Unicode cDelim; + USHORT nType; + BYTE nLevel; + BOOL bDeleted; + +public: + SwSetExpFieldType( SwDoc* pDoc, const String& rName, + USHORT nType = GSE_EXPR ); + virtual SwFieldType* Copy() const; + virtual const String& GetName() const; + + inline void SetType(USHORT nTyp); + inline USHORT GetType() const; + + void SetSeqFormat(ULONG nFormat); + ULONG GetSeqFormat(); + + BOOL IsDeleted() const { return bDeleted; } + void SetDeleted( BOOL b ) { bDeleted = b; } + + // ueberlagert, weil das Set-Field selbst dafuer sorgt, das + // es aktualisiert wird. + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + inline const String& GetSetRefName() const; + + USHORT SetSeqRefNo( SwSetExpField& rFld ); + + USHORT GetSeqFldList( SwSeqFldList& rList ); + String MakeSeqName( USHORT nSeqNo ); + + // Seqencefelder ggfs. Kapitelweise numerieren + sal_Unicode GetDelimiter() const { return cDelim; } + void SetDelimiter( sal_Unicode c ) { cDelim = c; } + BYTE GetOutlineLvl() const { return nLevel; } + void SetOutlineLvl( BYTE n ) { nLevel = n; } + void SetChapter( SwSetExpField& rFld, const SwNode& rNd ); + // Member nur fuers SwDoc::UpdateExpFld - wird nur waehrend der Laufzeit + // von SequencefeldTypen benoetigt!!! + const SwNode* GetOutlineChgNd() const { return pOutlChgNd; } + void SetOutlineChgNd( const SwNode* p ) { pOutlChgNd = p; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline void SwSetExpFieldType::SetType( USHORT nTyp ) +{ + nType = nTyp; + EnableFormat( !(nType & (GSE_SEQ|GSE_STRING))); +} + +inline USHORT SwSetExpFieldType::GetType() const + { return nType; } + +inline const String& SwSetExpFieldType::GetSetRefName() const + { return sName; } + + +/*-------------------------------------------------------------------- + Beschreibung: Ausdruck + --------------------------------------------------------------------*/ + +class SwSetExpField : public SwFormulaField +{ + String sExpand; + String aPText; + String aSeqText; + BOOL bInput; + USHORT nSeqNo; + USHORT nSubType; + +public: + SwSetExpField(SwSetExpFieldType*, const String& rFormel, ULONG nFmt = 0); + + virtual void SetValue( const double& rVal ); + + virtual String Expand() const; + virtual SwField* Copy() const; + + inline const String& GetExpStr() const; + + inline void ChgExpStr( const String& rExpand ); + + inline void SetPromptText(const String& rStr); + inline const String& GetPromptText() const; + + inline void SetInputFlag(BOOL bInp); + inline BOOL GetInputFlag() const; + + inline void SetSeqText(const String& rStr); + inline const String& GetSeqText() const; + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nType); + + inline BOOL IsSequenceFld() const; + + // fuer SequenceFelder - logische Nummer + inline void SetSeqNumber( USHORT n ) { nSeqNo = n; } + inline USHORT GetSeqNumber() const { return nSeqNo; } + + // Der Name nur erfragen + virtual const String& GetPar1() const; + + // Die Formel + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline const String& SwSetExpField::GetExpStr() const + { return sExpand; } + +inline void SwSetExpField::ChgExpStr( const String& rExpand ) + { sExpand = rExpand; } + +inline void SwSetExpField::SetPromptText(const String& rStr) + { aPText = rStr; } + +inline const String& SwSetExpField::GetPromptText() const + { return aPText; } + +inline void SwSetExpField::SetSeqText(const String& rStr) + { aSeqText = rStr; } + +inline const String& SwSetExpField::GetSeqText() const + { return aSeqText; } + +inline void SwSetExpField::SetInputFlag(BOOL bInp) + { bInput = bInp; } + +inline BOOL SwSetExpField::GetInputFlag() const + { return bInput; } + +inline BOOL SwSetExpField::IsSequenceFld() const + { return 0 != (GSE_SEQ & ((SwSetExpFieldType*)GetTyp())->GetType()); } + +/*-------------------------------------------------------------------- + Beschreibung: Eingabe im Text/Variable setzen + --------------------------------------------------------------------*/ + +class SwInputFieldType : public SwFieldType +{ + SwDoc* pDoc; +public: + SwInputFieldType( SwDoc* pDoc ); + + virtual SwFieldType* Copy() const; + + SwDoc* GetDoc() const { return pDoc; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Eingabefeld + --------------------------------------------------------------------*/ + +class SwInputField : public SwField +{ + String aContent; + String aPText; + USHORT nSubType; +public: + // Direkte Eingabe ueber Dialog alten Wert loeschen + SwInputField(SwInputFieldType*, const String& rContent , + const String& rPrompt, USHORT nSubType = 0, + ULONG nFmt = 0); + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual String Expand() const; + virtual SwField* Copy() const; + + // Content + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // aPromptText + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nSub); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Sortieren der Eingabefelder + --------------------------------------------------------------------*/ + +class SwInputFieldList +{ +public: + SwInputFieldList( SwEditShell* pShell, FASTBOOL bBuildTmpLst = FALSE ); + ~SwInputFieldList(); + + USHORT Count() const; + SwField* GetField(USHORT nId); + + void GotoFieldPos(USHORT nId); + void PushCrsr(); + void PopCrsr(); + + // vergleiche TmpLst mit akt Feldern. Alle neue kommen in die SortLst + // damit sie geupdatet werden koennen. Returnt die Anzahl. + // (Fuer Textbausteine: nur seine Input-Felder aktualisieren) + USHORT BuildSortLst(); + + // Alle unselektierten Felder aus Liste entfernen + void RemoveUnselectedFlds(); + +private: + SwEditShell* pSh; + _SetGetExpFlds* pSrtLst; + SvPtrarr aTmpLst; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Tabellen-Formelfeld + (Implementierung steht in tblcalc.cxx) + --------------------------------------------------------------------*/ + +class SwTblFieldType : public SwValueFieldType +{ +public: + SwTblFieldType(SwDoc* pDocPtr); + virtual SwFieldType* Copy() const; +}; + + +// MSC will den hier nicht +//typedef void (SwField:: *FnScanFormel)( const SwTable&, String&, +// String&, String* = 0, void* = 0 ); + + +class SwTblField : public SwValueField, public SwTableFormula +{ + String sExpand; + USHORT nSubType; + + // suche den TextNode, in dem das Feld steht + virtual const SwNode* GetNodeOfFormula() const; + +public: + SwTblField( SwTblFieldType*, const String& rFormel, + USHORT nSubType = 0, ULONG nFmt = 0); + + virtual void SetValue( const double& rVal ); + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nType); + virtual String Expand() const; + virtual SwField* Copy() const; + + const String& GetExpStr() const { return sExpand; } + void ChgExpStr(const String& rStr) { sExpand = rStr; } + + // berechne sich selbst + void CalcField( SwTblCalcPara& rCalcPara ); + + virtual String GetCntnt(BOOL bName = FALSE) const; + + // Die Formel + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +#endif // _EXPFLD_HXX diff --git a/sw/inc/extinput.hxx b/sw/inc/extinput.hxx new file mode 100644 index 000000000000..4f79b7a64e5c --- /dev/null +++ b/sw/inc/extinput.hxx @@ -0,0 +1,95 @@ +/************************************************************************* + * + * $RCSfile: extinput.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _EXTINPUT_HXX +#define _EXTINPUT_HXX + +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_USHORTS +#include +#endif +#ifndef _PAM_HXX +#include +#endif + +class CommandExtTextInputData; +class CommandExtTextInputPosData; +class Font; + +class SwExtTextInput : public SwPaM +{ + SvUShorts aAttrs; + BOOL bInsText; +public: + SwExtTextInput( const SwPaM& rPam, Ring* pRing = 0 ); + virtual ~SwExtTextInput(); + + void SetInputData( const CommandExtTextInputData& rData ); + Rectangle* GetPosInputData( const CommandExtTextInputPosData& rFill, + const Point* pLayPos = 0 ) const; + void InvalidateRange(); + void SetFontForPos( USHORT nPos, Font& rFont ); + const SvUShorts& GetAttrs() const { return aAttrs; } + BOOL IsInsText() const { return bInsText; } + void SetInsText( BOOL bFlag ) { bInsText = bFlag; } +}; + +#endif //_EXTINPUT_HXX + diff --git a/sw/inc/fchrfmt.hxx b/sw/inc/fchrfmt.hxx new file mode 100644 index 000000000000..91b654861472 --- /dev/null +++ b/sw/inc/fchrfmt.hxx @@ -0,0 +1,119 @@ +/************************************************************************* + * + * $RCSfile: fchrfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FCHRFMT_HXX +#define _FCHRFMT_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class SwCharFmt; +class International; + +// ATT_CHARFMT ********************************************* + + +class SwFmtCharFmt: public SfxPoolItem, public SwClient +{ + friend class SwTxtCharFmt; + SwTxtCharFmt* pTxtAttr; // mein TextAttribut +public: + SwFmtCharFmt( SwCharFmt *pFmt ); + SwFmtCharFmt( const SwFmtCharFmt& rAttr ); + ~SwFmtCharFmt(); // fuer SEXPORT + TYPEINFO(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + // + // XML import cannot be done using importXML, because the SwCharFmt's + // name must be adjusted according to the pool id and access to the SwDoc + // is required. + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& ) const; + + // an das SwTxtCharFmt weiterleiten (vom SwClient) + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + void SetCharFmt( SwFmt* pFmt ) { pFmt->Add(this); } + SwCharFmt* GetCharFmt() const { return (SwCharFmt*)GetRegisteredIn(); } +}; +#endif + diff --git a/sw/inc/fesh.hxx b/sw/inc/fesh.hxx new file mode 100644 index 000000000000..7117003c5e78 --- /dev/null +++ b/sw/inc/fesh.hxx @@ -0,0 +1,654 @@ +/************************************************************************* + * + * $RCSfile: fesh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FESH_HXX +#define _FESH_HXX + +#ifndef _EDITSH_HXX +#include +#endif +#ifndef _ORNTENUM_HXX +#include +#endif +#ifndef _FLYENUM_HXX +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLCHECKER1_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATOR_HPP_ +#include +#endif + +class SwFlyFrm; +class SvEmbeddedObject; +class SwTabCols; +class SvEmbeddedObjectRef; +class SvInPlaceObject; +class SvxBrushItem; +class SwTableAutoFmt; +class SwFrm; +class SwTabFrm; +class SwFmtFrmSize; +class SvxBorderLine; +class SvStorageStream; +class SdrObject; +class Color; +class Outliner; +class SotDataObject; +class SdrViewUserMarker; +class SwFrmFmt; +struct SwSortOptions; + +enum FrmType +{ + //Fuer GetFrmType() und GetSelFrmType(). Der Return-Wert ist eine + //Veroderung. + FRMTYPE_NONE = 0, + FRMTYPE_PAGE = 1, + FRMTYPE_HEADER = 2, + FRMTYPE_FOOTER = 4, + FRMTYPE_BODY = 8, + FRMTYPE_COLUMN = 16, + FRMTYPE_TABLE = 32, + FRMTYPE_FLY_FREE = 64, + FRMTYPE_FLY_ATCNT = 128, + FRMTYPE_FLY_INCNT = 256, + FRMTYPE_FOOTNOTE = 512, + FRMTYPE_FTNPAGE = 1024, + FRMTYPE_FLY_ANY = 2048, + FRMTYPE_DRAWOBJ = 4096, + FRMTYPE_COLSECT = 8192, + FRMTYPE_COLSECTOUTTAB = 16384 +}; + +#define FRMTYPE_ANYCOLSECT ( FRMTYPE_COLSECT | FRMTYPE_COLSECTOUTTAB ) + +enum DrawObjType +{ + DRAW_ANY, + DRAW_CONTROL, + DRAW_SIMPLE +}; + +enum FlyProtectType +{ + FLYPROTECT_CONTENT = 1, // kann verodert werden! + FLYPROTECT_SIZE = 2, + FLYPROTECT_POS = 4, + FLYPROTECT_PARENT = 8, // nur Parents untersuchen + FLYPROTECT_FIXED = 16 // nur nicht aufhebbarer Schutz + // z.B. durch OLE-Server, gilt auch + // fuer Dialog +}; + +enum ObjCntType //Fuer das Ermitteln des Cntnts per Positon (D&D) +{ + OBJCNT_NONE, + OBJCNT_FLY, + OBJCNT_GRF, + OBJCNT_OLE, + OBJCNT_SIMPLE, + OBJCNT_CONTROL, + OBJCNT_URLBUTTON, + + OBJCNT_GROUPOBJ, + OBJCNT_DONTCARE // nicht bestimmbar - unterschiedliche Objecte selektiert +}; + +//fuer GetAnyCurRect +enum CurRectType +{ + RECT_PAGE, //Rect der aktuellen Seite. + RECT_PAGE_CALC, //... Seite wird ggf. Formatiert + RECT_PAGE_PRT, //Rect der aktuellen PrtArea der Seite + RECT_FRM, //Rect des aktuellen Rahmen + RECT_FLY_EMBEDDED, //Rect des aktuellen FlyFrm + RECT_FLY_PRT_EMBEDDED, //Rect der PrtArea des FlyFrm + RECT_SECTION, //Rect des aktuellen Bereichs + RECT_OUTTABSECTION, //Rect des aktuellen Bereichs, + // aber ausserhalb der Tabelle + RECT_SECTION_PRT, //Rect der aktuellen PrtArea des Bereichs + RECT_OUTTABSECTION_PRT, //Rect der aktuellen PrtArea des Bereichs, + // aber ausserhalb der Tabelle + RECT_HEADERFOOTER, //Rect des aktuellen Headers/Footer + RECT_HEADERFOOTER_PRT //Rect der PrtArea des aktuellen Headers/Footers +}; + +struct SwGetCurColNumPara +{ + const SwFrmFmt* pFrmFmt; + const SwRect* pPrtRect, *pFrmRect; + SwGetCurColNumPara() : pFrmFmt( 0 ), pPrtRect( 0 ), pFrmRect( 0 ) {} +}; + +#define SW_PASTESDR_INSERT 1 +#define SW_PASTESDR_REPLACE 2 +#define SW_PASTESDR_SETATTR 3 + + +class SwFEShell : public SwEditShell +{ + SdrViewUserMarker *pChainFrom, + *pChainTo; + + SwFlyFrm *FindFlyFrm() const; + SwFlyFrm *FindFlyFrm( const SvEmbeddedObject *pObj ) const; + + BOOL GotoFly( BOOL bNext, FlyCntType eType = FLYCNTTYPE_ALL ); + + //Actions fuer alle Shells beenden und ChangeLink rufen. + void EndAllActionAndCall(); + + void Scroll( const Point &rPt ); + + void ChangeOpaque( BYTE nLayerId ); + + void GetStartEndCell( SwLayoutFrm *&prStart, SwLayoutFrm *&prEnd ); + + const SwFrm *GetBox( const Point &rPt ) const; + + //0 == in keiner Spalte + USHORT _GetCurColNum( const SwFrm *pFrm, + SwGetCurColNumPara* pPara ) const; + + void _GetTabCols( SwTabCols &rToFill, const SwFrm *pBox ) const; + + BOOL ImpEndCreate(); + + ObjCntType GetObjCntType( const SdrObject& rObj ) const; + + // Methoden fuers kopieren von DrawObjecten + BOOL CopyDrawSel( SwFEShell* pDestShell, const Point& rSttPt, + const Point& rInsPt, BOOL bIsMove ); + +public: + TYPEINFO(); + SwFEShell( SwDoc *pDoc, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > &xSpell, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator > &xHyph, + Window *pWin, + SwRootFrm *pMaster = 0, const SwViewOption *pOpt = 0 ); + SwFEShell( SwEditShell *pShell, Window *pWin ); + ~SwFEShell(); + + // Copy und Paste Methoden fuer das interne Clipboard + BOOL Copy( SwDoc* pClpDoc, const String* pNewClpTxt = 0 ); + BOOL Paste( SwDoc* pClpDoc ); + // Copy-Methode fuer Drag&Drop + BOOL Copy( SwFEShell*, const Point& rSttPt, const Point& rInsPt, + BOOL bIsMove = FALSE ); + + void SelectFlyFrm( SwFlyFrm& rFrm, BOOL bNew = FALSE ); + + // befindet sich der selektierte Rahmen innerhalb eines anderen? + const SwFrmFmt* IsFlyInFly(); + // Innerhalb eines des sichtbaren Ankers? + Rectangle *IsAnchorAtPos( const Point &rPt ) const; + +//SS fuer DrawObjekte und Rahmen----------------------------- + + //Wenn ein Objekt angegeben wurde, so wird genau diese Markiert (anstatt + //ueber die Position zu suchen. + BOOL SelectObj( const Point& rSelPt, BOOL bAddSelect = FALSE, + BOOL bEnterGroup = FALSE, SdrObject *pObj = 0 ); + void DelSelectedObj(); + + //Selektion nach oben unten bewegen (Z-Order). + //TRUE == ganz nach oben/unten + //FALSE == einen ueberholen + void SelectionToTop ( BOOL bTop = TRUE ); + void SelectionToBottom( BOOL bBottom = TRUE ); + + short GetLayerId() const; //1 Heaven, 0 Hell, -1 Uneindeutig + void SelectionToHeaven(); //Ueber dem Dokument + void SelectionToHell(); //Unter dem Dokument + + // folgende zwei Methoden returnen den enum SdrHdlKind, um sich ein + // includen von SVDRAW.HXX zu ersparen als int deklariert. + int IsObjSelectable( const Point& rPt ); + int IsInsideSelectedObj( const Point& rPt ); + + //Returnwerte siehe oben FrmType. + //pPt: Crsr bzw. DocPos; bStopAtFly: Bei Flys anhalten oder ueber den Anchor weitergehen + // Obgleich (0,TRUE) eine Art Standard ist, sind die Parameter nicht defaultet, damit + // bei jeder Benutzung insbesondere das bStopAtFly bewusst genutzt wird. + USHORT GetFrmType( const Point *pPt, BOOL bStopAtFly ) const; + USHORT GetSelFrmType() const; //Selektion (Drawing) + + ObjCntType GetObjCntType( const Point &rPt, SdrObject *&rpObj ) const; + ObjCntType GetObjCntTypeOfSelection( SdrObject** ppObj = 0 ) const; + + //Zum Anpassen der PosAttr bei Ankerwechseln. + SwRect GetObjRect() const; + //Zum Verschieben von Flys mit der Tastatur + SwRect GetFlyRect() const; + void CalcBoundRect( SwRect &rRect, RndStdIds nAnchorId, + SwRelationOrient eRelOrient = FRAME, + BOOL bMirror = FALSE, + Point* pRef = NULL, + Size* pPercent = NULL ) const; + + // Groesse von Drawobjekten setzen + void SetObjRect( const SwRect& rRect ); + + long BeginDrag( const Point *pPt, BOOL bProp ); + long Drag ( const Point *pPt, BOOL bProp ); + long EndDrag ( const Point *pPt, BOOL bProp ); + void BreakDrag(); + + //Methoden fuer die Statuszeile. + Point GetAnchorObjDiff() const; //Abstand zum Anker + Point GetObjAbsPos() const; //Absolute Position + Size GetObjSize() const; //Groesse, ggf. die umschliessende + + //SS fuer die BriefUmschlaege: hole alle Seitengebundenen Objekte + //und setze diese auf eine neue Seite. + void GetPageObjs( SvPtrarr& rFillArr ); + void SetPageObjsNewPage( SvPtrarr& rFillArr, int nOffset = 1 ); + + // zeige die aktuelle Selektion an ( ggfs. den Rahmen/DrawObject) + virtual void MakeSelVisible(); + + // returne das FrmFmt von dem evt. unter dem Point stehenden Object. + // Das Object wird nicht selektiert! + const SwFrmFmt* GetFmtFromObj( const Point& rPt, SwRect** pRectToFill = 0 ) const; + // returns a format too, if the point is over the text of any fly + const SwFrmFmt* GetFmtFromAnyObj( const Point& rPt ) const; + + //Welcher Schutz ist am selektierten Objekt gesetzt? + BYTE IsSelObjProtected( FlyProtectType eType ) const; + + //Liefert neben der Grafik in rName bei gelinkten Grafiken den Namen mit + //Pfad und sonst den Grafiknamen. rbLink ist TRU bei gelinkten Grafiken. + const Graphic *GetGrfAtPos( const Point &rDocPos, + String &rName, BOOL &rbLink ) const; + +//SS fuer Rahmen -------------------------------------------- + + BOOL IsFrmSelected() const; + BOOL GetFlyFrmAttr( SfxItemSet &rSet ) const; + BOOL SetFlyFrmAttr( SfxItemSet &rSet ); + BOOL ResetFlyFrmAttr( USHORT nWhich, const SfxItemSet* pSet = 0 ); + const SwFrmFmt *NewFlyFrm( const SfxItemSet &rSet, BOOL bAnchValid = FALSE, + SwFrmFmt *pParent = 0 ); + void SetFlyPos( const Point &rAbsPos); + Point FindAnchorPos( const Point &rAbsPos, BOOL bMoveIt = FALSE ); + + SwFrmFmt* GetCurFrmFmt() const; //Wenn Rahmen, dann Rahmenvorlage, sonst 0 + void SetFrmFmt( SwFrmFmt *pFmt, BOOL bKeepOrient = FALSE, Point* pDocPos = 0 ); //Wenn Rahmen, dann Rahmenvorlage setzen + + // finde/loeschen den Fly, in dem der Cursor steht + SwFrmFmt* WizzardGetFly(); + BOOL WizzardDelFly(); + + //Selebstaendiges selektieren von Flys + BOOL GotoNextFly(FlyCntType eType = FLYCNTTYPE_ALL) + { return GotoFly( TRUE, eType ); } + BOOL GotoPrevFly(FlyCntType eType = FLYCNTTYPE_ALL) + { return GotoFly( FALSE, eType); } + + //iterieren ueber Flys - fuer Basic-Collections + USHORT GetFlyCount(FlyCntType eType = FLYCNTTYPE_ALL) const; + const SwFrmFmt* GetFlyNum(USHORT nIdx, FlyCntType eType = FLYCNTTYPE_ALL) const; + + //Wenn ein fly selectiert ist, zieht er den Crsr in den ersten CntntFrm + const SwFrmFmt* SelFlyGrabCrsr(); + + //Get FlyFrameFormat; fuer UI Macro Anbindung an Flys + const SwFrmFmt* GetFlyFrmFmt() const; + + //OLE, Server fordert neue Groesse an, die gewuenschten Werte werden + //als Rahmenattribute eingestellt. Wenn die Werte nicht erlaubt sind, + //so wird von der Formatierung geclippt und eine Scalierung eingestellt. + //siehe CalcAndSetScale(). + void RequestObjectResize( const SwRect &rRect, SvEmbeddedObject *pIPObj ); + + //Der Client fuer das OleObject muss bezueglich der Scalierung auf dem + //neuesten Stand gehalten werden. Impl in der WrtShell. + //Wird ein Pointer auf eine Size uebergeben, so ist diese die aktuelle + //Core-Groesse des Objectes. Anderfalls wird die Groesse per GetCurFlyRect() + //besorgt. + virtual void CalcAndSetScale( SvEmbeddedObjectRef xIPObj, + const SwRect *pFlyPrtRect = 0, + const SwRect *pFlyFrmRect = 0 ) = 0; + + //Objekte mit ActivateWhenVisible werden beim Paint Connected. + //gerufen von notxtfrm::Paint, impl in wrtsh + virtual void ConnectObj( SvInPlaceObjectRef xIPObj, const SwRect &rPrt, + const SwRect &rFrm ) = 0; + + //Sichbaren Bereich auf das Object setzen, wenn es noch nicht sichtbar ist. + void MakeObjVisible( const SvEmbeddedObject *pIPObj ) const; + + // setze am selektierten FlyFrame einen Namen + void SetFlyName( const String& rName ); + const String& GetFlyName() const; + + // erezeuge eindeutige Namen fuer Rahmen + String GetUniqueGrfName() const; + String GetUniqueOLEName() const; + String GetUniqueFrameName() const; + + // springe zum benannten Rahmen (Grafik/OLE) + BOOL GotoFly( const String& rName, FlyCntType eType = FLYCNTTYPE_ALL, + BOOL bSelFrame = TRUE ); + // steht an der Position eine Grafik mit einer URL ? + const SwFrmFmt* IsURLGrfAtPos( const Point& rPt, String* pURL = 0, + String *pTargetFrameName = 0, + String *pURLDescription = 0 ) const; + + //Fuer das Chain wird immer der durch das Format spezifizierte Fly + //mit dem durch den Point getroffenen verbunden. + //In rRect wird das Rect des Flys geliefert (fuer Highlight desselben) + int Chainable( SwRect &rRect, const SwFrmFmt &rSource, const Point &rPt ) const; + int Chain( SwFrmFmt &rSource, const Point &rPt ); + void Unchain( SwFrmFmt &rFmt ); + void HideChainMarker(); + void SetChainMarker(); + + Size GetGraphicDefaultSize() const; + +//SS fuer DrawObjekte --------------------- + + //Temporaer um Bug zu umgehen. + void CheckUnboundObjects(); + + //Achtung: Uneindeutikeiten bei Mehrfachselektionen. + BOOL GetObjAttr( SfxItemSet &rSet ) const; + BOOL SetObjAttr( const SfxItemSet &rSet ); + + BOOL GotoObj( BOOL bNext, DrawObjType eType = DRAW_ANY); + + ULONG ControlCount() const; + BOOL GotoControl( ULONG nIndex ); + + //Setzen vom DragMode (z.B. Rotate), tut nix bei Rahmenselektion. + void SetDragMode( UINT16 eSdrDragMode ); + + USHORT IsObjSelected() const; //Liefert gleich die Anzahl der Objekte, + //zaehlt aber nicht die Objekte in Gruppen. + + void EndTextEdit(); //Loescht ggf. das Objekt. + + //Ankertyp des selektierten Objektes, -1 bei Uneindeutigkeit oder + //Rahmenselektion; FLY_PAGE bzw. FLY_AT_CNTNT aus frmatr.hxx sonst. + short GetAnchorId() const; + + //Erzeugen von DrawObjekten, beim Begin wird der Objekttyp mitgegeben. + //Beim End kann ein Cmd mitgegeben werden, hier ist ggf. + //SDRCREATE_RESTRAINTEND fuer Ende oder SDRCREATE_NEXTPOINT fuer ein + //Polygon relevant. Nach dem RESTRAINTEND ist das Objekt erzeugt und + //selektiert. + //Mit BreakCreate wird der Vorgang abgebrochen, dann ist kein Objekt + //mehr selektiert. + BOOL BeginCreate( UINT16 eSdrObjectKind, const Point &rPos ); + BOOL BeginCreate( UINT16 eSdrObjectKind, UINT32 eObjInventor, const Point &); + void MoveCreate ( const Point &rPos ); + BOOL EndCreate ( UINT16 eSdrCreateCmd ); + void BreakCreate(); + BOOL IsDrawCreate() const; + + // Funktionen f�r Rubberbox, um Draw-Objekte zu selektieren + BOOL BeginMark( const Point &rPos ); + void MoveMark ( const Point &rPos ); + BOOL EndMark (); + void BreakMark(); + + //Gruppe erzeugen, aufloesen, nix bei Rahmenselektion. + BOOL IsGroupSelected(); //Kann auch eine Mischselektion sein! + void GroupSelection(); //Hinterher ist die Gruppe selektiert. + void UnGroupSelection(); //Die Einzelobjekte sind Selektiert + //Es koennen noch immer Gruppen dabei sein. + + BOOL IsGroupAllowed() const; + + void MirrorSelection( BOOL bHorizontal ); //Bei FALSE Vertikal + + //Umankern. erlaubt sind: FLY_PAGE und FLY_AT_CNTNT des enum RndStdIds aus + //frmatr.hxx. Hier kein enum wg. Abhaengigkeiten + //Der BOOL ist nur fuer internen Gebrauch! Anker wird nur - anhand der + //aktuellen Dokumentposition - neu gesetzt aber nicht umgesetzt. + void ChgAnchor( int eAnchorId, BOOL bSameOnly = FALSE, + BOOL bPosCorr = TRUE ); + + // hole die selectierten DrawObj als Grafik (MetaFile/Bitmap) + // Return-Wert besagt ob konvertiert wurde!! + BOOL GetDrawObjGraphic( ULONG nFmt, Graphic& rGrf ) const; + + void Paste( SvStorageStream& rStm, USHORT nAction, const Point* pPt = 0 ); + BOOL Paste( const Graphic &rGrf ); + BOOL Paste( SotDataObject& rObj, const Point& rPt ); + + BOOL IsAlignPossible() const; + void SetCalcFieldValueHdl(Outliner* pOutliner); + + //Einfuegen eines DrawObjectes. Das Object muss bereits im DrawModel + // angemeldet sein. + void Insert( SdrObject& rDrawObj, const SfxItemSet* pFlyAttrSet = 0, + SwFrmFmt* = 0, const Point* = 0 ); + + BOOL ReplaceSdrObj( const String& rGrfName, const String& rFltName, + const Graphic* pGrf = 0 ); + +//------------------------------------------ + + //Auskunft ueber naechstliegenden Inhalt zum uebergebenen Point + Point GetCntntPos( const Point& rPoint, BOOL bNext ) const; + + //Layout-Selektion Hiden/Zeigen und aufruf an die CrsrSh weiterreichen. + void ShLooseFcs(); + void ShGetFcs( BOOL bUpdate = TRUE ); + + //PageDescriptor-Schnittstelle + void ChgCurPageDesc( const SwPageDesc& ); + USHORT GetCurPageDesc( const BOOL bCalcFrm = TRUE ) const; + USHORT GetPageDescCnt() const; + SwPageDesc* FindPageDescByName( const String& rName, + BOOL bGetFromPool = FALSE, + USHORT* pPos = 0 ); + + const SwPageDesc& GetPageDesc( USHORT i ) const; + void ChgPageDesc( USHORT i, const SwPageDesc& ); + // if inside all selection only one PageDesc, return this. + // Otherwise return 0 pointer + const SwPageDesc* GetSelectedPageDescs() const; + + const SwRect& GetAnyCurRect( CurRectType eType, + const Point* pPt = 0, + const SvEmbeddedObject *pObj = 0 ) const; + + //Seitennummer der Seite in der der Point liegt, 0 wenn keine + //getroffen ist. + USHORT GetPageNumber( const Point &rPoint ) const; + BOOL GetPageNumber( long nYPos, BOOL bAtCrsrPos, USHORT& rPhyNum, USHORT& rVirtNum, String &rDisplay ) const; + + + void Insert(const String& rGrfName, + const String& rFltName, + const Graphic* pGraphic = 0, + const SfxItemSet* pFlyAttrSet = 0, + const SfxItemSet* pGrfAttrSet = 0, + SwFrmFmt* = 0 ); + + void Insert(SvInPlaceObject *, + const SfxItemSet* pFlyAttrSet = 0, + const SfxItemSet* pGrfAttrSet = 0, + SwFrmFmt* = 0 ); + + void GrfToOle( SvInPlaceObject * ); + void OleToGrf( const Graphic *pGrf ); + + //Attribute der Tabelle besorgen/setzen. + void GetTblAttr( SfxItemSet & ) const; + void SetTblAttr( const SfxItemSet & ); + + //Tabelle vollstaendig selektiert? + BOOL HasWholeTabSelection() const; + //Ist der Inhalt einer Tabellenzelle oder mindestens eine Tabellenzelle + //vollstaendig selektiert ist + BOOL HasBoxSelection() const; + + BOOL InsertRow( USHORT nCnt, BOOL bBehind ); + BOOL InsertCol( USHORT nCnt, BOOL bBehind ); // 0 == am Ende + BOOL DeleteCol(); + BOOL DeleteRow(); + + BOOL DeleteTblSel(); //Aktuelle Selektion, ggf. die ganze Tabelle. + + USHORT MergeTab(); //Merged selektierte Tabellenteile zusammen + //Fehler ueber enum zurueck + BOOL SplitTab( BOOL nVert = TRUE, USHORT nCnt = 1); //Zelle Vertikal oder + //Horizontal s plitten. + BOOL Sort(const SwSortOptions&); //Sortieren. + + void SetRowHeight( const SwFmtFrmSize &rSz ); + //Der Pointer muss vom Aufrufer zerstoert werden wenn != 0 + void GetRowHeight( SwFmtFrmSize *&rpSz ) const; + + void SetBoxAlign( USHORT nOrient ); + USHORT GetBoxAlign() const; //USHRT_MAX fuer uneindeutig! + + //Ausgleichen der Zeilenhoehen. Mit bTstOnly festellen ob mehr als eine + //Zeile markiert ist. + BOOL BalanceRowHeight( BOOL bTstOnly ); + + void SetTabBorders( const SfxItemSet& rSet ); + void GetTabBorders( SfxItemSet& rSet) const; + void SetTabLineStyle(const Color* pColor, BOOL bSetLine = FALSE, const SvxBorderLine* pBorderLine = NULL); + + void SetTabBackground( const SvxBrushItem &rNew ); + void GetTabBackground( SvxBrushItem &rToFill ) const; + + void SetBoxBackground( const SvxBrushItem &rNew ); + BOOL GetBoxBackground( SvxBrushItem &rToFill ) const; //FALSE uneindeutig + + void SetRowBackground( const SvxBrushItem &rNew ); + BOOL GetRowBackground( SvxBrushItem &rToFill ) const; //FALSE uneindeutig + + BOOL IsMouseTabCol( const Point &rPt ) const; + void GetMouseTabCols( SwTabCols &ToFill, const Point &rPt ) const; + void SetMouseTabCols( const SwTabCols &rNew, BOOL bCurRowOnly, + const Point &rPt ); + void GetTabCols( SwTabCols &rToFill ) const; //Spalten- und Randinfo. + void SetTabCols( const SwTabCols &rNew, BOOL bCurRowOnly = TRUE ); + + void ProtectCells(); //Falls eine Tabselektion besteht, wird sie ver- + // nichtet, wenn der Cursor nicht in Readonly darf + void UnProtectCells(); // auf die Tabellenselektin + void UnProtectCells( const String& rTblName ); // diese Tabelle + void UnProtectTbls(); //bei allen Tabellen in der Selektion den Schutz aufheben + BOOL HasTblAnyProtection( const String* pTblName = 0, + BOOL* pFullTblProtection = 0 ); + + void SetHeadlineRepeat( BOOL bSet );//TRUE: Headline soll widerholt werden. + BOOL IsHeadlineRepeat() const; + BOOL IsInRepeatedHeadline() const; + BOOL IsInHeadline() const; + + //Stellt die Breiten der Zellen so ein, dass der Inhalt moeglichst + //nicht umgebrochen werden muss. + //bBalance sorgt fuer einen Ausgleich der markierten Spalten. + void AdjustCellWidth( BOOL bBalance = FALSE ); + //Nicht erlaubt, wenn nur leere Zellen selektiert sind. + BOOL IsAdjustCellWidthAllowed( BOOL bBalance = FALSE ) const; + + //Ausgleich der Zellenbreiten, mit bTstOnly feststellen, ob mehr als + //eine Zelle markiert ist. + BOOL BalanceCellWidth( BOOL bTstOnly ); + + // AutoFormat fuer die Tabelle/TabellenSelection + BOOL SetTableAutoFmt( const SwTableAutoFmt& rNew ); + // Erfrage wie attributiert ist + BOOL GetTableAutoFmt( SwTableAutoFmt& rGet ); + // aender eine Zellenbreite/-Hoehe/Spaltenbreite/Zeilenhoehe + BOOL SetColRowWidthHeight( USHORT eType, USHORT nDiff = 283 ); + // Autosumme + BOOL GetAutoSum( String& rFml ) const; + + //Phy: Tatsaechliche Seitenanzahl. + //Virt: Vom User evtl. gesetzten Offset mit einbeziehen. + USHORT GetPhyPageNum(); + USHORT GetVirtPageNum( const BOOL bCalcFrm = TRUE ); + + // Setzt an der aktuellen Postion einen neuen Page Offset + void SetNewPageOffset( USHORT nOffset ); + void SetPageOffset( USHORT nOffset ); //Aendert den letzten Page Offset + USHORT GetPageOffset() const; //Liefert den letzten Page Offset + + //SS fuer Beschriftungen + void InsertLabel( const SwLabelType eType, const String &rTxt, + const BOOL bBefore, const USHORT nId, + const BOOL bCpyBrd = TRUE ); + + //Das Lineal will auch noch etwas von uns wissen. + USHORT GetCurColNum( SwGetCurColNumPara* pPara = 0 ) const; //0 == in keiner Spalte + USHORT GetCurMouseColNum( const Point &rPt, + SwGetCurColNumPara* pPara = 0 ) const; + USHORT GetCurTabColNum() const; //0 == in keiner Tabelle + USHORT GetCurMouseTabColNum( const Point &rPt ) const; + USHORT GetCurOutColNum( SwGetCurColNumPara* pPara = 0 ) const; // aktuelle aeussere Spalte + // Die Breite des aktuellen Bereichs fuer Spaltendialog + long GetSectionWidth( SwFmt& rFmt ) const; +}; + +#endif diff --git a/sw/inc/fldbas.hxx b/sw/inc/fldbas.hxx new file mode 100644 index 000000000000..a60f82c18798 --- /dev/null +++ b/sw/inc/fldbas.hxx @@ -0,0 +1,522 @@ +/************************************************************************* + * + * $RCSfile: fldbas.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FLDBAS_HXX +#define _FLDBAS_HXX + +#ifndef FIELDIDS_ONLY // SWG-Testreader!! + +#ifndef _LANG_HXX //autogen +#include +#endif +#ifndef _DEBUG_HXX //autogen +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif +#include "calbck.hxx" + +#ifndef _COM_SUN_STAR_UNO_ANY_HXX_ +#include +#endif + +class SwDoc; +class Date; +class Time; +class _SetGetExpFlds; +class SwEditShell; +class SvStringsDtor; +namespace com{namespace star { namespace sun {namespace uno{ class Any;}}}} +class SvNumberFormatter; + +#endif // FIELDIDS_ONLY + +/*-------------------------------------------------------------------- + Beschreibung: die ID's fuer die Feldtypen + --------------------------------------------------------------------*/ + +enum RES_FIELDS +{ +// Fuer die alten Dokumente muessen die Field-Which IDS erhalten bleiben !!!! + RES_FIELDS_BEGIN, + RES_DBFLD = RES_FIELDS_BEGIN, + RES_USERFLD, + RES_FILENAMEFLD, + RES_DBNAMEFLD, + RES_DATEFLD, + RES_TIMEFLD, + RES_PAGENUMBERFLD, + RES_AUTHORFLD, + RES_CHAPTERFLD, + RES_DOCSTATFLD, + RES_GETEXPFLD, + RES_SETEXPFLD, + RES_GETREFFLD, + RES_HIDDENTXTFLD, + RES_POSTITFLD, + RES_FIXDATEFLD, + RES_FIXTIMEFLD, + RES_REGFLD, + RES_VARREGFLD, + RES_SETREFFLD, + RES_INPUTFLD, + RES_MACROFLD, + RES_DDEFLD, + RES_TABLEFLD, + RES_HIDDENPARAFLD, + RES_DOCINFOFLD, + RES_TEMPLNAMEFLD, + RES_DBNEXTSETFLD, + RES_DBNUMSETFLD, + RES_DBSETNUMBERFLD, + RES_EXTUSERFLD, + RES_REFPAGESETFLD, + RES_REFPAGEGETFLD, + RES_INTERNETFLD, + RES_JUMPEDITFLD, + RES_SCRIPTFLD, + RES_DATETIMEFLD, + RES_AUTHORITY, //Table of authorities + RES_FIELDS_END +}; + +/*-------------------------------------------------------------------- + Beschreibung: Liste der FieldTypes am UI + --------------------------------------------------------------------*/ + +enum SwFldTypesEnum +{ + TYP_BEGIN, + TYP_DATEFLD = TYP_BEGIN, // 0 + TYP_TIMEFLD, + TYP_FILENAMEFLD, + TYP_DBNAMEFLD, + TYP_CHAPTERFLD, + TYP_PAGENUMBERFLD, + TYP_DOCSTATFLD, + TYP_AUTHORFLD, + TYP_SETFLD, + TYP_GETFLD, + TYP_FORMELFLD, // 10 + TYP_HIDDENTXTFLD, + TYP_SETREFFLD, + TYP_GETREFFLD, + TYP_DDEFLD, + TYP_MACROFLD, + TYP_INPUTFLD, + TYP_HIDDENPARAFLD, + TYP_DOCINFOFLD, + TYP_DBFLD, + TYP_USERFLD, // 20 + TYP_POSTITFLD, + TYP_TEMPLNAMEFLD, + TYP_SEQFLD, + TYP_DBNEXTSETFLD, + TYP_DBNUMSETFLD, + TYP_DBSETNUMBERFLD, + TYP_CONDTXTFLD, + TYP_NEXTPAGEFLD, + TYP_PREVPAGEFLD, + TYP_EXTUSERFLD, // 30 + TYP_FIXDATEFLD, + TYP_FIXTIMEFLD, + TYP_SETINPFLD, + TYP_USRINPFLD, + TYP_SETREFPAGEFLD, + TYP_GETREFPAGEFLD, + TYP_INTERNETFLD, + TYP_JUMPEDITFLD, + TYP_SCRIPTFLD, // 40 + TYP_AUTHORITY, + TYP_END +}; + + +enum SwFileNameFormat +{ + FF_BEGIN, + FF_NAME = FF_BEGIN, + FF_PATHNAME, + FF_PATH, + FF_NAME_NOEXT, + FF_UI_NAME, + FF_UI_RANGE, + FF_END, + FF_FIXED = 0x8000 +}; + +enum SwVarFormat +{ + VVF_CMD = 0x0010, // Kommando anzeigen + VVF_INVISIBLE = 0x0040, // unsichtbar + VVF_XXP = 0x0400, // 1234% + VVF_XX_XXP = 0x0800, // 1.234,56% + VVF_CLEAR = 0x000f, + +// ab hier neue Formate + VVF_SYS = 0x2000, //Zahlenformat aus der Systemeinstellung + VVF_X = 0x2100, // 1234 + VVF_X_X = 0x2200, // 1234,5 + VVF_X_XX = 0x2300, // 1245,56 + VVF_XX_X = 0x2400, // 1.234,5 + VVF_XX_XX = 0x2500, // 1.234,56 + VVF_XX_XXX = 0x2600, // 1.234,567 + VVF_SYS_CUR = 0x2700, // W„hrungsformat aus der Systemeinstellung + VVF_CUR_X = 0x2800, // DM 1234 + VVF_CUR_XX_XX = 0x2900, // DM 1234,56 DM 1234,00 + VVF_CUR_XX_X0 = 0x2a00, // DM 1234,56 DM 1234,-- + VVF_X_CUR = 0x2b00, // 1234 DM + VVF_XX_XX_CUR = 0x2c00, // 1234,56 DM 1234,00 DM + VVF_XX_X0_CUR = 0x2d00, // 1234,56 DM 1234,-- DM +// Kompatibilitaet: + VF_CMD = VVF_CMD, + VF_INVISIBLE = VVF_INVISIBLE, + VF_XXP = VVF_XXP, + VF_XX_XXP = VVF_XX_XXP, + VF_VISIBLE = VVF_SYS, + VF_XX = VVF_X, + VF_XX_XX = VVF_XX_XX, + VF_XX_XX_CUR = VVF_SYS_CUR, + VF_CLEAR = VVF_CLEAR + +}; + +enum SwGetSetExpType +{ + GSE_STRING = 0x0001, // String + GSE_EXPR = 0x0002, // Expression + GSE_INP = 0x0004, // InputField + GSE_SEQ = 0x0008, // Sequence + GSE_FORMULA = 0x0010 // Formel +}; + +enum SwExtendedSubType +{ + SUB_CMD = 0x0100, // Kommando anzeigen + SUB_INVISIBLE = 0x0200, // unsichtbar + SUB_OWN_FMT = 0x0400 // SwDBField: Uebernimmt Formatierung nicht + // aus Datenbank +}; + +enum SwInputFieldSubType +{ + INP_TXT = 0x01, + INP_USR = 0x02, + INP_VAR = 0x03 +}; + + +enum SwUserType +{ + UF_STRING = 0x01, + UF_EXPR = 0x02 +}; + +enum SwDateTimeSubType +{ + FIXEDFLD = 1, + DATEFLD = 2, + TIMEFLD = 4 +}; + +#ifndef FIELDIDS_ONLY // SWG-Testreader!! + + +extern USHORT __FAR_DATA aTypeTab[]; + +/*-------------------------------------------------------------------- + Beschreibung: Allgemeine Tools + --------------------------------------------------------------------*/ + +String GetResult(double nVal, ULONG nNumFmt, USHORT nLang = LANGUAGE_SYSTEM); +void SetErrorStr(const String& rStr); +//String ExpandDate(const Date& rDate, ULONG nFmt, USHORT nLang); +//String ExpandTime(const Time& rTime, ULONG nFmt, USHORT nLang); +String FormatNumber(USHORT nNum, ULONG nFormat); + +/*-------------------------------------------------------------------- + Beschreibung: Instanzen von SwFields und Abgeleiteten kommen 0-n mal vor. + Zu jeder Klasse SwFields existiert + 1 Instanz der zugehoerigen Typenklasse + Basisklasse aller Feldtypen ist SwFieldType + --------------------------------------------------------------------*/ +class SwFldNames; + +DBG_NAMEEX(SwFieldType); + +class SwFieldType : public SwModify +{ + USHORT nWhich; + + friend void _FinitUI(); // um den Pointer zu loeschen! + static SvStringsDtor* pFldNames; + + static void _GetFldName(); // legt die FldNames an, fldmgr.cxx! +protected: + SwFieldType( USHORT nWhichId ); + +public: + +#ifndef PRODUCT + virtual ~SwFieldType(); +#endif + static const String& GetTypeStr( USHORT nTypeId ); + + // nur in abgeleiteten Klassen + virtual const String& GetName() const; + virtual SwFieldType* Copy() const = 0; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); + + USHORT Which() const { return nWhich; } + + inline void UpdateFlds() const; + + static inline SvStringsDtor* GetFldNames(); +}; + +inline void SwFieldType::UpdateFlds() const +{ + ((SwFieldType*)this)->Modify( 0, 0 ); +} + +/*-------------------------------------------------------------------- + Beschreibung: Basisklasse aller Felder. + Ueber Which wird der Typ des Feldes abgefragt. + Ueber Expand() wird der expandierte Inhalt + des Feldes in Erfahrung gebracht. + --------------------------------------------------------------------*/ + +class SwField +{ + USHORT nLang; // Immer ueber SetLanguage aendern! + ULONG nFormat; + + SwFieldType* pType; +protected: + void SetFormat(ULONG nSet) {nFormat = nSet;} + + SwField(SwFieldType* pTyp, ULONG nFmt = 0, USHORT nLang = LANGUAGE_SYSTEM); +public: + virtual ~SwField(); + + // Typ feststellen + inline SwFieldType* GetTyp() const; + + // neuen Typ setzen (wird fuer das Kopieren zwischen Dokumenten benutzt) + virtual SwFieldType* ChgTyp( SwFieldType* ); + + // Expandierung fuer die Anzeige + virtual String Expand() const = 0; + + // liefert den Namen oder den Inhalt + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual SwField* Copy() const = 0; + + // ResId + USHORT Which() const +#ifdef PRODUCT + { return pType->Which(); } +#else + ; // in fldbas.cxx implementiert +#endif + + // TYP_ID + USHORT GetTypeId() const; + static USHORT GetResId(USHORT nTypeId, BOOL& bAmbigous); + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT); + + // Sprache an der Feldposition + inline USHORT GetLanguage() const; + virtual void SetLanguage(USHORT nLng); + + // Parameter fuer Dialog und BASIC erfragen + inline ULONG GetFormat() const; + virtual const String& GetPar1() const; + virtual String GetPar2() const; + + virtual String GetFormula() const; + + virtual void ChangeFormat(ULONG n); + virtual void SetPar1(const String& rStr); + virtual void SetPar2(const String& rStr); + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); + // hat das Feld eine Action auf dem ClickHandler ? (z.B. INetFelder,..) + FASTBOOL HasClickHdl() const; + // ist es ein Fix-Feld? + FASTBOOL IsFixed() const; +}; + +inline SwFieldType* SwField::GetTyp() const + { return pType; } + +inline ULONG SwField::GetFormat() const + { return nFormat; } + +inline USHORT SwField::GetLanguage() const + { return nLang; } + +/*-------------------------------------------------------------------- + Beschreibung: Felder mit Values, die ueber der Numberformatter + formatiert werden muessen + --------------------------------------------------------------------*/ + +class SwValueFieldType : public SwFieldType +{ + SwDoc* pDoc; + BOOL bUseFormat; // Numberformatter verwenden + +protected: + SwValueFieldType( SwDoc* pDocPtr, USHORT nWhichId ); + SwValueFieldType( const SwValueFieldType& rTyp ); + +public: + inline SwDoc* GetDoc() const { return pDoc; } + inline void SetDoc(SwDoc* pNewDoc) { pDoc = pNewDoc; } + + inline BOOL UseFormat() const { return bUseFormat; } + inline void EnableFormat(BOOL bFormat = TRUE) { bUseFormat = bFormat; } + + String ExpandValue(const double& rVal, ULONG nFmt, USHORT nLng=0) const; + void DoubleToString(String &rValue, const double &rVal, LanguageType eLng) const; + void DoubleToString(String &rValue, const double &rVal, ULONG nFmt) const; +}; + +class SwValueField : public SwField +{ + double fValue; +// String sExpand; + +protected: + SwValueField( SwValueFieldType* pFldType, ULONG nFmt = 0, USHORT nLang = LANGUAGE_SYSTEM, const double fVal = 0.0 ); + SwValueField( const SwValueField& rFld ); + +public: + virtual SwFieldType* ChgTyp( SwFieldType* ); + virtual void SetLanguage(USHORT nLng); +// os: wozu war das denn da? +// virtual void ChangeFormat(ULONG n); + + inline SwDoc* GetDoc() const { return ((SwValueFieldType*)GetTyp())->GetDoc(); } + + virtual double GetValue() const; + virtual void SetValue( const double& rVal ); + + inline String ExpandValue(const double& rVal, ULONG nFmt, USHORT nLng=0) const + { return ((SwValueFieldType*)GetTyp())->ExpandValue(rVal, nFmt, nLng); } + + static ULONG GetSystemFormat(SvNumberFormatter* pFormatter, ULONG nFmt); +}; + +class SwFormulaField : public SwValueField +{ + String sFormula; + +protected: + SwFormulaField( SwValueFieldType* pFldType, ULONG nFmt = 0, const double fVal = 0.0 ); + SwFormulaField( const SwFormulaField& rFld ); + +public: + virtual String GetFormula() const; + void SetFormula(const String& rStr); + + void SetExpandedFormula(const String& rStr); + String GetExpandedFormula() const; + +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Sortierung von Felder nach der Position + --------------------------------------------------------------------*/ +class SwFieldList +{ +public: + SwFieldList(SwEditShell* pShell); + ~SwFieldList(); + + // Felder eines bestimmten Typen aufnehmen + void InsertFields(USHORT nTypeId, const String* pName=0); + + USHORT Count() const; + + SwField* GetLastField() const; + SwField* GetNextField() const; + +private: + SwEditShell* pSh; + _SetGetExpFlds* pSrtLst; +}; + +inline SvStringsDtor* SwFieldType::GetFldNames() +{ + if( !SwFieldType::pFldNames ) + SwFieldType::_GetFldName(); + return SwFieldType::pFldNames; +} + +#endif // FIELDIDS_ONLY + + +#endif // _FLDBAS_HXX diff --git a/sw/inc/flddat.hxx b/sw/inc/flddat.hxx new file mode 100644 index 000000000000..660e8ef3da45 --- /dev/null +++ b/sw/inc/flddat.hxx @@ -0,0 +1,180 @@ +/************************************************************************* + * + * $RCSfile: flddat.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _FLDDAT_HXX +#define _FLDDAT_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif + +#include "fldbas.hxx" + +/*-------------------------------------------------------------------- + Beschreibung: Formate + --------------------------------------------------------------------*/ + +enum SwDateFormat +{ + DF_BEGIN, + //neue Formate: + DFF_SSYS = DF_BEGIN, + DFF_LSYS , + DFF_DMY , + DFF_DMYY , + DFF_DMMY , + DFF_DMMYY, + DFF_DMMMY , + DFF_DMMMYY, + DFF_DDMMY , + DFF_DDMMMY , + DFF_DDMMMYY , + DFF_DDDMMMY , + DFF_DDDMMMYY , + DFF_MY , + DFF_MD , + DFF_YMD , + DFF_YYMD , + DF_END , +// Kompatibilitaet: + DF_SSYS = DFF_SSYS, + DF_LSYS = DFF_LSYS, + DF_SHORT = DFF_DMY, + DF_SCENT = DFF_DMYY, + DF_LMON = DFF_DMMYY, + DF_LMONTH = DFF_DMMMYY, + DF_LDAYMON = DFF_DDMMMYY, + DF_LDAYMONTH= DFF_DDDMMMYY +}; + +enum SwTimeFormat +{ + TF_BEGIN, + TF_SYSTEM=TF_BEGIN, + TF_SSMM_24, + TF_SSMM_12, + TF_END +}; + +enum SwTimeSubFormat +{ + TIME_FIX, + TIME_VAR +}; + +enum SwDateSubFormat +{ + DATE_FIX, + DATE_VAR +}; + +/*-------------------------------------------------------------------- + Beschreibung: Datum/Uhrzeitfeld + --------------------------------------------------------------------*/ + +class SwDateTimeFieldType : public SwValueFieldType +{ +public: + SwDateTimeFieldType(SwDoc* pDoc); + + virtual SwFieldType* Copy() const; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Datum/Uhrzeitfeld + --------------------------------------------------------------------*/ + +class SwDateTimeField : public SwValueField +{ + USHORT nSubType; + long nOffset; // Offset in Minuten + +public: + SwDateTimeField(SwDateTimeFieldType* pType, USHORT nSubType = DATEFLD, + ULONG nFmt = 0, USHORT nLng = 0); + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nSub); + + virtual double GetValue() const; + + virtual void SetPar2(const String& rStr); + virtual String GetPar2() const; + + inline BOOL IsDate() const + { return (nSubType & DATEFLD) != 0; } + + inline void SetOffset(long nMinutes) { nOffset = nMinutes; } + inline long GetOffset() const { return nOffset; } + + ULONG GetDate(BOOL bUseOffset = FALSE) const; + ULONG GetTime(BOOL bUseOffset = FALSE) const; + void SetDateTime(ULONG nDate, ULONG nTime); + static double GetDateTime(SwDoc* pDoc, ULONG nDate, ULONG nTime); + + virtual String Expand() const; + virtual SwField* Copy() const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +#endif // _FLDDAT_HXX diff --git a/sw/inc/fldinit.hxx b/sw/inc/fldinit.hxx new file mode 100644 index 000000000000..b2003c663a55 --- /dev/null +++ b/sw/inc/fldinit.hxx @@ -0,0 +1,72 @@ +/************************************************************************* + * + * $RCSfile: fldinit.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FLDINIT_HXX +#define _FLDINIT_HXX + +/*-------------------------------------------------------------------- + Beschreibung: Tabelle aller FeldInfos + --------------------------------------------------------------------*/ + +void InitFieldInfo(); +void FinitFieldInfo(); + + +#endif // _FLDINIT_HXX diff --git a/sw/inc/fldupde.hxx b/sw/inc/fldupde.hxx new file mode 100644 index 000000000000..c491f8f1084c --- /dev/null +++ b/sw/inc/fldupde.hxx @@ -0,0 +1,73 @@ +/************************************************************************* + * + * $RCSfile: fldupde.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FLDUPDE_HXX +#define _FLDUPDE_HXX + +enum SwFldUpdateFlags +{ + AUTOUPD_OFF, + AUTOUPD_FIELD_ONLY, + AUTOUPD_FIELD_AND_CHARTS, + AUTOUPD_GLOBALSETTING +}; + + +#endif diff --git a/sw/inc/flyenum.hxx b/sw/inc/flyenum.hxx new file mode 100644 index 000000000000..85056f0bef4a --- /dev/null +++ b/sw/inc/flyenum.hxx @@ -0,0 +1,89 @@ +/************************************************************************* + * + * $RCSfile: flyenum.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _FLYENUM_HXX +#define _FLYENUM_HXX + +enum FlyCntType +{ + FLYCNTTYPE_ALL = 0, + FLYCNTTYPE_FRM, + FLYCNTTYPE_GRF, + FLYCNTTYPE_OLE + +}; + +//Returnwerte fuer Chainable und Chain +#define SW_CHAIN_OK 0 +#define SW_CHAIN_NOT_EMPTY 1 //Nur leere Frames duerfen connected werden +#define SW_CHAIN_IS_IN_CHAIN 2 //Destination ist bereits in einer chain +#define SW_CHAIN_WRONG_AREA 3 //Destination steht in einer nicht erlaubten + //Section (Kopf-/Fusszeile) +#define SW_CHAIN_NOT_FOUND 4 //Destination und/oder Source nicht gefunden +#define SW_CHAIN_SOURCE_CHAINED 5 //Source hat bereits einen Follow +#define SW_CHAIN_SELF 6 //Sich selbst zu verketten ist + //natuerlich nicht erleubt. + + + +#endif + + diff --git a/sw/inc/flypos.hxx b/sw/inc/flypos.hxx new file mode 100644 index 000000000000..75d8ed745a60 --- /dev/null +++ b/sw/inc/flypos.hxx @@ -0,0 +1,97 @@ +/************************************************************************* + * + * $RCSfile: flypos.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FLYPOS_HXX +#define _FLYPOS_HXX + + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +class SwCntntNode; +class ViewShell; +class SwFrmFmt; +class SwNodeIndex; + +// Struktur zum Erfragen der akt. freifliegenden Rahmen am Dokument. +class SwPosFlyFrm +{ + const SwFrmFmt* pFrmFmt; // das FlyFrmFmt +// SwPosition* pPos; // Position in den ContentNode + SwNodeIndex* pNdIdx; // es reicht ein Index auf den Node + UINT32 nOrdNum; +public: + SwPosFlyFrm( const SwNodeIndex& , const SwFrmFmt*, USHORT nArrPos ); + virtual ~SwPosFlyFrm(); // virtual fuer die Writer (DLL !!) + + // operatoren fuer das Sort-Array + BOOL operator==( const SwPosFlyFrm& ); + BOOL operator<( const SwPosFlyFrm& ); + + const SwFrmFmt& GetFmt() const { return *pFrmFmt; } + const SwNodeIndex& GetNdIndex() const { return *pNdIdx; } + UINT32 GetOrdNum() const { return nOrdNum; } +}; + +typedef SwPosFlyFrm* SwPosFlyFrmPtr; +SV_DECL_PTRARR_SORT( SwPosFlyFrms, SwPosFlyFrmPtr, 0, 40 ) + +#endif _FLYPOS_HXX diff --git a/sw/inc/fmtanchr.hxx b/sw/inc/fmtanchr.hxx new file mode 100644 index 000000000000..d52d41dacb28 --- /dev/null +++ b/sw/inc/fmtanchr.hxx @@ -0,0 +1,130 @@ +/************************************************************************* + * + * $RCSfile: fmtanchr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTANCHR_HXX +#define _FMTANCHR_HXX + +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _SWTYPES_HXX //autogen +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +struct SwPosition; +class International; +#define IVER_FMTANCHOR_LONGIDX ((USHORT)1) + +//FlyAnchor, Anker des Freifliegenden Rahmen ---- + +class SwFmtAnchor: public SfxPoolItem +{ + SwPosition *pCntntAnchor; //0 Fuer Seitengebundene Rahmen. + //Index fuer Absatzgebundene Rahmen. + //Position fuer Zeichengebundene Rahmen + RndStdIds nAnchorId; + USHORT nPageNum; //Seitennummer bei Seitengeb. Rahmen. + +public: + SwFmtAnchor( RndStdIds eRnd = FLY_PAGE, USHORT nPageNum = 0 ); + SwFmtAnchor( const SwFmtAnchor &rCpy ); + ~SwFmtAnchor(); + + // Zuweisungsoperator + SwFmtAnchor &operator=( const SwFmtAnchor& ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + RndStdIds GetAnchorId() const { return nAnchorId; } + USHORT GetPageNum() const { return nPageNum; } + const SwPosition *GetCntntAnchor() const { return pCntntAnchor; } + + void SetPageNum( USHORT nNew ) { nPageNum = nNew; } + + void SetType( RndStdIds nRndId ) { nAnchorId = nRndId; } + void SetAnchor( const SwPosition *pPos ); +}; + +inline const SwFmtAnchor &SwAttrSet::GetAnchor(BOOL bInP) const + { return (const SwFmtAnchor&)Get( RES_ANCHOR,bInP); } + +inline const SwFmtAnchor &SwFmt::GetAnchor(BOOL bInP) const + { return aSet.GetAnchor(bInP); } +#endif + diff --git a/sw/inc/fmtclbl.hxx b/sw/inc/fmtclbl.hxx new file mode 100644 index 000000000000..7d938d60458c --- /dev/null +++ b/sw/inc/fmtclbl.hxx @@ -0,0 +1,102 @@ +/************************************************************************* + * + * $RCSfile: fmtclbl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTCLBL_HXX +#define _FMTCLBL_HXX + + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class International; + +class SwFmtNoBalancedColumns : public SfxBoolItem +{ +public: + SwFmtNoBalancedColumns( BOOL bFlag = FALSE ) + : SfxBoolItem( RES_COLUMNBALANCE, bFlag ) {} + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT) const; + virtual SvStream& Store(SvStream &, USHORT nItemVersion ) const; +/* virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +*/ virtual USHORT GetVersion( USHORT nFFVer ) const; +}; + +inline const SwFmtNoBalancedColumns &SwAttrSet::GetBalancedColumns(BOOL bInP) const + { return (const SwFmtNoBalancedColumns&)Get( RES_COLUMNBALANCE, bInP ); } + +inline const SwFmtNoBalancedColumns &SwFmt::GetBalancedColumns(BOOL bInP) const + { return aSet.GetBalancedColumns( bInP ); } + +#endif + diff --git a/sw/inc/fmtclds.hxx b/sw/inc/fmtclds.hxx new file mode 100644 index 000000000000..1a3f7194048c --- /dev/null +++ b/sw/inc/fmtclds.hxx @@ -0,0 +1,222 @@ +/************************************************************************* + * + * $RCSfile: fmtclds.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTCLDS_HXX +#define _FMTCLDS_HXX + +#ifndef _SV_COLOR_HXX +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +//Der ColumnDescriptor -------------------------- + +class SwColumn +{ + USHORT nWish; //Wunschbreite incl. Raender. + //Verhaelt sich proportional zum Verhaeltniss: + //Wunschbreite der Umgebung / aktuelle Breite der Spalte + USHORT nUpper; //Oberer Rand + USHORT nLower; //Unterer Rand + USHORT nLeft; //Linker Rand + USHORT nRight; //Rechter Rand + +public: + SwColumn(); + + BOOL operator==( const SwColumn & ); + + + void SetWishWidth( USHORT nNew ) { nWish = nNew; } + void SetUpper( USHORT nNew ) { nUpper = nNew; } + void SetLower( USHORT nNew ) { nLower = nNew; } + void SetLeft ( USHORT nNew ) { nLeft = nNew; } + void SetRight( USHORT nNew ) { nRight = nNew; } + + USHORT GetWishWidth() const { return nWish; } + USHORT GetUpper() const { return nUpper; } + USHORT GetLower() const { return nLower; } + USHORT GetLeft () const { return nLeft; } + USHORT GetRight() const { return nRight; } +}; + +typedef SwColumn* SwColumnPtr; +SV_DECL_PTRARR_DEL( SwColumns, SwColumnPtr, 0, 2 ); + +enum SwColLineAdj +{ + COLADJ_NONE, + COLADJ_TOP, + COLADJ_CENTER, + COLADJ_BOTTOM +}; + +class SwFmtCol : public SfxPoolItem +{ +// Pen aPen; //Pen fuer die Linine zwischen den Spalten + ULONG nLineWidth; //width of the separator line + Color aLineColor; //color of the separator line + + BYTE nLineHeight; //Prozentuale Hoehe der Linien + //(Relativ zu der Hoehe der Spalten incl. UL). + SwColLineAdj eAdj; //Linie wird oben, mittig oder unten ausgerichtet. + + SwColumns aColumns; //Informationen fuer die einzelnen Spalten. + USHORT nWidth; //Gesamtwunschbreite aller Spalten. + + BOOL bOrtho; //Nur wenn dieses Flag gesetzt ist wird beim setzen + //der GutterWidth eine 'optische Verteilung' + //vorgenommen. + //Es muss zurueckgesetzt werden wenn an den + //Spaltenbreiten bzw. den Raendern gedreht wird. + //Wenn es wieder gesetzt wird wird automatisch neu + //gemischt (optisch verteilt). + //Das Flag ist initial gesetzt. + + void Calc( USHORT nGutterWidth, USHORT nAct ); + +public: + SwFmtCol(); + SwFmtCol( const SwFmtCol& ); + ~SwFmtCol(); + + SwFmtCol& operator=( const SwFmtCol& ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + const SwColumns &GetColumns() const { return aColumns; } + SwColumns &GetColumns() { return aColumns; } + USHORT GetNumCols() const { return aColumns.Count(); } +// const Pen& GetLinePen() const { return aPen; } + ULONG GetLineWidth() const { return nLineWidth;} + const Color& GetLineColor() const { return aLineColor;} + + + SwColLineAdj GetLineAdj() const { return eAdj; } + BOOL IsOrtho() const { return bOrtho; } + USHORT GetWishWidth() const { return nWidth; } + BYTE GetLineHeight()const { return nLineHeight; } + + //Return USHRT_MAX wenn uneindeutig. + //Return die kleinste Breite wenn bMin True ist. + USHORT GetGutterWidth( BOOL bMin = FALSE ) const; + +// void SetLinePen( const Pen& rNew ) { aPen = rNew; } + void SetLineWidth(ULONG nWidth) { nLineWidth = nWidth;} + void SetLineColor(const Color& rCol ) { aLineColor = rCol;} + void SetLineHeight( BYTE nNew ) { nLineHeight = nNew; } + void SetLineAdj( SwColLineAdj eNew ){ eAdj = eNew; } + void SetWishWidth( USHORT nNew ) { nWidth = nNew; } + + //Mit dieser Funktion koennen die Spalten (immer wieder) initialisert + //werden. Das Ortho Flag wird automatisch gesetzt. + void Init( USHORT nNumCols, USHORT nGutterWidth, USHORT nAct ); + + //Stellt die Raender fuer die Spalten in aColumns ein. + //Wenn das Flag bOrtho gesetzt ist, werden die Spalten neu optisch + //verteilt. Ist das Flag nicht gesetzt werden die Spaltenbreiten nicht + //veraendert und die Raender werden einfach eingestellt. + void SetGutterWidth( USHORT nNew, USHORT nAct ); + + //Verteilt ebenfalls automatisch neu wenn das Flag gesetzt wird; + //nur dann wird auch der zweite Param. benoetigt und beachtet. + void SetOrtho( BOOL bNew, USHORT nGutterWidth, USHORT nAct ); + + //Fuer den Reader + void _SetOrtho( BOOL bNew ) { bOrtho = bNew; } + + //Berechnet die aktuelle Breite der Spalte nCol. + //Das Verhaeltniss von Wunschbreite der Spalte zum Returnwert ist + //proportional zum Verhaeltniss des Gesamtwunschwertes zu nAct. + USHORT CalcColWidth( USHORT nCol, USHORT nAct ) const; + + //Wie oben, aber es wir die Breite der PrtArea - also das was fuer + //den Anwender die Spalte ist - geliefert. + USHORT CalcPrtColWidth( USHORT nCol, USHORT nAct ) const; +}; + +inline const SwFmtCol &SwAttrSet::GetCol(BOOL bInP) const + { return (const SwFmtCol&)Get( RES_COL,bInP); } + +inline const SwFmtCol &SwFmt::GetCol(BOOL bInP) const + { return aSet.GetCol(bInP); } + +#endif + diff --git a/sw/inc/fmtcnct.hxx b/sw/inc/fmtcnct.hxx new file mode 100644 index 000000000000..df18bed1a5a6 --- /dev/null +++ b/sw/inc/fmtcnct.hxx @@ -0,0 +1,133 @@ +/************************************************************************* + * + * $RCSfile: fmtcnct.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTCNCT_HXX +#define _FMTCNCT_HXX + +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif + + +class SwFlyFrmFmt; +class International; + +//Verbindung (Textfluss) zwischen zwei FlyFrms + +class SwFmtChain: public SfxPoolItem +{ + SwClient aPrev, //Vorgaenger (SwFlyFrmFmt), wenn es diesen gibt. + aNext; //Nachfolger (SwFlyFrmFmt), wenn es diesen gibt. + + +public: + SwFmtChain() : SfxPoolItem( RES_CHAIN ) {} + SwFmtChain( const SwFmtChain &rCpy ); + + inline SwFmtChain &operator=( const SwFmtChain& ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + + SwFlyFrmFmt* GetPrev() const { return (SwFlyFrmFmt*)aPrev.GetRegisteredIn(); } + SwFlyFrmFmt* GetNext() const { return (SwFlyFrmFmt*)aNext.GetRegisteredIn(); } + + + void SetPrev( SwFlyFrmFmt *pFmt ); + void SetNext( SwFlyFrmFmt *pFmt ); +}; + +SwFmtChain &SwFmtChain::operator=( const SwFmtChain &rCpy ) +{ + SetPrev( rCpy.GetPrev() ); + SetNext( rCpy.GetNext() ); + return *this; +} + + +inline const SwFmtChain &SwAttrSet::GetChain(BOOL bInP) const + { return (const SwFmtChain&)Get( RES_CHAIN,bInP); } + +inline const SwFmtChain &SwFmt::GetChain(BOOL bInP) const + { return aSet.GetChain(bInP); } + +#endif + diff --git a/sw/inc/fmtcntnt.hxx b/sw/inc/fmtcntnt.hxx new file mode 100644 index 000000000000..45b00d904c7a --- /dev/null +++ b/sw/inc/fmtcntnt.hxx @@ -0,0 +1,108 @@ +/************************************************************************* + * + * $RCSfile: fmtcntnt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:25 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTCNTNT_HXX +#define _FMTCNTNT_HXX + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class SwNodeIndex; +class SwStartNode; + +//Cntnt, Inhalt des Frame (Header, Footer, Fly) ---- + +class SwFmtCntnt: public SfxPoolItem +{ + SwNodeIndex *pStartNode; + + SwFmtCntnt &operator=( const SwFmtCntnt & ); //Kopieren verboten + +public: +// SwFmtCntnt( const SwNodeIndex *pStartNodeIdx = 0 ); + SwFmtCntnt( const SwStartNode* pStartNode = 0 ); + SwFmtCntnt( const SwFmtCntnt &rCpy ); + ~SwFmtCntnt(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + const SwNodeIndex *GetCntntIdx() const { return pStartNode; } + void SetNewCntntIdx( const SwNodeIndex *pIdx ); +}; + +inline const SwFmtCntnt &SwAttrSet::GetCntnt(BOOL bInP) const + { return (const SwFmtCntnt&)Get( RES_CNTNT,bInP); } + +inline const SwFmtCntnt &SwFmt::GetCntnt(BOOL bInP) const + { return aSet.GetCntnt(bInP); } + +#endif + diff --git a/sw/inc/fmtcol.hxx b/sw/inc/fmtcol.hxx new file mode 100644 index 000000000000..57e67b9dbf7a --- /dev/null +++ b/sw/inc/fmtcol.hxx @@ -0,0 +1,301 @@ +/************************************************************************* + * + * $RCSfile: fmtcol.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTCOL_HXX +#define _FMTCOL_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _FORMAT_HXX +#include +#endif +#ifndef _SWTYPES_HXX +#include // fuer MAXLEVEL +#endif + +class SwDoc; // fuer friend + +class SwFmtColl : public SwFmt +{ +protected: + SwFmtColl( SwAttrPool& rPool, const sal_Char* pFmtName, + const USHORT* pWhichRanges, SwFmtColl* pDerFrom, + USHORT nFmtWhich ) + : SwFmt( rPool, pFmtName, pWhichRanges, pDerFrom, nFmtWhich ) + { SetAuto( FALSE ); } + + SwFmtColl( SwAttrPool& rPool, const String &rFmtName, + const USHORT* pWhichRanges, SwFmtColl* pDerFrom, + USHORT nFmtWhich ) + : SwFmt( rPool, rFmtName, pWhichRanges, pDerFrom, nFmtWhich ) + { SetAuto( FALSE ); } + + +private: + // erstmal wird nicht kopiert und nicht zugewiesen + SwFmtColl(const SwFmtColl & ); + const SwFmtColl &operator=(const SwFmtColl &); +}; + + +class SwTxtFmtColl: public SwFmtColl +{ + friend class SwDoc; +protected: + BYTE nOutlineLevel; + SwTxtFmtColl *pNextTxtFmtColl; + + SwTxtFmtColl( SwAttrPool& rPool, const sal_Char* pFmtCollName, + SwTxtFmtColl* pDerFrom = 0, + USHORT nFmtWh = RES_TXTFMTCOLL ) + : SwFmtColl( rPool, pFmtCollName, aTxtFmtCollSetRange, + pDerFrom, nFmtWh ), + nOutlineLevel( NO_NUMBERING ), + pNextTxtFmtColl( this ) + {} + + SwTxtFmtColl( SwAttrPool& rPool, const String &rFmtCollName, + SwTxtFmtColl* pDerFrom = 0, + USHORT nFmtWh = RES_TXTFMTCOLL ) + : SwFmtColl( rPool, rFmtCollName, aTxtFmtCollSetRange, + pDerFrom, nFmtWh ), + nOutlineLevel( NO_NUMBERING ), + pNextTxtFmtColl( this ) + {} + +public: + + // zum "abfischen" von UL-/LR-/FontHeight Aenderungen + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); + + TYPEINFO(); //Bereits in Basisklasse Client drin. + + inline void SetOutlineLevel( BYTE ); + inline BYTE GetOutlineLevel() const { return nOutlineLevel; } + + inline void SetNextTxtFmtColl(SwTxtFmtColl& rNext); + SwTxtFmtColl& GetNextTxtFmtColl() const { return *pNextTxtFmtColl; } + + BOOL IsAtDocNodeSet() const; + +/*----------------- JP 09.08.94 17:36 ------------------- + wird die Funktionalitaet von Zeichenvorlagen an Absatzvorlagen + ueberhaupt benoetigt ?? + + Wenn, ja dann muessen im TextNode und hier in der TxtCollection ein 2. + Attset fuer die Char-Attribute angelegt werden; damit die Vererbung + und der Zugriff auf die gesetzen Attribute richtig funktioniert!! + + virtual BOOL SetDerivedFrom( SwFmtColl* pDerFrom = 0 ); + + inline SwCharFmt* GetCharFmt() const; + inline BOOL IsCharFmtSet() const; + void SetCharFmt(SwCharFmt *); + void ResetCharFmt(); +inline BOOL SwTxtFmtColl::IsCharFmtSet() const +{ + return aCharDepend.GetRegisteredIn() ? TRUE : FALSE; +} +inline SwCharFmt* SwTxtFmtColl::GetCharFmt() const +{ + return (SwCharFmt*)aCharDepend.GetRegisteredIn(); +} +--------------------------------------------------*/ +}; + +typedef SwTxtFmtColl* SwTxtFmtCollPtr; +SV_DECL_PTRARR(SwTxtFmtColls,SwTxtFmtCollPtr,2,4) + + +class SwGrfFmtColl: public SwFmtColl +{ + friend class SwDoc; +protected: + SwGrfFmtColl( SwAttrPool& rPool, const sal_Char* pFmtCollName, + SwGrfFmtColl* pDerFrom = 0 ) + : SwFmtColl( rPool, pFmtCollName, aGrfFmtCollSetRange, + pDerFrom, RES_GRFFMTCOLL ) + {} + + SwGrfFmtColl( SwAttrPool& rPool, const String &rFmtCollName, + SwGrfFmtColl* pDerFrom = 0 ) + : SwFmtColl( rPool, rFmtCollName, aGrfFmtCollSetRange, + pDerFrom, RES_GRFFMTCOLL ) + {} + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. +}; + +typedef SwGrfFmtColl* SwGrfFmtCollPtr; +SV_DECL_PTRARR(SwGrfFmtColls,SwGrfFmtCollPtr,2,4) + + + +//FEATURE::CONDCOLL +// --------- Bedingte Vorlagen ------------------------------- + +enum Master_CollConditions +{ + PARA_IN_LIST = 0x0001, + PARA_IN_OUTLINE = 0x0002, + PARA_IN_FRAME = 0x0004, + PARA_IN_TABLEHEAD = 0x0008, + PARA_IN_TABLEBODY = 0x0010, + PARA_IN_SECTION = 0x0020, + PARA_IN_FOOTENOTE = 0x0040, + PARA_IN_FOOTER = 0x0080, + PARA_IN_HEADER = 0x0100, + PARA_IN_ENDNOTE = 0x0200, + // ... + USRFLD_EXPRESSION = (int)0x8000 +}; + + +class SwCollCondition : public SwClient +{ + ULONG nCondition; + union + { + ULONG nSubCondition; + String* pFldExpression; + } aSubCondition; + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + + SwCollCondition( SwTxtFmtColl* pColl, ULONG nMasterCond, + ULONG nSubCond = 0 ); + SwCollCondition( SwTxtFmtColl* pColl, ULONG nMasterCond, + const String& rSubExp ); + SwCollCondition( const SwCollCondition& rCpy ); + + virtual ~SwCollCondition(); + + int operator==( const SwCollCondition& rCmp ) const; + int operator!=( const SwCollCondition& rCmp ) const + { return ! (*this == rCmp); } + + ULONG GetCondition() const { return nCondition; } + ULONG GetSubCondition() const { return aSubCondition.nSubCondition; } + const String* GetFldExpression() const + { return aSubCondition.pFldExpression; } + + void SetCondition( ULONG nCond, ULONG nSubCond ); + SwTxtFmtColl* GetTxtFmtColl() const { return (SwTxtFmtColl*)GetRegisteredIn(); } +}; + + +typedef SwCollCondition* SwCollConditionPtr; +SV_DECL_PTRARR_DEL( SwFmtCollConditions, SwCollConditionPtr, 0, 5 ); + +class SwConditionTxtFmtColl : public SwTxtFmtColl +{ + friend class SwDoc; +protected: + SwFmtCollConditions aCondColls; + + SwConditionTxtFmtColl( SwAttrPool& rPool, const sal_Char* pFmtCollName, + SwTxtFmtColl* pDerFrom = 0 ) + : SwTxtFmtColl( rPool, pFmtCollName, pDerFrom, RES_CONDTXTFMTCOLL ) + {} + SwConditionTxtFmtColl( SwAttrPool& rPool, const String &rFmtCollName, + SwTxtFmtColl* pDerFrom = 0 ) + : SwTxtFmtColl( rPool, rFmtCollName, pDerFrom, RES_CONDTXTFMTCOLL ) + {} + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + virtual ~SwConditionTxtFmtColl(); + + // zum "abfischen" von Aenderungen +// virtual void Modify( SfxPoolItem*, SfxPoolItem* ); + + const SwCollCondition* HasCondition( const SwCollCondition& rCond ) const; + const SwFmtCollConditions& GetCondColls() const { return aCondColls; } + void InsertCondition( const SwCollCondition& rCond ); + BOOL RemoveCondition( const SwCollCondition& rCond ); + + void SetConditions( const SwFmtCollConditions& ); +}; + +//FEATURE::CONDCOLL + +// ------------- Inline Implementierungen -------------------- + +inline void SwTxtFmtColl::SetNextTxtFmtColl( SwTxtFmtColl& rNext ) +{ + pNextTxtFmtColl = &rNext; +} + +inline void SwTxtFmtColl::SetOutlineLevel( BYTE nLevel ) +{ + ASSERT( nLevel < MAXLEVEL || nLevel == NO_NUMBERING , + "SwTxtFmtColl: Level too low" ); + nOutlineLevel = nLevel; +} + + +#endif + diff --git a/sw/inc/fmteiro.hxx b/sw/inc/fmteiro.hxx new file mode 100644 index 000000000000..1ffdeeb96e82 --- /dev/null +++ b/sw/inc/fmteiro.hxx @@ -0,0 +1,102 @@ +/************************************************************************* + * + * $RCSfile: fmteiro.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTEIRO_HXX +#define _FMTEIRO_HXX + + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class International; + +class SwFmtEditInReadonly : public SfxBoolItem +{ +public: + SwFmtEditInReadonly( USHORT nId = RES_EDIT_IN_READONLY, + BOOL bPrt = FALSE ) : SfxBoolItem( nId, bPrt ) {} + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT) const; + virtual SvStream& Store(SvStream &, USHORT nItemVersion ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; +}; + +inline const SwFmtEditInReadonly &SwAttrSet::GetEditInReadonly(BOOL bInP) const + { return (const SwFmtEditInReadonly&)Get( RES_EDIT_IN_READONLY,bInP); } + +inline const SwFmtEditInReadonly &SwFmt::GetEditInReadonly(BOOL bInP) const + { return aSet.GetEditInReadonly(bInP); } + +#endif + diff --git a/sw/inc/fmtflcnt.hxx b/sw/inc/fmtflcnt.hxx new file mode 100644 index 000000000000..3a494ace8a1a --- /dev/null +++ b/sw/inc/fmtflcnt.hxx @@ -0,0 +1,98 @@ +/************************************************************************* + * + * $RCSfile: fmtflcnt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFLCNT_HXX +#define _FMTFLCNT_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +class SwFrmFmt; +// ATT_FLYCNT ******************************************************* + +class SwFmtFlyCnt : public SfxPoolItem +{ + friend class SwTxtFlyCnt; + SwTxtFlyCnt* pTxtAttr; // mein TextAttribut + SwFrmFmt* pFmt; // mein Fly/DrawFrame-Format + // geschuetzter CopyCtor + SwFmtFlyCnt& operator=(const SwFmtFlyCnt& rFlyCnt); + +public: + SwFmtFlyCnt( SwFrmFmt *pFrmFmt ); + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + inline SwFrmFmt *GetFrmFmt() const { return pFmt; } + // fuer Undo: loesche "logisch" das FlyFrmFormat, wird sich im + // Undo-Object gemerkt. + inline void SetFlyFmt( SwFrmFmt* pNew = 0 ) { pFmt = pNew; } + + const SwTxtFlyCnt *GetTxtFlyCnt() const { return pTxtAttr; } + SwTxtFlyCnt *GetTxtFlyCnt() { return pTxtAttr; } +}; + +#endif + diff --git a/sw/inc/fmtfld.hxx b/sw/inc/fmtfld.hxx new file mode 100644 index 000000000000..ecd0932d92c4 --- /dev/null +++ b/sw/inc/fmtfld.hxx @@ -0,0 +1,114 @@ +/************************************************************************* + * + * $RCSfile: fmtfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFLD_HXX +#define _FMTFLD_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif + +class SwField; +// ATT_FLD *********************************** + +class SwFmtFld : public SfxPoolItem, public SwClient +{ + friend class SwTxtFld; + friend void _InitCore(); + + SwField *pField; + SwTxtFld* pTxtAttr; // mein TextAttribut + SwFmtFld(); // das default-Attibut + + // geschuetzter CopyCtor + SwFmtFld& operator=(const SwFmtFld& rFld); +public: + TYPEINFO(); + + SwFmtFld( const SwField &rFld ); + SwFmtFld( const SwFmtFld& rAttr ); + ~SwFmtFld(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + const SwField *GetFld() const { return pField; } + SwField *GetFld() { return pField; } + + const SwTxtFld *GetTxtFld() const { return pTxtAttr; } + SwTxtFld *GetTxtFld() { return pTxtAttr; } + + BOOL IsFldInDoc() const; + BOOL IsProtect() const; +}; + + +#endif + diff --git a/sw/inc/fmtfordr.hxx b/sw/inc/fmtfordr.hxx new file mode 100644 index 000000000000..98dde73738ae --- /dev/null +++ b/sw/inc/fmtfordr.hxx @@ -0,0 +1,115 @@ +/************************************************************************* + * + * $RCSfile: fmtfordr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFORDR_HXX +#define _FMTFORDR_HXX + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +//Die FillOrder --------------------------------- + +enum SwFillOrder +{ + SW_FILL_ORDER_BEGIN, + ATT_TOP_DOWN = SW_FILL_ORDER_BEGIN, + ATT_BOTTOM_UP, + ATT_LEFT_TO_RIGHT, + ATT_RIGHT_TO_LEFT, + SW_FILL_ORDER_END +}; + +class SwFmtFillOrder: public SfxEnumItem +{ +public: + SwFmtFillOrder( SwFillOrder = ATT_TOP_DOWN ); + inline SwFmtFillOrder &operator=( const SwFmtFillOrder &rCpy ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetValueCount() const; + + const SwFillOrder GetFillOrder() const { return SwFillOrder(GetValue()); } + void SetFillOrder( const SwFillOrder eNew ) { SetValue( USHORT(eNew) ); } +}; + +inline SwFmtFillOrder &SwFmtFillOrder::operator=( const SwFmtFillOrder &rCpy ) +{ + SetValue( rCpy.GetValue() ); + return *this; +} + +inline const SwFmtFillOrder &SwAttrSet::GetFillOrder(BOOL bInP) const + { return (const SwFmtFillOrder&)Get( RES_FILL_ORDER,bInP); } + +inline const SwFmtFillOrder &SwFmt::GetFillOrder(BOOL bInP) const + { return aSet.GetFillOrder(bInP); } + +#endif + diff --git a/sw/inc/fmtfsize.hxx b/sw/inc/fmtfsize.hxx new file mode 100644 index 000000000000..d52461d34d0e --- /dev/null +++ b/sw/inc/fmtfsize.hxx @@ -0,0 +1,166 @@ +/************************************************************************* + * + * $RCSfile: fmtfsize.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFSIZE_HXX +#define _FMTFSIZE_HXX + +#ifndef _GEN_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _SWTYPES_HXX //autogen +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class International; + +//Die Framesize --------------------------------- + +enum SwFrmSize +{ + ATT_VAR_SIZE, //Frm ist in der Var-Richtung variabel + ATT_FIX_SIZE, //Frm ist in der Var-Richtung unbeweglich + ATT_MIN_SIZE //Der Wert in der Var-Richtung beschreibt eine + //Minimalgroesse, die nicht unter- wohl aber + //ueberschritten werden kann. +}; + +class SwFmtFrmSize: public SfxPoolItem +{ + Size aSize; + SwFrmSize eFrmSize; + BYTE nWidthPercent; //Fuer Tabellen kann die Breite in Prozent + BYTE nHeightPercent; //angegeben sein. + //Fuer Rahmen koennen Hoehe und/oder Breite + //in Prozent angegeben sein. Wenn nur eine + //der Angaben in Prozent angeben ist, kann + //durch den ausgezeichneten Wert 0xFF in der + //anderen Prozentangabe bestimmt werden, das + //sich diese Richtung proportional zur anderen + //verhaelt. Basis fuer die Umrechnung sind fuer + //diesen Fall die Angaben in der Size. + //Die Prozentwerte beziehen sich immer auf die + //Umgebung in der das Objekt steht (PrtArea) + //Auf die Bildschirmbreite abzueglich Raender + //in der BrowseView wenn die Umgebung die Seite + //ist. +public: + SwFmtFrmSize( SwFrmSize eSize = ATT_VAR_SIZE, + SwTwips nWidth = 0, SwTwips nHeight = 0 ); + SwFmtFrmSize& operator=( const SwFmtFrmSize& rCpy ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + virtual USHORT GetVersion( USHORT nFFVer ) const; + + SwFrmSize GetSizeType() const { return eFrmSize; } + void SetSizeType( SwFrmSize eSize ) { eFrmSize = eSize; } + + const Size& GetSize() const { return aSize; } + void SetSize( const Size &rNew ) { aSize = rNew; } + + SwTwips GetHeight() const { return aSize.Height(); } + SwTwips GetWidth() const { return aSize.Width(); } + void SetHeight( const SwTwips nNew ) { aSize.Height() = nNew; } + void SetWidth ( const SwTwips nNew ) { aSize.Width() = nNew; } + + BYTE GetHeightPercent() const{ return nHeightPercent; } + BYTE GetWidthPercent() const { return nWidthPercent; } + void SetHeightPercent( BYTE n ) { nHeightPercent = n; } + void SetWidthPercent ( BYTE n ) { nWidthPercent = n; } + + // Umrechnung der Groesse zwischen SW31/SW40 + Size GetSizeConvertedToSw31( const SvxLRSpaceItem *pLRSpace, + const SvxULSpaceItem *pULSpace ) const; + Size GetSizeConvertedFromSw31( const SvxLRSpaceItem *pLRSpace, + const SvxULSpaceItem *pULSpace ) const; + + virtual BOOL importXML( const NAMESPACE_RTL(OUString)& rValue,USHORT, + const SvXMLUnitConverter& rUnitConv ); + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& rUnitConv ) const; +}; + +inline const SwFmtFrmSize &SwAttrSet::GetFrmSize(BOOL bInP) const + { return (const SwFmtFrmSize&)Get( RES_FRM_SIZE,bInP); } + +inline const SwFmtFrmSize &SwFmt::GetFrmSize(BOOL bInP) const + { return aSet.GetFrmSize(bInP); } + +#endif + diff --git a/sw/inc/fmtftn.hxx b/sw/inc/fmtftn.hxx new file mode 100644 index 000000000000..45d843289664 --- /dev/null +++ b/sw/inc/fmtftn.hxx @@ -0,0 +1,121 @@ +/************************************************************************* + * + * $RCSfile: fmtftn.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFTN_HXX +#define _FMTFTN_HXX + + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +class SwDoc; + +// ATT_FTN ********************************************************** + +class SwFmtFtn: public SfxPoolItem +{ + friend class SwTxtFtn; + SwTxtFtn* pTxtAttr; //mein TextAttribut + String aNumber; //Benutzerdefinierte 'Nummer' + USHORT nNumber; //Automatische Nummerierung + BOOL bEndNote; //Ist es eine Endnote? + + // geschuetzter CopyCtor + SwFmtFtn& operator=(const SwFmtFtn& rFtn); + SwFmtFtn( const SwFmtFtn& ); + +public: + SwFmtFtn( BOOL bEndNote = FALSE ); + ~SwFmtFtn(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + const String &GetNumStr() const { return aNumber; } + const USHORT &GetNumber() const { return nNumber; } + BOOL IsEndNote() const { return bEndNote;} + + void SetNumStr( const String& rStr ) { aNumber = rStr; } + void SetNumber( USHORT nNo ) { nNumber = nNo; } + void SetEndNote( BOOL b ); + + void SetNumber( const SwFmtFtn& rFtn ) + { nNumber = rFtn.nNumber; aNumber = rFtn.aNumber; } + + const SwTxtFtn *GetTxtFtn() const { return pTxtAttr; } + SwTxtFtn *GetTxtFtn() { return pTxtAttr; } + + void GetFtnText( String& rStr ) const; + + // returnt den anzuzeigenden String der Fuss-/Endnote + String GetViewNumStr( const SwDoc& rDoc, BOOL bInclStrs = FALSE ) const; +}; + + +#endif + diff --git a/sw/inc/fmtftntx.hxx b/sw/inc/fmtftntx.hxx new file mode 100644 index 000000000000..4547809ab7e7 --- /dev/null +++ b/sw/inc/fmtftntx.hxx @@ -0,0 +1,183 @@ +/************************************************************************* + * + * $RCSfile: fmtftntx.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTFTNTX_HXX +#define _FMTFTNTX_HXX + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _NUMRULE_HXX +#include +#endif + + +enum SwFtnEndPosEnum +{ + FTNEND_ATPGORDOCEND, // at page or document end + FTNEND_ATTXTEND, // at end of the current text end + FTNEND_ATTXTEND_OWNNUMSEQ, // -""- and with own number sequence + FTNEND_ATTXTEND_OWNNUMANDFMT, // -""- and with onw numberformat + FTNEND_ATTXTEND_END +}; + + +class SwFmtFtnEndAtTxtEnd : public SfxEnumItem +{ + String sPrefix; + String sSuffix; + SwNumType aFmt; + USHORT nOffset; + +protected: + SwFmtFtnEndAtTxtEnd( USHORT nWhich, SwFtnEndPosEnum ePos ) + : SfxEnumItem( nWhich, ePos ), nOffset( 0 ) + {} + SwFmtFtnEndAtTxtEnd( const SwFmtFtnEndAtTxtEnd& rAttr ) + : SfxEnumItem( rAttr ), nOffset( rAttr.nOffset ), aFmt( rAttr.aFmt ), + sPrefix( rAttr.sPrefix ), sSuffix( rAttr.sSuffix ) + {} + +public: + virtual USHORT GetValueCount() const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer ) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + virtual int operator==( const SfxPoolItem& ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + +// will be used at time?? +// void FillVariable( SbxVariable &rVar, +// SfxMapUnit eCoreMetric, +// SfxMapUnit eUserMetric ) const; +// virtual SfxArgumentError SetVariable( const SbxVariable &rVal, +// SfxMapUnit eCoreMetric, +// SfxMapUnit eUserMetric ); + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + inline BOOL IsAtEnd() const { return FTNEND_ATPGORDOCEND != GetValue(); } + + SwFmtFtnEndAtTxtEnd & operator=( const SwFmtFtnEndAtTxtEnd & rAttr ); + + SvxExtNumType GetNumType() const { return aFmt.eType; } + void SetNumType( SvxExtNumType eType ) { aFmt.eType = eType; } + + const SwNumType& GetSwNumType() const { return aFmt; } + + USHORT GetOffset() const { return nOffset; } + void SetOffset( USHORT nOff ) { nOffset = nOff; } + + const String& GetPrefix() const { return sPrefix; } + void SetPrefix(const String& rSet) { sPrefix = rSet; } + + const String& GetSuffix() const { return sSuffix; } + void SetSuffix(const String& rSet) { sSuffix = rSet; } +}; + +class SwFmtFtnAtTxtEnd : public SwFmtFtnEndAtTxtEnd +{ +public: + SwFmtFtnAtTxtEnd( SwFtnEndPosEnum ePos = FTNEND_ATPGORDOCEND ) + : SwFmtFtnEndAtTxtEnd( RES_FTN_AT_TXTEND, ePos ) + {} + + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; +}; + +class SwFmtEndAtTxtEnd : public SwFmtFtnEndAtTxtEnd +{ +public: + SwFmtEndAtTxtEnd( SwFtnEndPosEnum ePos = FTNEND_ATPGORDOCEND ) + : SwFmtFtnEndAtTxtEnd( RES_END_AT_TXTEND, ePos ) + { + SetNumType( SVX_NUM_ROMAN_LOWER ); + } + + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; +}; + + + +inline const SwFmtFtnAtTxtEnd &SwAttrSet::GetFtnAtTxtEnd(BOOL bInP) const + { return (const SwFmtFtnAtTxtEnd&)Get( RES_FTN_AT_TXTEND, bInP); } +inline const SwFmtEndAtTxtEnd &SwAttrSet::GetEndAtTxtEnd(BOOL bInP) const + { return (const SwFmtEndAtTxtEnd&)Get( RES_END_AT_TXTEND, bInP); } + + +inline const SwFmtFtnAtTxtEnd &SwFmt::GetFtnAtTxtEnd(BOOL bInP) const + { return aSet.GetFtnAtTxtEnd(bInP); } +inline const SwFmtEndAtTxtEnd &SwFmt::GetEndAtTxtEnd(BOOL bInP) const + { return aSet.GetEndAtTxtEnd(bInP); } + +#endif + diff --git a/sw/inc/fmthbsh.hxx b/sw/inc/fmthbsh.hxx new file mode 100644 index 000000000000..2a9e5f0a5294 --- /dev/null +++ b/sw/inc/fmthbsh.hxx @@ -0,0 +1,112 @@ +/************************************************************************* + * + * $RCSfile: fmthbsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTHBSH_HXX +#define _FMTHBSH_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +// ATT_SOFTHYPH ****************************** +// Attribut fuer benutzerdefinierte Trennstellen. + +class SwFmtSoftHyph : public SfxPoolItem +{ +public: + SwFmtSoftHyph(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + inline SwFmtSoftHyph& operator=(const SwFmtSoftHyph& rSH) { + return *this; + } +}; + +// ATT_HARDBLANK ****************************** +// Attribut fuer geschuetzte Leerzeichen. + +class SwFmtHardBlank : public SfxPoolItem +{ + sal_Unicode cChar; +public: + SwFmtHardBlank( sal_Unicode cCh, BOOL bCheck = TRUE ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + virtual USHORT GetVersion( USHORT nFFVer ) const; + + inline sal_Unicode GetChar() const { return cChar; } + inline SwFmtHardBlank& operator=(const SwFmtHardBlank& rHB) + { cChar = rHB.GetChar(); return *this; } +}; + + +#endif + diff --git a/sw/inc/fmthdft.hxx b/sw/inc/fmthdft.hxx new file mode 100644 index 000000000000..9cbd226e222e --- /dev/null +++ b/sw/inc/fmthdft.hxx @@ -0,0 +1,160 @@ +/************************************************************************* + * + * $RCSfile: fmthdft.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTHDFT_HXX +#define _FMTHDFT_HXX + +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif + +class SwFrmFmt; +class International; + + +//Kopfzeile, fuer Seitenformate +//Client von FrmFmt das den Header beschreibt. + +class SwFmtHeader: public SfxPoolItem, public SwClient +{ + BOOL bActive; //Nur zur Steuerung (Erzeugung des Inhaltes) + +public: + SwFmtHeader( BOOL bOn = FALSE ); + SwFmtHeader( SwFrmFmt *pHeaderFmt ); + SwFmtHeader( const SwFmtHeader &rCpy ); + ~SwFmtHeader(); + SwFmtHeader& operator=( const SwFmtHeader &rCpy ); + + TYPEINFO(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + const SwFrmFmt *GetHeaderFmt() const { return (SwFrmFmt*)pRegisteredIn; } + SwFrmFmt *GetHeaderFmt() { return (SwFrmFmt*)pRegisteredIn; } + + BOOL IsActive() const { return bActive; } + void SetActive( BOOL bNew = TRUE ) { bActive = bNew; } +}; + +//Fusszeile, fuer Seitenformate +//Client von FrmFmt das den Footer beschreibt. + +class SwFmtFooter: public SfxPoolItem, public SwClient +{ + BOOL bActive; //Nur zur Steuerung (Erzeugung des Inhaltes) + +public: + SwFmtFooter( BOOL bOn = FALSE ); + SwFmtFooter( SwFrmFmt *pFooterFmt ); + SwFmtFooter( const SwFmtFooter &rCpy ); + ~SwFmtFooter(); + SwFmtFooter& operator=( const SwFmtFooter &rCpy ); + + TYPEINFO(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + const SwFrmFmt *GetFooterFmt() const { return (SwFrmFmt*)pRegisteredIn; } + SwFrmFmt *GetFooterFmt() { return (SwFrmFmt*)pRegisteredIn; } + + BOOL IsActive() const { return bActive; } + void SetActive( BOOL bNew = TRUE ) { bActive = bNew; } +}; + +inline const SwFmtHeader &SwAttrSet::GetHeader(BOOL bInP) const + { return (const SwFmtHeader&)Get( RES_HEADER,bInP); } +inline const SwFmtFooter &SwAttrSet::GetFooter(BOOL bInP) const + { return (const SwFmtFooter&)Get( RES_FOOTER,bInP); } + +inline const SwFmtHeader &SwFmt::GetHeader(BOOL bInP) const + { return aSet.GetHeader(bInP); } +inline const SwFmtFooter &SwFmt::GetFooter(BOOL bInP) const + { return aSet.GetFooter(bInP); } + +#endif + diff --git a/sw/inc/fmtinfmt.hxx b/sw/inc/fmtinfmt.hxx new file mode 100644 index 000000000000..752866cff4d5 --- /dev/null +++ b/sw/inc/fmtinfmt.hxx @@ -0,0 +1,148 @@ +/************************************************************************* + * + * $RCSfile: fmtinfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTINFMT_HXX +#define _FMTINFMT_HXX + + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX +#include +#endif + +class SvxMacro; +class SvxMacroTableDtor; +class International; +// ATT_INETFMT ********************************************* + +class SwFmtINetFmt: public SfxPoolItem +{ + friend class SwTxtINetFmt; + + String aURL; // die URL + String aTargetFrame; // in diesen Frame soll die URL + String aINetFmt; + String aVisitedFmt; + String aName; // Name des Links + SvxMacroTableDtor* pMacroTbl; + SwTxtINetFmt* pTxtAttr; // mein TextAttribut + USHORT nINetId; + USHORT nVisitedId; +public: + SwFmtINetFmt( const String& rURL, const String& rTarget ); + SwFmtINetFmt( const SwFmtINetFmt& rAttr ); + virtual ~SwFmtINetFmt(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ); + + virtual USHORT GetVersion( USHORT nFFVer ) const; + + const SwTxtINetFmt* GetTxtINetFmt() const { return pTxtAttr; } + SwTxtINetFmt* GetTxtINetFmt() { return pTxtAttr; } + + const String& GetValue() const { return aURL; } + void SetValue( const String& rS ) { aURL = rS; } + + const String& GetName() const { return aName; } + void SetName( const String& rNm ) { aName = rNm; } + + const String& GetTargetFrame() const { return aTargetFrame; } + void SetTargetFrame( const String& rNm ){ aTargetFrame = rNm; } + + const String& GetINetFmt() const { return aINetFmt; } + void SetINetFmt( const String& rNm ) { aINetFmt = rNm; } + + const String& GetVisitedFmt() const { return aVisitedFmt; } + void SetVisitedFmt( const String& rNm ) { aVisitedFmt = rNm; } + + USHORT GetINetFmtId() const { return nINetId; } + void SetINetFmtId( USHORT nNew ) { nINetId = nNew; } + + USHORT GetVisitedFmtId() const { return nVisitedId; } + void SetVisitedFmtId( USHORT nNew ) { nVisitedId = nNew; } + + // setze eine neue oder loesche die akt. MakroTabelle + void SetMacroTbl( const SvxMacroTableDtor* pTbl = 0 ); + const SvxMacroTableDtor* GetMacroTbl() const { return pMacroTbl; } + + // setze / erfrage ein Makro + void SetMacro( USHORT nEvent, const SvxMacro& rMacro ); + const SvxMacro* GetMacro( USHORT nEvent ) const; +}; + + +#endif + diff --git a/sw/inc/fmtline.hxx b/sw/inc/fmtline.hxx new file mode 100644 index 000000000000..cb7ec347a351 --- /dev/null +++ b/sw/inc/fmtline.hxx @@ -0,0 +1,113 @@ +/************************************************************************* + * + * $RCSfile: fmtline.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef SW_FMTLINE_HXX +#define SW_FMTLINE_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +class International; + +class SwFmtLineNumber: public SfxPoolItem +{ + ULONG nStartValue :24; //Startwert fuer den Absatz, 0 == kein Startwert + ULONG bCountLines :1; //Zeilen des Absatzes sollen mitgezaehlt werden. + +public: + SwFmtLineNumber(); + ~SwFmtLineNumber(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + ULONG GetStartValue() const { return nStartValue; } + BOOL IsCount() const { return bCountLines != 0; } + + void SetStartValue( ULONG nNew ) { nStartValue = nNew; } + void SetCountLines( BOOL b ) { bCountLines = b; } +}; + +inline const SwFmtLineNumber &SwAttrSet::GetLineNumber(BOOL bInP) const + { return (const SwFmtLineNumber&)Get( RES_LINENUMBER,bInP); } + +inline const SwFmtLineNumber &SwFmt::GetLineNumber(BOOL bInP) const + { return aSet.GetLineNumber(bInP); } + +#endif + diff --git a/sw/inc/fmtlsplt.hxx b/sw/inc/fmtlsplt.hxx new file mode 100644 index 000000000000..22228c5d0454 --- /dev/null +++ b/sw/inc/fmtlsplt.hxx @@ -0,0 +1,104 @@ +/************************************************************************* + * + * $RCSfile: fmtlsplt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTTSPLT_HXX +#define _FMTTSPLT_HXX + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +class International; + +class SwFmtLayoutSplit : public SfxBoolItem +{ +public: + SwFmtLayoutSplit( BOOL bSplit = TRUE ) : SfxBoolItem( RES_LAYOUT_SPLIT, bSplit ) {} + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT) const; + virtual SvStream& Store(SvStream &, USHORT nItemVersion ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + virtual BOOL importXML( const NAMESPACE_RTL(OUString)& rValue,USHORT, + const SvXMLUnitConverter& rUnitConv ); + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& rUnitConv ) const; +}; + +inline const SwFmtLayoutSplit &SwAttrSet::GetLayoutSplit(BOOL bInP) const + { return (const SwFmtLayoutSplit&)Get( RES_LAYOUT_SPLIT,bInP); } + +inline const SwFmtLayoutSplit &SwFmt::GetLayoutSplit(BOOL bInP) const + { return aSet.GetLayoutSplit(bInP); } + +#endif + diff --git a/sw/inc/fmtornt.hxx b/sw/inc/fmtornt.hxx new file mode 100644 index 000000000000..64b424528295 --- /dev/null +++ b/sw/inc/fmtornt.hxx @@ -0,0 +1,206 @@ +/************************************************************************* + * + * $RCSfile: fmtornt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTORNT_HXX +#define _FMTORNT_HXX + +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _SWTYPES_HXX //autogen +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _ORNTENUM_HXX +#include +#endif + +class International; + +#define IVER_VERTORIENT_REL ((USHORT)0x0001) + +class SwFmtVertOrient: public SfxPoolItem +{ + SwTwips nYPos; //Enthaelt _immer_ die aktuelle RelPos. + SwVertOrient eOrient; + SwRelationOrient eRelation; +public: + TYPEINFO(); + SwFmtVertOrient( SwTwips nY = 0, SwVertOrient eVert = VERT_NONE, + SwRelationOrient eRel = PRTAREA ); + inline SwFmtVertOrient &operator=( const SwFmtVertOrient &rCpy ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + SwVertOrient GetVertOrient() const { return eOrient; } + SwRelationOrient GetRelationOrient() const { return eRelation; } + void SetVertOrient( SwVertOrient eNew ) { eOrient = eNew; } + void SetRelationOrient( SwRelationOrient eNew ) { eRelation = eNew; } + + SwTwips GetPos() const { return nYPos; } + void SetPos( SwTwips nNew ) { nYPos = nNew; } + + SwTwips GetPosConvertedToSw31( const SvxULSpaceItem *pULSpace ) const; + SwTwips GetPosConvertedFromSw31( const SvxULSpaceItem *pULSpace ) const; + + virtual BOOL importXML( const NAMESPACE_RTL(OUString)& rValue,USHORT, + const SvXMLUnitConverter& rUnitConv ); + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& rUnitConv ) const; +}; + +//SwFmtHoriOrient, wie und woran orientiert -- +// sich der FlyFrm in der Hoizontalen ---------- + +#define IVER_HORIORIENT_TOGGLE ((USHORT)0x0001) +#define IVER_HORIORIENT_REL ((USHORT)0x0002) + +class SwFmtHoriOrient: public SfxPoolItem +{ + SwTwips nXPos; //Enthaelt _immer_ die aktuelle RelPos. + SwHoriOrient eOrient; + SwRelationOrient eRelation; + BOOL bPosToggle : 1; // auf geraden Seiten Position spiegeln +public: + TYPEINFO(); + SwFmtHoriOrient( SwTwips nX = 0, SwHoriOrient eHori = HORI_NONE, + SwRelationOrient eRel = PRTAREA, BOOL bPos = FALSE ); + inline SwFmtHoriOrient &operator=( const SwFmtHoriOrient &rCpy ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + SwHoriOrient GetHoriOrient() const { return eOrient; } + SwRelationOrient GetRelationOrient() const { return eRelation; } + void SetHoriOrient( SwHoriOrient eNew ) { eOrient = eNew; } + void SetRelationOrient( SwRelationOrient eNew ) { eRelation = eNew; } + + SwTwips GetPos() const { return nXPos; } + void SetPos( SwTwips nNew ) { nXPos = nNew; } + + SwTwips GetPosConvertedToSw31( const SvxLRSpaceItem *pLRSpace ) const; + SwTwips GetPosConvertedFromSw31( const SvxLRSpaceItem *pLRSpace ) const; + + BOOL IsPosToggle() const { return bPosToggle; } + void SetPosToggle( BOOL bNew ) { bPosToggle = bNew; } + + virtual BOOL importXML( const NAMESPACE_RTL(OUString)& rValue,USHORT, + const SvXMLUnitConverter& rUnitConv ); + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& rUnitConv ) const; +}; + +inline SwFmtVertOrient &SwFmtVertOrient::operator=( const SwFmtVertOrient &rCpy ) +{ + nYPos = rCpy.GetPos(); + eOrient = rCpy.GetVertOrient(); + eRelation = rCpy.GetRelationOrient(); + return *this; +} +inline SwFmtHoriOrient &SwFmtHoriOrient::operator=( const SwFmtHoriOrient &rCpy ) +{ + nXPos = rCpy.GetPos(); + eOrient = rCpy.GetHoriOrient(); + eRelation = rCpy.GetRelationOrient(); + bPosToggle = rCpy.IsPosToggle(); + return *this; +} + +inline const SwFmtVertOrient &SwAttrSet::GetVertOrient(BOOL bInP) const + { return (const SwFmtVertOrient&)Get( RES_VERT_ORIENT,bInP); } +inline const SwFmtHoriOrient &SwAttrSet::GetHoriOrient(BOOL bInP) const + { return (const SwFmtHoriOrient&)Get( RES_HORI_ORIENT,bInP); } + +inline const SwFmtVertOrient &SwFmt::GetVertOrient(BOOL bInP) const + { return aSet.GetVertOrient(bInP); } +inline const SwFmtHoriOrient &SwFmt::GetHoriOrient(BOOL bInP) const + { return aSet.GetHoriOrient(bInP); } + + +#endif + diff --git a/sw/inc/fmtpdsc.hxx b/sw/inc/fmtpdsc.hxx new file mode 100644 index 000000000000..d8353ea33e87 --- /dev/null +++ b/sw/inc/fmtpdsc.hxx @@ -0,0 +1,150 @@ +/************************************************************************* + * + * $RCSfile: fmtpdsc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTPDSC_HXX +#define _FMTPDSC_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif + +class SwPageDesc; +class SwHistory; +class SwPaM; +class International; + +//Pagedescriptor +//Client vom SwPageDesc der durch das Attribut "beschrieben" wird. + +#define IVER_FMTPAGEDESC_NOAUTO ((USHORT)0x0001) +#define IVER_FMTPAGEDESC_LONGPAGE ((USHORT)0x0002) + +class SwFmtPageDesc : public SfxPoolItem, public SwClient +{ + // diese "Doc"-Funktion ist friend, um nach dem kopieren das + // Auto-Flag setzen zu koennen !! + friend BOOL InsAttr( SwDoc*, const SwPaM &, const SfxItemSet&, USHORT, + SwHistory* ); + USHORT nNumOffset; // Seitennummer Offset + USHORT nDescNameIdx; // SW3-Reader: Stringpool-Index des Vorlagennamens + SwModify* pDefinedIn; // Verweis auf das Objekt, in dem das + // Attribut gesetzt wurde (CntntNode/Format) + +public: + SwFmtPageDesc( const SwPageDesc *pDesc = 0 ); + SwFmtPageDesc( const SwFmtPageDesc &rCpy ); + SwFmtPageDesc &operator=( const SwFmtPageDesc &rCpy ); + ~SwFmtPageDesc(); + + TYPEINFO(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + + SwPageDesc *GetPageDesc() { return (SwPageDesc*)GetRegisteredIn(); } + const SwPageDesc *GetPageDesc() const { return (SwPageDesc*)GetRegisteredIn(); } + + USHORT GetNumOffset() const { return nNumOffset; } + void SetNumOffset( USHORT nNum ) { nNumOffset = nNum; } + + // erfrage/setze, wo drin das Attribut verankert ist + inline const SwModify* GetDefinedIn() const { return pDefinedIn; } + void ChgDefinedIn( const SwModify* pNew ) { pDefinedIn = (SwModify*)pNew; } + + // fuer den SW3-Reader: + USHORT GetDescNameIdx() const { return nDescNameIdx; } + void SetDescNameIdx( USHORT n ) { nDescNameIdx = n; } + // + // this item must be ignored while comparing item sets during XML export + virtual BOOL equalsXML( const SfxPoolItem& ) const; +}; + +inline const SwFmtPageDesc &SwAttrSet::GetPageDesc(BOOL bInP) const + { return (const SwFmtPageDesc&)Get( RES_PAGEDESC,bInP); } + +inline const SwFmtPageDesc &SwFmt::GetPageDesc(BOOL bInP) const + { return aSet.GetPageDesc(bInP); } + + +#endif + diff --git a/sw/inc/fmtrfmrk.hxx b/sw/inc/fmtrfmrk.hxx new file mode 100644 index 000000000000..4886aabdd59a --- /dev/null +++ b/sw/inc/fmtrfmrk.hxx @@ -0,0 +1,102 @@ +/************************************************************************* + * + * $RCSfile: fmtrfmrk.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTRFMRK_HXX +#define _FMTRFMRK_HXX + + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +// ATT_REFMARK ******************************************************* + +class SwFmtRefMark : public SfxPoolItem +{ + friend class SwTxtRefMark; + SwTxtRefMark* pTxtAttr; // mein TextAttribut + + // geschuetzter CopyCtor + SwFmtRefMark& operator=(const SwFmtRefMark& rRefMark); + String aRefName; + +public: + SwFmtRefMark( const String& rTxt ); + SwFmtRefMark( const SwFmtRefMark& rRefMark ); + ~SwFmtRefMark( ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + + const SwTxtRefMark *GetTxtRefMark() const { return pTxtAttr; } + SwTxtRefMark *GetTxtRefMark() { return pTxtAttr; } + + inline String &GetRefName() { return aRefName; } + inline const String &GetRefName() const { return aRefName; } +}; + +#endif + diff --git a/sw/inc/fmtsrnd.hxx b/sw/inc/fmtsrnd.hxx new file mode 100644 index 000000000000..2e6318821cdf --- /dev/null +++ b/sw/inc/fmtsrnd.hxx @@ -0,0 +1,142 @@ +/************************************************************************* + * + * $RCSfile: fmtsrnd.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTSRND_HXX +#define _FMTSRND_HXX + +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif + +class International; + +//SwFmtSurround, wie soll sich der --------------- +// Dokumentinhalt unter dem Rahmen verhalten --- + +enum SwSurround { + SURROUND_BEGIN, + SURROUND_NONE = SURROUND_BEGIN, + SURROUND_THROUGHT, + SURROUND_PARALLEL, + SURROUND_IDEAL, + SURROUND_LEFT, + SURROUND_RIGHT, + SURROUND_END +}; + +class SwFmtSurround: public SfxEnumItem +{ + BOOL bAnchorOnly :1; + BOOL bContour :1; + BOOL bOutside :1; +public: + SwFmtSurround( SwSurround eNew = SURROUND_PARALLEL ); + SwFmtSurround( const SwFmtSurround & ); + inline SwFmtSurround &operator=( const SwFmtSurround &rCpy ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetValueCount() const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + + SwSurround GetSurround()const { return SwSurround( GetValue() ); } + BOOL IsAnchorOnly() const { return bAnchorOnly; } + BOOL IsContour() const { return bContour; } + BOOL IsOutside() const { return bOutside; } + void SetSurround ( SwSurround eNew ){ SfxEnumItem::SetValue( USHORT( eNew ) ); } + void SetAnchorOnly( BOOL bNew ) { bAnchorOnly = bNew; } + void SetContour( BOOL bNew ) { bContour = bNew; } + void SetOutside( BOOL bNew ) { bOutside = bNew; } +}; + +inline SwFmtSurround &SwFmtSurround::operator=( const SwFmtSurround &rCpy ) +{ + bAnchorOnly = rCpy.IsAnchorOnly(); + bContour = rCpy.IsContour(); + bOutside = rCpy.IsOutside(); + SfxEnumItem::SetValue( rCpy.GetValue() ); + return *this; +} + +inline const SwFmtSurround &SwAttrSet::GetSurround(BOOL bInP) const + { return (const SwFmtSurround&)Get( RES_SURROUND,bInP); } + +inline const SwFmtSurround &SwFmt::GetSurround(BOOL bInP) const + { return aSet.GetSurround(bInP); } + +#endif + diff --git a/sw/inc/fmturl.hxx b/sw/inc/fmturl.hxx new file mode 100644 index 000000000000..07cf3148ce81 --- /dev/null +++ b/sw/inc/fmturl.hxx @@ -0,0 +1,131 @@ +/************************************************************************* + * + * $RCSfile: fmturl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FMTURL_HXX +#define _FMTURL_HXX + + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _FORMAT_HXX //autogen +#include +#endif + +class ImageMap; +class International; + +// URL, ServerMap und ClientMap + +class SwFmtURL: public SfxPoolItem +{ + String sTargetFrameName; // in diesen Frame soll die URL + String sURL; //Einfache URL + String sName; // Name des Anchors + ImageMap *pMap; //ClientSide Images + + BOOL bIsServerMap; //mit der URL eine ServerSideImageMap + + SwFmtURL& operator=( const SwFmtURL& ); + +public: + SwFmtURL(); + SwFmtURL( const SwFmtURL& ); + ~SwFmtURL(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + + void SetTargetFrameName( const String& rStr ) { sTargetFrameName = rStr; } + void SetURL( const String &rURL, BOOL bServerMap ); + void SetMap( const ImageMap *pM ); //Pointer wird kopiert! + + const String &GetTargetFrameName()const { return sTargetFrameName; } + const String &GetURL() const { return sURL; } + BOOL IsServerMap() const { return bIsServerMap; } + const ImageMap *GetMap() const { return pMap; } + ImageMap *GetMap() { return pMap; } + + const String& GetName() const { return sName; } + void SetName( const String& rNm ) { sName = rNm; } +}; + +inline const SwFmtURL &SwAttrSet::GetURL(BOOL bInP) const + { return (const SwFmtURL&)Get( RES_URL,bInP); } + +inline const SwFmtURL &SwFmt::GetURL(BOOL bInP) const + { return aSet.GetURL(bInP); } + +#endif + diff --git a/sw/inc/format.hxx b/sw/inc/format.hxx new file mode 100644 index 000000000000..b31111c3ce1e --- /dev/null +++ b/sw/inc/format.hxx @@ -0,0 +1,371 @@ +/************************************************************************* + * + * $RCSfile: format.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FORMAT_HXX +#define _FORMAT_HXX + + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _ERRHDL_HXX +#include // fuer ASSERT +#endif +#ifndef _SWATRSET_HXX +#include // fuer SfxItemPool/-Set, Attr forward decl. +#endif +#ifndef _CALBCK_HXX +#include // fuer SwModify +#endif +#ifndef _HINTIDS_HXX +#include +#endif + +class SwDoc; + +class SwFmt : public SwModify +{ + friend class SwSwgReader; + friend class SwSwgWriter; + + String aFmtName; + SwAttrSet aSet; + + USHORT nWhichId; + USHORT nFmtId; // Format-ID fuer Lesen/Schreiben + USHORT nPoolFmtId; // Id-fuer "automatich" erzeugte Formate + // (ist keine harte Attributierung !!) + USHORT nPoolHelpId; // HelpId fuer diese Pool-Vorlage + BYTE nPoolHlpFileId; // FilePos ans Doc auf die Vorlagen-Hilfen + BOOL bWritten : 1; // TRUE: bereits geschrieben + BOOL bAutoFmt : 1; // FALSE: es handelt sich um eine Vorlage + // ist dflt immer auf TRUE ! + BOOL bFmtInDTOR : 1; // TRUE: das Format wird geloscht. Damit man in + // der FmtChg-Message das erkennen kann!!! + BOOL bAutoUpdateFmt : 1; // TRUE: am Format werden die Attribute + // eines kompletten Absatzes gesetzt (UI-seitig!) + BOOL bLayerFmt : 1; // nur fuer SwFrmFmt ( LAYER_IMPL ) + + +protected: + SwFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + const USHORT* pWhichRanges, SwFmt *pDrvdFrm, USHORT nFmtWhich ); + SwFmt( SwAttrPool& rPool, const String &rFmtNm, const USHORT* pWhichRanges, + SwFmt *pDrvdFrm, USHORT nFmtWhich ); + SwFmt( SwAttrPool& rPool, const String &rFmtNm, USHORT nWhich1, + USHORT nWhich2, SwFmt *pDrvdFrm, USHORT nFmtWhich ); + SwFmt( const SwFmt& rFmt ); + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + virtual ~SwFmt(); + SwFmt &operator=(const SwFmt&); + + // fuer die Abfrage der Writer-Funktionen + USHORT Which() const { return nWhichId; } + + virtual void Modify( SfxPoolItem* pOldValue, SfxPoolItem* pNewValue ); + // erfrage vom Format Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + // kopiere Attribute; auch ueber Dokumentgrenzen hinweg + void CopyAttrs( const SwFmt&, BOOL bReplace=TRUE ); + + // loesche alle Attribute, die nicht in rFmt stehen + void DelDiffs( const SfxItemSet& rSet ); + void DelDiffs( const SwFmt& rFmt ) { DelDiffs( rFmt.GetAttrSet() ); } + + // Umhaengen des Formats (0 = Default) + BOOL SetDerivedFrom(SwFmt *pDerivedFrom = 0); + + // Ist bInParents FALSE, + // wird nur in diesem Format nach dem Attribut gesucht. + inline const SfxPoolItem& GetAttr( USHORT nWhich, + BOOL bInParents = TRUE ) const; + inline SfxItemState GetItemState( USHORT nWhich, BOOL bSrchInParent = TRUE, + const SfxPoolItem **ppItem = 0 ) const; + BOOL SetAttr( const SfxPoolItem& ); + BOOL SetAttr( const SfxItemSet& rSet ); + + // Nimmt den Hint mit nWhich aus dem Delta-Array + BOOL ResetAttr( USHORT nWhich1, USHORT nWhich2 = 0 ); + + // Nimmt alle Hints aus dem Delta-Array, + // liefert die Anzahl der geloeschten Hints + USHORT ResetAllAttr(); + + inline SwFmt* DerivedFrom() const { return (SwFmt*)pRegisteredIn; } + inline BOOL IsDefault() const { return DerivedFrom() == 0; } + + inline const String& GetName() const { return aFmtName; } + inline void SetName( const String& rNewName ); + inline void SetName( const sal_Char* pNewName ); + + // zur Abfrage des Attribute Arrays + inline const SwAttrSet& GetAttrSet() const { return aSet; } + + // Das Doc wird jetzt am SwAttrPool gesetzt. Dadurch hat man es immer + // im Zugriff. + const SwDoc *GetDoc() const { return aSet.GetDoc(); } + SwDoc *GetDoc() { return aSet.GetDoc(); } + + // erfragen und setzen der Poolvorlagen-Id's + USHORT GetPoolFmtId() const { return nPoolFmtId; } + void SetPoolFmtId( USHORT nId ) { nPoolFmtId = nId; } + + // erfragen und setzen der Hilfe-Id's fuer die Document-Vorlagen + USHORT GetPoolHelpId() const { return nPoolHelpId; } + void SetPoolHelpId( USHORT nId ) { nPoolHelpId = nId; } + BYTE GetPoolHlpFileId() const { return nPoolHlpFileId; } + void SetPoolHlpFileId( BYTE nId ) { nPoolHlpFileId = nId; } + // erfrage die Attribut-Beschreibung, returnt den reingereichten String + void GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric, String &rText ) const + { aSet.GetPresentation( ePres, eCoreMetric, ePresMetric, rText ); } + // Das Format-ID fuer Lesen/Schreiben: + USHORT GetFmtId() const { return nFmtId; } + void SetWritten() { bWritten = TRUE; } + void ResetWritten() { bWritten = FALSE; } + BOOL IsWritten() const { return bWritten; } + + // Abfragen/Setzen vom AutoFmt-Flag + BOOL IsAuto() const { return bAutoFmt; } + void SetAuto( BOOL bNew = FALSE ) { bAutoFmt = bNew; } + + // Abfragen/Setzen vom bAutoUpdateFmt-Flag + BOOL IsAutoUpdateFmt() const { return bAutoUpdateFmt; } + void SetAutoUpdateFmt( BOOL bNew = TRUE ) { bAutoUpdateFmt = bNew; } + + BOOL IsFmtInDTOR() const { return bFmtInDTOR; } + + BOOL IsLayerFmt() const { return bLayerFmt; } + void SetLayerFmt( BOOL bNew ) { bLayerFmt = bNew; } + + BOOL IsFrmFmt() const { return nWhichId == RES_FLYFRMFMT || + nWhichId == RES_DRAWFRMFMT|| + nWhichId == RES_FRMFMT; } + + // GetMethoden: das Bool gibt an, ob nur im Set (FALSE) oder auch in + // den Parents gesucht werden soll. Wird nichts gefunden, + // wird das deflt. Attribut returnt. + // Charakter-Attribute - impl. steht im charatr.hxx + // AMA 12.10.94: Umstellung von SwFmt... auf Svx... + inline const SvxPostureItem &GetPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetWeight( BOOL = TRUE ) const; + inline const SvxShadowedItem &GetShadowed( BOOL = TRUE ) const; + inline const SvxAutoKernItem &GetAutoKern( BOOL = TRUE ) const; + inline const SvxWordLineModeItem &GetWordLineMode( BOOL = TRUE ) const; + inline const SvxContourItem &GetContour( BOOL = TRUE ) const; + inline const SvxKerningItem &GetKerning( BOOL = TRUE ) const; + inline const SvxUnderlineItem &GetUnderline( BOOL = TRUE ) const; + inline const SvxCrossedOutItem &GetCrossedOut( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetSize( BOOL = TRUE ) const; + inline const SvxPropSizeItem &GetPropSize( BOOL = TRUE ) const; + inline const SvxFontItem &GetFont( BOOL = TRUE ) const; + inline const SvxColorItem &GetColor( BOOL = TRUE ) const; + inline const SvxCharSetColorItem &GetCharSetColor( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetLanguage( BOOL = TRUE ) const; + inline const SvxEscapementItem &GetEscapement( BOOL = TRUE ) const; + inline const SvxCaseMapItem &GetCaseMap( BOOL = TRUE ) const; + inline const SvxNoHyphenItem &GetNoHyphenHere( BOOL = TRUE ) const; + inline const SvxBlinkItem &GetBlink( BOOL = TRUE ) const; + inline const SvxBrushItem &GetChrBackground( BOOL = TRUE ) const; + + inline const SvxFontItem &GetCJKFont( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetCJKSize( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetCJKLanguage( BOOL = TRUE ) const; + inline const SvxPostureItem &GetCJKPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetCJKWeight( BOOL = TRUE ) const; + inline const SvxFontItem &GetCTLFont( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetCTLSize( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetCTLLanguage( BOOL = TRUE ) const; + inline const SvxPostureItem &GetCTLPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetCTLWeight( BOOL = TRUE ) const; + inline const SfxBoolItem &GetWritingDirection( BOOL = TRUE ) const; + + // Frame-Attribute - impl. steht im frmatr.hxx, + // fuer LINUX, SINIX, HPUX auch in gcc_outl.cxx +#if ( defined GCC && defined C272 && \ + ( defined LINUX || defined SINIX || defined HPUX )) + const SwFmtFillOrder &GetFillOrder( BOOL = TRUE ) const; + const SwFmtFrmSize &GetFrmSize( BOOL = TRUE ) const; + const SwFmtHeader &GetHeader( BOOL = TRUE ) const; + const SwFmtFooter &GetFooter( BOOL = TRUE ) const; + const SwFmtSurround &GetSurround( BOOL = TRUE ) const; + const SwFmtHoriOrient &GetHoriOrient( BOOL = TRUE ) const; + const SwFmtAnchor &GetAnchor( BOOL = TRUE ) const; + const SwFmtCol &GetCol( BOOL = TRUE ) const; +#endif +#if ( defined GCC && defined C272 && defined HPUX ) + const SvxPaperBinItem &GetPaperBin( BOOL = TRUE ) const; + const SvxLRSpaceItem &GetLRSpace( BOOL = TRUE ) const; + const SvxULSpaceItem &GetULSpace( BOOL = TRUE ) const; + const SwFmtCntnt &GetCntnt( BOOL = TRUE ) const; + const SvxPrintItem &GetPrint( BOOL = TRUE ) const; + const SvxOpaqueItem &GetOpaque( BOOL = TRUE ) const; + const SvxProtectItem &GetProtect( BOOL = TRUE ) const; + const SwFmtVertOrient &GetVertOrient( BOOL = TRUE ) const; + const SvxBoxItem &GetBox( BOOL = TRUE ) const; + const SvxFmtKeepItem &GetKeep( BOOL = TRUE ) const; + const SvxBrushItem &GetBackground( BOOL = TRUE ) const; + const SvxShadowItem &GetShadow( BOOL = TRUE ) const; + const SwFmtPageDesc &GetPageDesc( BOOL = TRUE ) const; + const SvxFmtBreakItem &GetBreak( BOOL = TRUE ) const; + const SvxMacroItem &GetMacro( BOOL = TRUE ) const; + const SwFmtURL &GetURL( BOOL = TRUE ) const; +#endif +#if !( defined GCC && defined C272 && \ + ( defined LINUX || defined SINIX || defined HPUX )) + inline const SwFmtFillOrder &GetFillOrder( BOOL = TRUE ) const; + inline const SwFmtFrmSize &GetFrmSize( BOOL = TRUE ) const; + inline const SwFmtHeader &GetHeader( BOOL = TRUE ) const; + inline const SwFmtFooter &GetFooter( BOOL = TRUE ) const; + inline const SwFmtSurround &GetSurround( BOOL = TRUE ) const; + inline const SwFmtHoriOrient &GetHoriOrient( BOOL = TRUE ) const; + inline const SwFmtAnchor &GetAnchor( BOOL = TRUE ) const; + inline const SwFmtCol &GetCol( BOOL = TRUE ) const; +#endif +#if !( defined GCC && defined C272 && defined HPUX ) + inline const SvxPaperBinItem &GetPaperBin( BOOL = TRUE ) const; + inline const SvxLRSpaceItem &GetLRSpace( BOOL = TRUE ) const; + inline const SvxULSpaceItem &GetULSpace( BOOL = TRUE ) const; + inline const SwFmtCntnt &GetCntnt( BOOL = TRUE ) const; + inline const SvxPrintItem &GetPrint( BOOL = TRUE ) const; + inline const SvxOpaqueItem &GetOpaque( BOOL = TRUE ) const; + inline const SvxProtectItem &GetProtect( BOOL = TRUE ) const; + inline const SwFmtVertOrient &GetVertOrient( BOOL = TRUE ) const; + inline const SvxBoxItem &GetBox( BOOL = TRUE ) const; + inline const SvxFmtKeepItem &GetKeep( BOOL = TRUE ) const; + inline const SvxBrushItem &GetBackground( BOOL = TRUE ) const; + inline const SvxShadowItem &GetShadow( BOOL = TRUE ) const; + inline const SwFmtPageDesc &GetPageDesc( BOOL = TRUE ) const; + inline const SvxFmtBreakItem &GetBreak( BOOL = TRUE ) const; + inline const SvxMacroItem &GetMacro( BOOL = TRUE ) const; + inline const SwFmtURL &GetURL( BOOL = TRUE ) const; + inline const SwFmtEditInReadonly &GetEditInReadonly( BOOL = TRUE ) const; + inline const SwFmtLayoutSplit &GetLayoutSplit( BOOL = TRUE ) const; + inline const SwFmtChain &GetChain( BOOL = TRUE ) const; + inline const SwFmtLineNumber &GetLineNumber( BOOL = TRUE ) const; + inline const SwFmtFtnAtTxtEnd &GetFtnAtTxtEnd( BOOL = TRUE ) const; + inline const SwFmtEndAtTxtEnd &GetEndAtTxtEnd( BOOL = TRUE ) const; + inline const SwFmtNoBalancedColumns &GetBalancedColumns( BOOL = TRUE ) const; +#endif + + // Grafik-Attribute - impl. steht im grfatr.hxx + inline const SwMirrorGrf &GetMirrorGrf( BOOL = TRUE ) const; + inline const SwCropGrf &GetCropGrf( BOOL = TRUE ) const; + inline const SwRotationGrf &GetRotationGrf(BOOL = TRUE ) const; + inline const SwLuminanceGrf &GetLuminanceGrf(BOOL = TRUE ) const; + inline const SwContrastGrf &GetContrastGrf(BOOL = TRUE ) const; + inline const SwChannelRGrf &GetChannelRGrf(BOOL = TRUE ) const; + inline const SwChannelGGrf &GetChannelGGrf(BOOL = TRUE ) const; + inline const SwChannelBGrf &GetChannelBGrf(BOOL = TRUE ) const; + inline const SwGammaGrf &GetGammaGrf(BOOL = TRUE ) const; + inline const SwInvertGrf &GetInvertGrf(BOOL = TRUE ) const; + inline const SwTransparencyGrf &GetTransparencyGrf(BOOL = TRUE ) const; + inline const SwDrawModeGrf &GetDrawModeGrf(BOOL = TRUE ) const; + + // Paragraph-Attribute - impl. steht im paratr.hxx + inline const SvxLineSpacingItem &GetLineSpacing( BOOL = TRUE ) const; + inline const SvxAdjustItem &GetAdjust( BOOL = TRUE ) const; + inline const SvxFmtSplitItem &GetSplit( BOOL = TRUE ) const; + inline const SwRegisterItem &GetRegister( BOOL = TRUE ) const; + inline const SwNumRuleItem &GetNumRule( BOOL = TRUE ) const; + inline const SvxWidowsItem &GetWidows( BOOL = TRUE ) const; + inline const SvxOrphansItem &GetOrphans( BOOL = TRUE ) const; + inline const SvxTabStopItem &GetTabStops( BOOL = TRUE ) const; + inline const SvxHyphenZoneItem &GetHyphenZone( BOOL = TRUE ) const; + inline const SwFmtDrop &GetDrop( BOOL = TRUE ) const; + + // TabellenBox-Attribute - impl. steht im cellatr.hxx + inline const SwTblBoxNumFormat &GetTblBoxNumFmt( BOOL = TRUE ) const; + inline const SwTblBoxFormula &GetTblBoxFormula( BOOL = TRUE ) const; + inline const SwTblBoxValue &GetTblBoxValue( BOOL = TRUE ) const; +}; + +// --------------- Inline Implementierungen ------------------------ + +inline const SfxPoolItem& SwFmt::GetAttr( USHORT nWhich, + BOOL bInParents ) const +{ + return aSet.Get( nWhich, bInParents ); +} + +inline void SwFmt::SetName( const String& rNewName ) +{ + ASSERT(!IsDefault(), "SetName: Defaultformat" ); + aFmtName = rNewName; +} +inline void SwFmt::SetName( const sal_Char* pNewName ) +{ + ASSERT(!IsDefault(), "SetName: Defaultformat" ); + aFmtName.AssignAscii( pNewName ); +} + +inline SfxItemState SwFmt::GetItemState( USHORT nWhich, BOOL bSrchInParent, + const SfxPoolItem **ppItem ) const +{ + return aSet.GetItemState( nWhich, bSrchInParent, ppItem ); +} + + +#endif // _FORMAT_HXX diff --git a/sw/inc/frmatr.hxx b/sw/inc/frmatr.hxx new file mode 100644 index 000000000000..f6b84500ea14 --- /dev/null +++ b/sw/inc/frmatr.hxx @@ -0,0 +1,136 @@ +/************************************************************************* + * + * $RCSfile: frmatr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FRMATR_HXX +#define _FRMATR_HXX + +#include "hintids.hxx" //die Ids der Attribute, vor frmitems damit die +#include "format.hxx" //fuer Implementierung der inlines + +//------------------------ Inlines --------------------------------- + + +/****************************************************************************** + * Implementierung der FrameAttribut Methoden vom SwAttrSet + ******************************************************************************/ + +inline const SvxPaperBinItem &SwAttrSet::GetPaperBin(BOOL bInP) const + { return (const SvxPaperBinItem&)Get( RES_PAPER_BIN,bInP); } +inline const SvxLRSpaceItem &SwAttrSet::GetLRSpace(BOOL bInP) const + { return (const SvxLRSpaceItem&)Get( RES_LR_SPACE,bInP); } +inline const SvxULSpaceItem &SwAttrSet::GetULSpace(BOOL bInP) const + { return (const SvxULSpaceItem&)Get( RES_UL_SPACE,bInP); } +inline const SvxPrintItem &SwAttrSet::GetPrint(BOOL bInP) const + { return (const SvxPrintItem&)Get( RES_PRINT,bInP); } +inline const SvxOpaqueItem &SwAttrSet::GetOpaque(BOOL bInP) const + { return (const SvxOpaqueItem&)Get( RES_OPAQUE,bInP); } +inline const SvxProtectItem &SwAttrSet::GetProtect(BOOL bInP) const + { return (const SvxProtectItem&)Get( RES_PROTECT,bInP); } +inline const SvxBoxItem &SwAttrSet::GetBox(BOOL bInP) const + { return (const SvxBoxItem&)Get( RES_BOX,bInP); } +inline const SvxFmtKeepItem &SwAttrSet::GetKeep(BOOL bInP) const + { return (const SvxFmtKeepItem&)Get( RES_KEEP,bInP); } +inline const SvxBrushItem &SwAttrSet::GetBackground(BOOL bInP) const + { return (const SvxBrushItem&)Get( RES_BACKGROUND,bInP); } +inline const SvxShadowItem &SwAttrSet::GetShadow(BOOL bInP) const + { return (const SvxShadowItem&)Get( RES_SHADOW,bInP); } +inline const SvxFmtBreakItem &SwAttrSet::GetBreak(BOOL bInP) const + { return (const SvxFmtBreakItem&)Get( RES_BREAK,bInP); } +inline const SvxMacroItem &SwAttrSet::GetMacro(BOOL bInP) const + { return (const SvxMacroItem&)Get( RES_FRMMACRO,bInP); } + + +/****************************************************************************** + * Implementierung der FrameAttribut Methoden vom SwFmt + ******************************************************************************/ + +// impl. fuer LINUX, SINIX, HPUX auch in gcc_outl.cxx +#if !( defined GCC && defined C272 && \ + ( defined LINUX || defined SINIX || defined HPUX )) +#endif +#if !( defined GCC && defined C272 && defined HPUX ) +inline const SvxPaperBinItem &SwFmt::GetPaperBin(BOOL bInP) const + { return aSet.GetPaperBin(bInP); } +inline const SvxLRSpaceItem &SwFmt::GetLRSpace(BOOL bInP) const + { return aSet.GetLRSpace(bInP); } +inline const SvxULSpaceItem &SwFmt::GetULSpace(BOOL bInP) const + { return aSet.GetULSpace(bInP); } +inline const SvxPrintItem &SwFmt::GetPrint(BOOL bInP) const + { return aSet.GetPrint(bInP); } +inline const SvxOpaqueItem &SwFmt::GetOpaque(BOOL bInP) const + { return aSet.GetOpaque(bInP); } +inline const SvxProtectItem &SwFmt::GetProtect(BOOL bInP) const + { return aSet.GetProtect(bInP); } +inline const SvxBoxItem &SwFmt::GetBox(BOOL bInP) const + { return aSet.GetBox(bInP); } +inline const SvxFmtKeepItem &SwFmt::GetKeep(BOOL bInP) const + { return aSet.GetKeep(bInP); } +inline const SvxBrushItem &SwFmt::GetBackground(BOOL bInP) const + { return aSet.GetBackground(bInP); } +inline const SvxShadowItem &SwFmt::GetShadow(BOOL bInP) const + { return aSet.GetShadow(bInP); } +inline const SvxFmtBreakItem &SwFmt::GetBreak(BOOL bInP) const + { return aSet.GetBreak(bInP); } +inline const SvxMacroItem &SwFmt::GetMacro(BOOL bInP) const + { return aSet.GetMacro(bInP); } +#endif + + +#endif //_FRMATR_HXX diff --git a/sw/inc/frmfmt.hxx b/sw/inc/frmfmt.hxx new file mode 100644 index 000000000000..ed22cfea3b22 --- /dev/null +++ b/sw/inc/frmfmt.hxx @@ -0,0 +1,227 @@ +/************************************************************************* + * + * $RCSfile: frmfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FRMFMT_HXX +#define _FRMFMT_HXX + +#ifndef _FORMAT_HXX +#include +#endif + +class SwDrawContact; +class SwFlyFrm; +class Graphic; +class Point; +class ImageMap; +class IMapObject; +class SwRect; +class SwContact; +class SdrObject; + +class SwFrmFmt: public SwFmt +{ + friend class SwDoc; + friend class SwPageDesc; //darf den protected CTor rufen. + friend class SwSwgReader; // der SW2-Reader auch! + friend class Sw3IoImp; // der SW3-Reader auch! + +protected: + SwFrmFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm, USHORT nFmtWhich = RES_FRMFMT, + const USHORT* pWhichRange = 0 ) + : SwFmt( rPool, pFmtNm, (pWhichRange ? pWhichRange : aFrmFmtSetRange), + pDrvdFrm, nFmtWhich ) + {} + + SwFrmFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm, USHORT nFmtWhich = RES_FRMFMT, + const USHORT* pWhichRange = 0 ) + : SwFmt( rPool, rFmtNm, (pWhichRange ? pWhichRange : aFrmFmtSetRange), + pDrvdFrm, nFmtWhich ) + {} + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + //Vernichtet alle Frms in aDepend (Frms werden per PTR_CAST erkannt). + virtual void DelFrms(); + + //Erzeugt die Ansichten + virtual void MakeFrms(); + + virtual Graphic MakeGraphic( ImageMap* pMap = NULL ); + + virtual void Modify( SfxPoolItem* pOldValue, SfxPoolItem* pNewValue ); + + // returnt das IMapObject, das an dem Format (Fly), in der ImageMap + // an der Point Position definiert ist. + // rPoint - teste auf der DocPosition + // pFly - optionaler FlyFrame, falls der schon bekannt ist. + IMapObject* GetIMapObject( const Point& rPoint, + const SwFlyFrm *pFly = 0 ) const; + + // Gibt die tatsaechlche Groesse des Frames zurueck bzw. ein leeres + // Rechteck, wenn kein Layout existiert. Wird pPoint angegeben, dann + // wird der am dichtesten liegende Frame gesucht. + SwRect FindLayoutRect( const BOOL bPrtArea = FALSE, + const Point* pPoint = 0, + const BOOL bCalcFrm = FALSE ) const; + + // Sucht das SdrObject. Der SdrObjUserCall ist Client vom Format. + // Der UserCall kennt sein SdrObject. + SwContact *FindContactObj(); + const SwContact *FindContactObj() const + { return ((SwFrmFmt*)this)->FindContactObj(); } + + // returns the SdrObject, that ist connected to the ContactObject. + // Only DrawFrmFmts are connected to the "real SdrObject". FlyFrmFmts + // are connected to a Master and all FlyFrms has the "real SdrObject". + // "Real SdrObject" has position and a Z-order. + SdrObject *FindSdrObject(); + const SdrObject *FindSdrObject() const + { return ((SwFrmFmt*)this)->FindSdrObject(); } + + SdrObject *FindRealSdrObject(); + const SdrObject *FindRealSdrObject() const + { return ((SwFrmFmt*)this)->FindRealSdrObject(); } + + BOOL IsLowerOf( const SwFrmFmt& rFmt ) const; + + DECL_FIXEDMEMPOOL_NEWDEL(SwFrmFmt) +}; + +//Das FlyFrame-Format ------------------------------ + +class SwFlyFrmFmt: public SwFrmFmt +{ + friend class SwDoc; + + //Beide nicht vorhanden. + SwFlyFrmFmt( const SwFlyFrmFmt &rCpy ); + SwFlyFrmFmt &operator=( const SwFlyFrmFmt &rCpy ); + +protected: + SwFlyFrmFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, pFmtNm, pDrvdFrm, RES_FLYFRMFMT ) + {} + SwFlyFrmFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, rFmtNm, pDrvdFrm, RES_FLYFRMFMT ) + {} + +public: + TYPEINFO(); + ~SwFlyFrmFmt(); + + //Erzeugt die Ansichten + virtual void MakeFrms(); + + SwFlyFrm* GetFrm( const Point* pDocPos = 0, + const BOOL bCalcFrm = FALSE ) const; + + virtual Graphic MakeGraphic( ImageMap* pMap = NULL ); + + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + DECL_FIXEDMEMPOOL_NEWDEL(SwFlyFrmFmt) +}; + +//Das DrawFrame-Format ----------------------------- + +class SwDrawFrmFmt: public SwFrmFmt +{ + friend class SwDoc; + + //Beide nicht vorhanden. + SwDrawFrmFmt( const SwDrawFrmFmt &rCpy ); + SwDrawFrmFmt &operator=( const SwDrawFrmFmt &rCpy ); + +protected: + SwDrawFrmFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, pFmtNm, pDrvdFrm, RES_DRAWFRMFMT ) + {} + SwDrawFrmFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, rFmtNm, pDrvdFrm, RES_DRAWFRMFMT ) + {} + +public: + TYPEINFO(); + ~SwDrawFrmFmt(); + + //DrawObjecte werden aus den Arrays am Layout entfernt. Die DrawObjecte + //werden als geloescht gekennzeichnet. + virtual void DelFrms(); + + //Anmelden der DrawObjecte in den Arrays am Layout. Loeschkennzeichen + //werden zurueckgesetzt. + virtual void MakeFrms(); + + virtual Graphic MakeGraphic( ImageMap* pMap = NULL ); + + + DECL_FIXEDMEMPOOL_NEWDEL(SwDrawFrmFmt); +}; + + +#endif + diff --git a/sw/inc/ftnidx.hxx b/sw/inc/ftnidx.hxx new file mode 100644 index 000000000000..bd75a59f037c --- /dev/null +++ b/sw/inc/ftnidx.hxx @@ -0,0 +1,114 @@ +/************************************************************************* + * + * $RCSfile: ftnidx.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FTNIDX_HXX +#define _FTNIDX_HXX + + +#define _SVSTDARR_USHORTS +#include + +class SwTxtFtn; +class SwNodeIndex; +class SwSectionNode; + +// ueberall, wo der NodeIndex gebraucht wird, werden die hier fehlenden +// Headerfiles schon includes. Darum hier nur als define und nicht als +// inline Methode (spart Compile-Zeit) +#define _SwTxtFtn_GetIndex( pFIdx ) (pFIdx->GetTxtNode().GetIndex()) + + +typedef SwTxtFtn* SwTxtFtnPtr; +SV_DECL_PTRARR_SORT( _SwFtnIdxs, SwTxtFtnPtr, 0, 10 ) + +class SwFtnIdxs : public _SwFtnIdxs +{ +public: + SwFtnIdxs() {} + + void UpdateFtn( SwNodeIndex& rStt ); // ab Pos. alle Updaten + void UpdateAllFtn(); // alle Fussnoten updaten + void UpdateFtnInSections(); + + SwTxtFtn* SeekEntry( const SwNodeIndex& rIdx, USHORT* pPos = 0 ) const; +}; + + +class SwUpdFtnEndNtAtEnd +{ + SvPtrarr aFtnSects, aEndSects; + SvUShorts aFtnNums, aEndNums; + +public: + SwUpdFtnEndNtAtEnd() : aFtnSects( 0, 4 ), aEndSects( 0, 4 ), + aFtnNums( 0, 4 ), aEndNums( 0, 4 ) + {} + + static const SwSectionNode* FindSectNdWithEndAttr( + const SwTxtFtn& rTxtFtn ); + + USHORT GetNumber( const SwTxtFtn& rTxtFtn, const SwSectionNode& rNd ); + USHORT ChkNumber( const SwTxtFtn& rTxtFtn ); +}; + + + +#endif // _FTNIDX_HXX + diff --git a/sw/inc/ftninfo.hxx b/sw/inc/ftninfo.hxx new file mode 100644 index 000000000000..d82677346cac --- /dev/null +++ b/sw/inc/ftninfo.hxx @@ -0,0 +1,146 @@ +/************************************************************************* + * + * $RCSfile: ftninfo.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _FTNINFO_HXX +#define _FTNINFO_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif + +#include "numrule.hxx" + +class SwTxtFmtColl; +class SwPageDesc; + +class SwEndNoteInfo : public SwClient +{ + SwDepend aPageDescDep; + SwDepend aCharFmtDep, aAnchorCharFmtDep; + String sPrefix; + String sSuffix; +protected: + BOOL bEndNote; +public: + SwNumType aFmt; + USHORT nFtnOffset; + + void ChgPageDesc( SwPageDesc *pDesc ); + SwPageDesc *GetPageDesc( SwDoc &rDoc ) const; + SwClient *GetPageDescDep() const { return (SwClient*)&aPageDescDep; } + + void SetFtnTxtColl(SwTxtFmtColl& rColl); + SwTxtFmtColl* GetFtnTxtColl() const { return (SwTxtFmtColl*) GetRegisteredIn(); } // kann 0 sein + + SwCharFmt* GetCharFmt(SwDoc &rDoc) const; + void SetCharFmt( SwCharFmt* ); + SwClient *GetCharFmtDep() const { return (SwClient*)&aCharFmtDep; } + + SwCharFmt* GetAnchorCharFmt(SwDoc &rDoc) const; + void SetAnchorCharFmt( SwCharFmt* ); + SwClient *GetAnchorCharFmtDep() const { return (SwClient*)&aAnchorCharFmtDep; } + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + + SwEndNoteInfo & operator=(const SwEndNoteInfo&); + BOOL operator==( const SwEndNoteInfo &rInf ) const; + + SwEndNoteInfo( SwTxtFmtColl *pTxtColl = 0); + SwEndNoteInfo(const SwEndNoteInfo&); + + const String& GetPrefix() const { return sPrefix; } + const String& GetSuffix() const { return sSuffix; } + + void SetPrefix(const String& rSet) { sPrefix = rSet; } + void SetSuffix(const String& rSet) { sSuffix = rSet; } + + BOOL IsEndNoteInfo() const { return bEndNote; } +}; + +enum SwFtnPos +{ + //Derzeit nur PAGE und CHAPTER. CHAPTER == Dokumentendenoten. + FTNPOS_PAGE = 1, + FTNPOS_CHAPTER = 8 +}; + +enum SwFtnNum +{ + FTNNUM_PAGE, FTNNUM_CHAPTER, FTNNUM_DOC +}; + +class SwFtnInfo: public SwEndNoteInfo +{ +public: + String aQuoVadis; + String aErgoSum; + SwFtnPos ePos; + SwFtnNum eNum; + + + SwFtnInfo& operator=(const SwFtnInfo&); + BOOL operator==( const SwFtnInfo &rInf ) const; + + SwFtnInfo(SwTxtFmtColl* pTxtColl = 0); + SwFtnInfo(const SwFtnInfo&); +}; + + +#endif diff --git a/sw/inc/globals.hrc b/sw/inc/globals.hrc new file mode 100644 index 000000000000..3d54169f382d --- /dev/null +++ b/sw/inc/globals.hrc @@ -0,0 +1,323 @@ +/************************************************************************* + * + * $RCSfile: globals.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _GLOBALS_HRC +#define _GLOBALS_HRC + + +// Versions-Definition wie in solar.h und swtypes.hxx +//#define SW_FILEFORMAT_40 3580 + +#include "rcid.hrc" + +// STRINGS ----------------------------------------------------------- + +#define STR_DLLNOTFOUND (RC_GLOBALS_BEGIN + 0) +#define STR_FMT_STD (RC_GLOBALS_BEGIN + 1) +#define STR_LOAD_GLOBAL_DOC (RC_GLOBALS_BEGIN + 2) + +#define STR_SEPARATOR (RC_GLOBALS_BEGIN + 4) + + +#define STR_BASIC_IMPORT (RC_GLOBALS_BEGIN + 5) +#define STR_BASIC_BEGIN (RC_GLOBALS_BEGIN + 6) +#define STR_BASIC_END (RC_GLOBALS_BEGIN + 7) +#define STR_BASIC_REC_LIB (RC_GLOBALS_BEGIN + 8) +#define STR_TEMPLATE_WILDCARD (RC_GLOBALS_BEGIN + 9) +#define STR_DOC_STAT (RC_GLOBALS_BEGIN + 10) + +#define STR_PAGE (RC_GLOBALS_BEGIN + 14) + +//EventStrings + +#define STR_EVENT_OBJECT_SELECT ( RC_GLOBALS_BEGIN + 17 ) +#define STR_EVENT_START_INS_GLOSSARY ( RC_GLOBALS_BEGIN + 18 ) +#define STR_EVENT_END_INS_GLOSSARY ( RC_GLOBALS_BEGIN + 19 ) +#define STR_EVENT_MOUSEOVER_OBJECT ( RC_GLOBALS_BEGIN + 20 ) +#define STR_EVENT_MOUSECLICK_OBJECT ( RC_GLOBALS_BEGIN + 21 ) +#define STR_EVENT_MOUSEOUT_OBJECT ( RC_GLOBALS_BEGIN + 22 ) +#define STR_EVENT_IMAGE_LOAD ( RC_GLOBALS_BEGIN + 23 ) +#define STR_EVENT_IMAGE_ABORT ( RC_GLOBALS_BEGIN + 24 ) +#define STR_EVENT_IMAGE_ERROR ( RC_GLOBALS_BEGIN + 25 ) +#define STR_EVENT_FRM_KEYINPUT_A ( RC_GLOBALS_BEGIN + 26 ) +#define STR_EVENT_FRM_KEYINPUT_NOA ( RC_GLOBALS_BEGIN + 27 ) +#define STR_EVENT_FRM_RESIZE ( RC_GLOBALS_BEGIN + 28 ) +#define STR_EVENT_FRM_MOVE ( RC_GLOBALS_BEGIN + 29 ) + +// Strings fuer Rahmenausrichtungen im Popup +#define STR_TOP_BASE (RC_GLOBALS_BEGIN + 30) +#define STR_BOTTOM_BASE (RC_GLOBALS_BEGIN + 31) +#define STR_CENTER_BASE (RC_GLOBALS_BEGIN + 32) +#define STR_TOP (RC_GLOBALS_BEGIN + 33) +#define STR_BOTTOM (RC_GLOBALS_BEGIN + 34) +#define STR_CENTER_HORI (RC_GLOBALS_BEGIN + 35) +#define STR_CENTER_VERT (RC_GLOBALS_BEGIN + 36) + +#define STR_LOAD_HTML_DOC (RC_GLOBALS_BEGIN + 37) + +#define STR_AUTH (RC_GLOBALS_BEGIN + 38) +#define STR_TBL (RC_GLOBALS_BEGIN + 39) +#define STR_TOO (RC_GLOBALS_BEGIN + 40) +#define STR_TOILL (RC_GLOBALS_BEGIN + 41) + +// BITMAPS ----------------------------------------------------------- + +#define RES_TABL (RC_GLOBALS_BEGIN + 1) +#define RES_TABR (RC_GLOBALS_BEGIN + 2) +#define RES_TABD (RC_GLOBALS_BEGIN + 3) +#define RES_TABC (RC_GLOBALS_BEGIN + 4) + +// DIALOGE ----------------------------------------------------------- + +#define DLG_LISTBOX (RC_GLOBALS_BEGIN + 1) +#define DLG_THESAURUS (RC_GLOBALS_BEGIN + 2) +#define DLG_SPECIAL (RC_GLOBALS_BEGIN + 3) + +// QUERYBOX --------------------------------------------------------- + +#define DLG_WRAP (RC_GLOBALS_BEGIN + 4) +#define DLG_BODY (RC_GLOBALS_BEGIN + 5) +#define DLG_PRT_FIELDNAME (RC_GLOBALS_BEGIN + 6) + +// INFOBOX ------------------------------------------------------------ + +#define ERR_CLPBRD_READ (RC_GLOBALS_BEGIN + 1) +#define ERR_CLPBRD_WRITE (RC_GLOBALS_BEGIN + 2) +#define MSG_ERROR_PASSWD (RC_GLOBALS_BEGIN + 3) + + +// ACC --------------------------------------------------------------- + +#define FN_CHAR_LEFT_SEL (RC_GLOBALS_BEGIN + 1) // +#define FN_CHAR_RIGHT_SEL (RC_GLOBALS_BEGIN + 2) // +#define FN_LINE_UP_SEL (RC_GLOBALS_BEGIN + 3) // +#define FN_LINE_DOWN_SEL (RC_GLOBALS_BEGIN + 4) // +#define FN_START_OF_LINE_SEL (RC_GLOBALS_BEGIN + 5) // StartOfLine +#define FN_END_OF_LINE_SEL (RC_GLOBALS_BEGIN + 6) // EndOfLine +#define FN_START_OF_DOCUMENT_SEL (RC_GLOBALS_BEGIN + 7) // StartOfDocument +#define FN_END_OF_DOCUMENT_SEL (RC_GLOBALS_BEGIN + 8) // EndOfDocument +#define FN_START_OF_NEXT_PAGE_SEL (RC_GLOBALS_BEGIN + 9) // StartOfNextPage ??? +#define FN_END_OF_NEXT_PAGE_SEL (RC_GLOBALS_BEGIN + 10) // ??? +#define FN_START_OF_PREV_PAGE_SEL (RC_GLOBALS_BEGIN + 11) // StartOfPrevPage ??? +#define FN_END_OF_PREV_PAGE_SEL (RC_GLOBALS_BEGIN + 12) // ??? +#define FN_START_OF_PAGE_SEL (RC_GLOBALS_BEGIN + 13) // StartOfPage +#define FN_END_OF_PAGE_SEL (RC_GLOBALS_BEGIN + 14) // EndOfPage +#define FN_START_OF_WINDOW_SEL (RC_GLOBALS_BEGIN + 15) // StartOfWindow +#define FN_END_OF_WINDOW_SEL (RC_GLOBALS_BEGIN + 16) // EndOfWindow +#define FN_START_OF_COLUMN_SEL (RC_GLOBALS_BEGIN + 17) // StartOfColumn +#define FN_END_OF_COLUMN_SEL (RC_GLOBALS_BEGIN + 18) // EndOfColumn +#define FN_START_OF_PARA_SEL (RC_GLOBALS_BEGIN + 19) // StartOfPara +#define FN_END_OF_PARA_SEL (RC_GLOBALS_BEGIN + 20) // EndOfPara +#define FN_NEXT_WORD_SEL (RC_GLOBALS_BEGIN + 21) // NextWord +#define FN_PREV_WORD_SEL (RC_GLOBALS_BEGIN + 22) // PrevWord +#define FN_NEXT_SENT_SEL (RC_GLOBALS_BEGIN + 23) // NextSentence +#define FN_PREV_SENT_SEL (RC_GLOBALS_BEGIN + 24) // PrevSentence + +#define FN_START_OF_NEXT_COLUMN_SEL (RC_GLOBALS_BEGIN + 25) +#define FN_END_OF_NEXT_COLUMN_SEL (RC_GLOBALS_BEGIN + 26) +#define FN_START_OF_PREV_COLUMN_SEL (RC_GLOBALS_BEGIN + 27) +#define FN_END_OF_PREV_COLUMN_SEL (RC_GLOBALS_BEGIN + 28) +#define FN_PAGEUP_SEL (RC_GLOBALS_BEGIN + 29) +#define FN_PAGEDOWN_SEL (RC_GLOBALS_BEGIN + 30) + +// TABPAGES ----------------------------------------------------------- + +#define TP_PAGE_STD (RC_GLOBALS_BEGIN + 1) +#define TP_PAGE_EXT (RC_GLOBALS_BEGIN + 2) + +#define TP_PARA_STD (RC_GLOBALS_BEGIN + 3) +#define TP_PARA_EXT (RC_GLOBALS_BEGIN + 4) + +#define TP_FRAME_STD (RC_GLOBALS_BEGIN + 5) +#define TP_FRAME_EXT (RC_GLOBALS_BEGIN + 6) + +#define TP_CHAR_STD (RC_GLOBALS_BEGIN + 7) +#define TP_CHAR_EXT (RC_GLOBALS_BEGIN + 8) + +#define TP_TABULATOR (RC_GLOBALS_BEGIN + 9) +#define TP_DROPCAPS (RC_GLOBALS_BEGIN + 10) +#define TP_BACKGROUND (RC_GLOBALS_BEGIN + 11) +#define TP_BORDER (RC_GLOBALS_BEGIN + 12) +#define TP_COLUMN (RC_GLOBALS_BEGIN + 13) + +#define TP_DOC_STAT (RC_GLOBALS_BEGIN + 15) + +#define TP_HEADER_PAGE (RC_GLOBALS_BEGIN + 16) +#define TP_FOOTER_PAGE (RC_GLOBALS_BEGIN + 17) +#define TP_FOOTNOTE_PAGE (RC_GLOBALS_BEGIN + 18) + +#define TP_OPTGENERAL_PAGE (RC_GLOBALS_BEGIN + 19) //Sfx-Seiten +#define TP_OPTSAVE_PAGE (RC_GLOBALS_BEGIN + 20) +#define TP_OPTPATH_PAGE (RC_GLOBALS_BEGIN + 21) +#define TP_OPTSPELL_PAGE (RC_GLOBALS_BEGIN + 22) + //Sw-Seiten +#define SW_EDIT_OPTIONS_TDLG (RC_GLOBALS_BEGIN + 23) +#define SW_BROWSER_OPTIONS_TDLG (RC_GLOBALS_BEGIN + 24) +#define TP_OPTTEST_PAGE (RC_GLOBALS_BEGIN + 25) +#define TP_OPTPRINT_PAGE (RC_GLOBALS_BEGIN + 26) +#define TP_OPTCOLOR_PAGE (RC_GLOBALS_BEGIN + 27) + +#define SW_OPTIONS_TDLG (RC_GLOBALS_BEGIN + 28) +#define SW_OPTIONS_TDLG_ELEM (RC_GLOBALS_BEGIN + 29) +#define SW_OPTIONS_TDLG_PRINT (RC_GLOBALS_BEGIN + 30) + +#define TP_FRM_STD (RC_GLOBALS_BEGIN + 31) + +#define TP_OPTGRID_PAGE (RC_GLOBALS_BEGIN + 33) + +#define TP_FORMAT_TABLE (RC_GLOBALS_BEGIN + 34) +#define TP_GRF_EXT (RC_GLOBALS_BEGIN + 35) + +#define DLG_FRM_STD (RC_GLOBALS_BEGIN + 36) +#define DLG_FRM_GRF (RC_GLOBALS_BEGIN + 37) +#define DLG_FRM_OLE (RC_GLOBALS_BEGIN + 38) + +#define RID_INPUT_TOOLBOX (RC_GLOBALS_BEGIN + 39) + +#define TP_MACRO_ASSIGN (RC_GLOBALS_BEGIN + 40) +#define TP_FRM_URL (RC_GLOBALS_BEGIN + 42) +#define TP_CHAR_URL (RC_GLOBALS_BEGIN + 43) + +#define TP_LAYOUT_OPT (RC_GLOBALS_BEGIN + 44) +#define TP_CONTENT_OPT (RC_GLOBALS_BEGIN + 45) +#define TP_HTML_OPT (RC_GLOBALS_BEGIN + 46) +#define TP_STD_FONT (RC_GLOBALS_BEGIN + 47) +#define TP_CONDCOLL (RC_GLOBALS_BEGIN + 48) + +#define TP_FRM_WRAP (RC_GLOBALS_BEGIN + 49) +#define TP_FRM_ADD (RC_GLOBALS_BEGIN + 51) + +#define TP_TABLE_TEXTFLOW (RC_GLOBALS_BEGIN + 52) + +#define TP_AUTOFMT_BY_INPUT (RC_GLOBALS_BEGIN + 53) +#define TP_AUTOFMT_APPLY (RC_GLOBALS_BEGIN + 54) + +#define TP_PARA_ALIGN (RC_GLOBALS_BEGIN + 55) +#define TP_OPTTABLE_PAGE (RC_GLOBALS_BEGIN + 56) + +#define TP_NUMBER (RC_GLOBALS_BEGIN + 57) + +#define DLG_NUM_BULLET (RC_GLOBALS_BEGIN + 58) +#define TP_PICK_SINGLE_NUM (RC_GLOBALS_BEGIN + 59) +#define TP_PICK_BULLET (RC_GLOBALS_BEGIN + 60) +#define TP_PICK_NUM (RC_GLOBALS_BEGIN + 61) +#define TP_PICK_BMP (RC_GLOBALS_BEGIN + 62) +#define TP_OPTSRCVIEW (RC_GLOBALS_BEGIN + 63) + +#define TP_FLD_DB (RC_GLOBALS_BEGIN + 64) +#define TP_FLD_DOKINF (RC_GLOBALS_BEGIN + 65) +#define TP_FLD_VAR (RC_GLOBALS_BEGIN + 66) +#define TP_FLD_DOK (RC_GLOBALS_BEGIN + 67) +#define TP_FLD_FUNC (RC_GLOBALS_BEGIN + 68) +#define TP_FLD_REF (RC_GLOBALS_BEGIN + 69) + +#define TP_OPTSHDWCRSR (RC_GLOBALS_BEGIN + 70) +#define TP_NUM_OPTIONS (RC_GLOBALS_BEGIN + 71) +#define TP_NUM_POSITION (RC_GLOBALS_BEGIN + 72) +#define TP_NUMPARA (RC_GLOBALS_BEGIN + 73) + +#define TP_REDLINE_OPT (RC_GLOBALS_BEGIN + 74) + +#define TP_LINENUMBERING (RC_GLOBALS_BEGIN + 75) +#define TP_OUTLINE_NUM (RC_GLOBALS_BEGIN + 76) + +#define TP_OPTINSERT_PAGE (RC_GLOBALS_BEGIN + 77) +#define TP_OPTCAPTION_PAGE (RC_GLOBALS_BEGIN + 78) +#define DLG_SVXTEST_NUM_BULLET (RC_GLOBALS_BEGIN + 79) +#define TP_OPTLOAD_PAGE (RC_GLOBALS_BEGIN + 80) +#define TP_INSERT_TOX (RC_GLOBALS_BEGIN + 81) +#define TP_TOX_FORM_ENTRY (RC_GLOBALS_BEGIN + 82) +#define TP_TOX_FORM_STYLES (RC_GLOBALS_BEGIN + 83) +#define DLG_INSERT_TOX_TABDLG (RC_GLOBALS_BEGIN + 84) +#define TP_INSERT_SECTION (RC_GLOBALS_BEGIN + 85) +#define DLG_INSERT_SECTION (RC_GLOBALS_BEGIN + 86) +#define DLG_SECTION_PROPERTIES (RC_GLOBALS_BEGIN + 87) +#define DLG_RENAME_XNAMED (RC_GLOBALS_BEGIN + 88) +#define DLG_MULTI_TOX (RC_GLOBALS_BEGIN + 89) +#define TP_TOX_SELECT (RC_GLOBALS_BEGIN + 90) +#define TP_TOX_ENTRY (RC_GLOBALS_BEGIN + 91) +#define TP_TOX_STYLES (RC_GLOBALS_BEGIN + 92) +#define TP_VISITING_CARDS (RC_GLOBALS_BEGIN + 93) +#define DLG_ADD_IDX_STYLES (RC_GLOBALS_BEGIN + 94) +#define TP_PRIVATE_DATA (RC_GLOBALS_BEGIN + 95) +#define TP_BUSINESS_DATA (RC_GLOBALS_BEGIN + 96) +#define TP_SECTION_FTNENDNOTES (RC_GLOBALS_BEGIN + 97) + +// Kontext-Menues (Format-Menue) -------------------------------------------- + +#define MN_OBJECTMENU_TEXT (RC_GLOBALS_BEGIN + 1) +#define MN_OBJECTMENU_LIST (RC_GLOBALS_BEGIN + 2) +#define MN_OBJECTMENU_TABLE (RC_GLOBALS_BEGIN + 3) +#define MN_OBJECTMENU_FRAME (RC_GLOBALS_BEGIN + 4) +#define MN_OBJECTMENU_GRAFIK (RC_GLOBALS_BEGIN + 5) +#define MN_OBJECTMENU_DRAW (RC_GLOBALS_BEGIN + 6) +#define MN_OBJECTMENU_DRWTXT (RC_GLOBALS_BEGIN + 7) +#define MN_OBJECTMENU_OLE (RC_GLOBALS_BEGIN + 8) +#define MN_OBJECTMENU_DRAWCONTROL (RC_GLOBALS_BEGIN + 9) +#define MN_OBJECTMENU_DRAWFORM (RC_GLOBALS_BEGIN + 10) + + +#if STR_DOC_STAT > RC_GLOBALS_END +#error Resource-Id Ueberlauf in #file, #line +#endif + + +#endif // _GLOBALS_HRC diff --git a/sw/inc/globdoc.hxx b/sw/inc/globdoc.hxx new file mode 100644 index 000000000000..87218b6e771b --- /dev/null +++ b/sw/inc/globdoc.hxx @@ -0,0 +1,92 @@ +/************************************************************************* + * + * $RCSfile: globdoc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWGLOBDOCSH_HXX +#define _SWGLOBDOCSH_HXX + +#ifndef SW_SWDLL_HXX +#include +#endif +#include "docsh.hxx" + +class SwGlobalDocShell : public SwDocShell +{ +public: + + SFX_DECL_OBJECTFACTORY_DLL(SwGlobalDocShell, SW_DLL()); + TYPEINFO(); + + SwGlobalDocShell(SfxObjectCreateMode eMode = SFX_CREATE_MODE_EMBEDDED); + ~SwGlobalDocShell(); + + // Anforderung der pIo-Struktur fuer den Zugriff auf Substorages + // und Streams + virtual void FillRegInfo( SvEmbeddedRegistryInfo * ); + + virtual void FillClass( SvGlobalName * pClassName, + ULONG * pClipFormat, + String * pAppName, + String * pLongUserName, + String * pUserName, + long nVersion = SOFFICE_FILEFORMAT_NOW ) const; +}; + +#endif + diff --git a/sw/inc/grfatr.hxx b/sw/inc/grfatr.hxx new file mode 100644 index 000000000000..0dd99346626c --- /dev/null +++ b/sw/inc/grfatr.hxx @@ -0,0 +1,431 @@ +/************************************************************************* + * + * $RCSfile: grfatr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _GRFATR_HXX +#define _GRFATR_HXX + +#ifndef _HINTIDS_HXX +#include // fuer die WhichIds +#endif + +#ifndef _SV_GEN_HXX +#include +#endif +#ifndef _SFXENUMITEM_HXX +#include +#endif +#ifndef _SFXINTITEM_HXX +#include +#endif +#ifndef _SVX_GRFCROP_HXX +#include +#endif + +#ifndef _SWATRSET_HXX +#include // fuer inlines +#endif +#ifndef _FORMAT_HXX +#include // fuer inlines +#endif + +/****************************************************************************** + * class SwMirrorGrf + ******************************************************************************/ + +enum GRFMIRROR +{ +RES_GRFMIRROR_BEGIN, + RES_DONT_MIRROR_GRF = RES_GRFMIRROR_BEGIN, + RES_MIRROR_GRF_VERT, + RES_MIRROR_GRF_HOR, + RES_MIRROR_GRF_BOTH, +RES_GRFMIRROR_END +}; + +class SwMirrorGrf : public SfxEnumItem +{ + BOOL bGrfToggle; // auf geraden Seiten Grafiken spiegeln + +public: + SwMirrorGrf( USHORT nMiro = RES_DONT_MIRROR_GRF ) + : SfxEnumItem( RES_GRFATR_MIRRORGRF, nMiro ), bGrfToggle( sal_False ) + {} + SwMirrorGrf::SwMirrorGrf( const SwMirrorGrf &rMirrorGrf ) + : SfxEnumItem( RES_GRFATR_MIRRORGRF, rMirrorGrf.GetValue()), + bGrfToggle( rMirrorGrf.IsGrfToggle() ) + {} + + // pure virtual-Methoden von SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + + // pure virtual-Methiden von SfxEnumItem + virtual USHORT GetValueCount() const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer ) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ); + + inline SwMirrorGrf& operator=( const SwMirrorGrf& rMirrorGrf ) + { + SfxEnumItem::SetValue( rMirrorGrf.GetValue() ); + bGrfToggle = rMirrorGrf.IsGrfToggle(); + return *this; + } + + inline BOOL IsGrfToggle() const { return bGrfToggle; } + inline void SetGrfToggle( BOOL bNew ) { bGrfToggle = bNew; } +}; + + +/****************************************************************************** + * class SwAttrCropGrf + ******************************************************************************/ + +class SwCropGrf : public SvxGrfCrop +{ +public: + TYPEINFO(); + SwCropGrf(); + SwCropGrf( sal_Int32 nLeft, sal_Int32 nRight, + sal_Int32 nTop, sal_Int32 nBottom ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFileVersion ) const; +}; + +class SwRotationGrf : public SfxUInt16Item +{ + Size aUnrotatedSize; +public: + SwRotationGrf( sal_Int16 nVal = 0 ) + : SfxUInt16Item( RES_GRFATR_ROTATION, nVal ) + {} + SwRotationGrf( sal_Int16 nVal, const Size& rSz ) + : SfxUInt16Item( RES_GRFATR_ROTATION, nVal ), aUnrotatedSize( rSz ) + {} + + // pure virtual-Methiden from SfxInt16Item + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer ) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ); + + void SetUnrotatedSize( const Size& rSz ) { aUnrotatedSize = rSz; } + const Size& GetUnrotatedSize() const { return aUnrotatedSize; } +}; + +class SwLuminanceGrf : public SfxInt16Item +{ +public: + SwLuminanceGrf( sal_Int16 nVal = 0 ) + : SfxInt16Item( RES_GRFATR_LUMINANCE, nVal ) + {} + + // pure virtual-Methiden from SfxInt16Item + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +}; + +class SwContrastGrf : public SfxInt16Item +{ +public: + SwContrastGrf( sal_Int16 nVal = 0 ) + : SfxInt16Item( RES_GRFATR_CONTRAST, nVal ) + {} + + // pure virtual-Methiden from SfxInt16Item + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +}; + +class SwChannelGrf : public SfxInt16Item +{ +protected: + SwChannelGrf( sal_Int16 nVal, USHORT nWhich ) + : SfxInt16Item( nWhich, nVal ) + {} + +public: + // pure virtual-Methiden from SfxInt16Item + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +}; + +class SwChannelRGrf : public SwChannelGrf +{ +public: + SwChannelRGrf( sal_Int16 nVal = 0 ) + : SwChannelGrf( nVal, RES_GRFATR_CHANNELR ) + {} + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; +}; +class SwChannelGGrf : public SwChannelGrf +{ +public: + SwChannelGGrf( sal_Int16 nVal = 0 ) + : SwChannelGrf( nVal, RES_GRFATR_CHANNELG ) + {} + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; +}; +class SwChannelBGrf : public SwChannelGrf +{ +public: + SwChannelBGrf( sal_Int16 nVal = 0 ) + : SwChannelGrf( nVal, RES_GRFATR_CHANNELB ) + {} + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; +}; + +class SwGammaGrf : public SfxPoolItem +{ + double nValue; +public: + TYPEINFO(); + SwGammaGrf() : SfxPoolItem( RES_GRFATR_GAMMA ), nValue( 1.0 ) + {} + + SwGammaGrf( const double& rVal ) + : SfxPoolItem( RES_GRFATR_GAMMA ), nValue( rVal ) + {} + + inline SwGammaGrf& operator=( const SwGammaGrf& rCopy ) + { + SetValue( rCopy.GetValue() ); + return *this; + } + + // pure virtual-Methiden von SfxEnumItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer ) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ); + + + const double& GetValue() const { return nValue; } + void SetValue( const double& rVal ) { nValue = rVal; } +}; + +class SwInvertGrf: public SfxBoolItem +{ +public: + SwInvertGrf( sal_Bool bVal = sal_False ) + : SfxBoolItem( RES_GRFATR_INVERT, bVal ) + {} + + // pure virtual-Methiden from SfxInt16Item + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +}; + +class SwTransparencyGrf : public SfxByteItem +{ +public: + SwTransparencyGrf( sal_Int8 nVal = 0 ) + : SfxByteItem( RES_GRFATR_TRANSPARENCY, nVal ) + {} + + // pure virtual-Methiden from SfxInt16Item + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; +}; + +class SwDrawModeGrf : public SfxEnumItem +{ +public: + SwDrawModeGrf( USHORT nMode = 0 ) + : SfxEnumItem( RES_GRFATR_DRAWMODE, nMode ) + {} + + // pure virtual-Methoden von SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + + // pure virtual-Methiden von SfxEnumItem + virtual USHORT GetValueCount() const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, + BYTE nMemberId = 0 ); +}; + + + +/****************************************************************************** + * Implementierung der GrafikAttribut Methoden vom SwAttrSet + ******************************************************************************/ + +inline const SwMirrorGrf &SwAttrSet::GetMirrorGrf(BOOL bInP) const + { return (const SwMirrorGrf&)Get( RES_GRFATR_MIRRORGRF,bInP); } +inline const SwCropGrf &SwAttrSet::GetCropGrf(BOOL bInP) const + { return (const SwCropGrf&)Get( RES_GRFATR_CROPGRF,bInP); } +inline const SwRotationGrf &SwAttrSet::GetRotationGrf(BOOL bInP) const + { return (const SwRotationGrf&)Get( RES_GRFATR_ROTATION,bInP); } +inline const SwLuminanceGrf &SwAttrSet::GetLuminanceGrf(BOOL bInP) const + { return (const SwLuminanceGrf&)Get( RES_GRFATR_LUMINANCE,bInP); } +inline const SwContrastGrf &SwAttrSet::GetContrastGrf(BOOL bInP) const + { return (const SwContrastGrf&)Get( RES_GRFATR_CONTRAST,bInP); } +inline const SwChannelRGrf &SwAttrSet::GetChannelRGrf(BOOL bInP) const + { return (const SwChannelRGrf&)Get( RES_GRFATR_CHANNELR,bInP); } +inline const SwChannelGGrf &SwAttrSet::GetChannelGGrf(BOOL bInP) const + { return (const SwChannelGGrf&)Get( RES_GRFATR_CHANNELG,bInP); } +inline const SwChannelBGrf &SwAttrSet::GetChannelBGrf(BOOL bInP) const + { return (const SwChannelBGrf&)Get( RES_GRFATR_CHANNELB,bInP); } +inline const SwGammaGrf &SwAttrSet::GetGammaGrf(BOOL bInP) const + { return (const SwGammaGrf&)Get( RES_GRFATR_GAMMA,bInP); } +inline const SwInvertGrf &SwAttrSet::GetInvertGrf(BOOL bInP) const + { return (const SwInvertGrf&)Get( RES_GRFATR_INVERT,bInP); } +inline const SwTransparencyGrf &SwAttrSet::GetTransparencyGrf(BOOL bInP) const + { return (const SwTransparencyGrf&)Get( RES_GRFATR_TRANSPARENCY,bInP); } +inline const SwDrawModeGrf &SwAttrSet::GetDrawModeGrf(BOOL bInP) const + { return (const SwDrawModeGrf&)Get( RES_GRFATR_DRAWMODE,bInP); } + +/****************************************************************************** + * Implementierung der GrafikAttribut Methoden vom SwFmt + ******************************************************************************/ + +inline const SwMirrorGrf &SwFmt::GetMirrorGrf(BOOL bInP) const + { return aSet.GetMirrorGrf(bInP); } +inline const SwCropGrf &SwFmt::GetCropGrf(BOOL bInP) const + { return aSet.GetCropGrf(bInP); } +inline const SwRotationGrf &SwFmt::GetRotationGrf(BOOL bInP) const + { return aSet.GetRotationGrf(bInP); } +inline const SwLuminanceGrf &SwFmt::GetLuminanceGrf(BOOL bInP) const + { return aSet.GetLuminanceGrf( bInP); } +inline const SwContrastGrf &SwFmt::GetContrastGrf(BOOL bInP) const + { return aSet.GetContrastGrf( bInP); } +inline const SwChannelRGrf &SwFmt::GetChannelRGrf(BOOL bInP) const + { return aSet.GetChannelRGrf( bInP); } +inline const SwChannelGGrf &SwFmt::GetChannelGGrf(BOOL bInP) const + { return aSet.GetChannelGGrf( bInP); } +inline const SwChannelBGrf &SwFmt::GetChannelBGrf(BOOL bInP) const + { return aSet.GetChannelBGrf( bInP); } +inline const SwGammaGrf &SwFmt::GetGammaGrf(BOOL bInP) const + { return aSet.GetGammaGrf( bInP); } +inline const SwInvertGrf &SwFmt::GetInvertGrf(BOOL bInP) const + { return aSet.GetInvertGrf( bInP); } +inline const SwTransparencyGrf &SwFmt::GetTransparencyGrf(BOOL bInP) const + { return aSet.GetTransparencyGrf( bInP); } +inline const SwDrawModeGrf &SwFmt::GetDrawModeGrf(BOOL bInP) const + { return aSet.GetDrawModeGrf(bInP); } + + +#endif // _GRFATR_HXX diff --git a/sw/inc/helpid.h b/sw/inc/helpid.h new file mode 100644 index 000000000000..51d80db859f7 --- /dev/null +++ b/sw/inc/helpid.h @@ -0,0 +1,876 @@ +/************************************************************************* + * + * $RCSfile: helpid.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SOLAR_HRC +#include +#endif + +#define HID_BASE HID_APP_START + +#define HID_BIB_BASE (HID_BASE + 1) +#define HID_DBSEL (HID_BASE + 2) +#define HID_DBEDIT (HID_BASE + 3) +#define HID_PRINT_OPTION (HID_BASE + 4) +#define HID_MERGE_PRINTMONITOR (HID_BASE + 5) +#define HID_FLD_INPUT (HID_BASE + 6) +#define HID_CONFIG_MISC (HID_BASE + 7) +#define HID_CONFIG_PATH (HID_BASE + 8) +#define HID_CONFIG_TB (HID_BASE + 9) +#define HID_PG_FOOTNOTE (HID_BASE + 10) +#define HID_FORMAT_GRAPHIC (HID_BASE + 11) +#define HID_FILTERSTATUS (HID_BASE + 12) +#define HID_DOCINFO_EDT (HID_BASE + 13) +#define HID_DBLOGON (HID_BASE + 14) +#define HID_MAC_ASSIGN (HID_BASE + 15) +#define HID_CONFIG_MN (HID_BASE + 16) +#define HID_PAPERSIZE (HID_BASE + 17) +#define HID_PASSWD (HID_BASE + 18) +#define HID_SPELLING_OPTIONS (HID_BASE + 19) +#define HID_HYPHENATE_OPTIONS (HID_BASE + 20) +#define HID_FORMAT_COLUMN (HID_BASE + 21) +#define HID_CONFIG_SAVE (HID_BASE + 22) +#define HID_NUM_NAMES (HID_BASE + 23) +#define HID_SYMBOL_SELECT (HID_BASE + 24) +#define HID_CONFIG_KY (HID_BASE + 25) +#define HID_LINKEDIT (HID_BASE + 26) +#define HID_GRAPHIC_PREVIEW (HID_BASE + 28) +#define HID_DICTIONARY (HID_BASE + 29) +#define HID_SET_STYLE (HID_BASE + 30) +#define HID_RIBBONBAR (HID_BASE + 31) +#define HID_STATUSLINE (HID_BASE + 32) +#define HID_DOCBAR (HID_BASE + 33) +#define HID_VRULER (HID_BASE + 34) +#define HID_MAKRO_WINDOW (HID_BASE + 35) +#define HID_ENVELOP_FORMAT (HID_BASE + 37) +#define HID_ENVELOP_PRINTER (HID_BASE + 38) + +#define HID_HEADER_FOOTER_DLG (HID_BASE + 39) +#define HID_GRID_DLG (HID_BASE + 40) +#define HID_USER_ADDRESS_DLG (HID_BASE + 41) +#define HID_SELECT_FAX_DLG (HID_BASE + 42) + +#define HID_LABEL_FORMAT (HID_BASE + 43) +#define HID_BRSORT (HID_BASE + 44) +#define HID_BRSEEK (HID_BASE + 45) +#define HID_BRCFG (HID_BASE + 46) + +#define HID_FORMEDT_CONTENT (HID_BASE + 47) +#define HID_FORMEDT_USER (HID_BASE + 48) +#define HID_FORMEDT_INDEX (HID_BASE + 49) + +#define HID_SCRL_PAGEUP (HID_BASE + 50) +#define HID_SCRL_PAGEDOWN (HID_BASE + 51) + +#define HID_DRAW_WIN (HID_BASE + 52) +#define HID_EDIT_WIN (HID_BASE + 53) + +#define HID_INSERT_CTRL (HID_BASE + 54) // TbxControl Einfuegen +#define HID_INSERT_OBJ_CTRL (HID_BASE + 55) +#define HID_INSERT_FIELD_CTRL (HID_BASE + 56) + +#define HID_SOURCEVIEW (HID_BASE + 57) +#define HID_TBL_OPT_CTRL (HID_BASE + 58) +#define HID_AUTOFORMAT_CLB (HID_BASE + 59) + +#define HID_SCRL_NAVI (HID_BASE + 60) +#define HID_NAVI_DRAG_HYP (HID_BASE + 61) +#define HID_NAVI_DRAG_LINK (HID_BASE + 62) +#define HID_NAVI_DRAG_COPY (HID_BASE + 63) +#define HID_NAVI_OUTLINES (HID_BASE + 64) + +#define HID_AUTOFORMAT_EXEC (HID_BASE + 65) +#define HID_AUTOFORMAT_CLOSE (HID_BASE + 66) + +#define HID_PAGEPREVIEW (HID_BASE + 67) +#define HID_SOURCE_EDITWIN (HID_BASE + 68) + +// Dialog Help-IDs ********************************************************** + +#define HID_CONVERT_FROM (HID_BASE + 200) +#define HID_CONVERT_TO (HID_BASE + 201) +#define HID_EDIT_POSTIT (HID_BASE + 202) +#define HID_INSERT_CHART (HID_BASE + 203) +#define HID_PAGE_PREVIEW (HID_BASE + 204) +#define HID_INSERT_HYPERLINK (HID_BASE + 205) +#define HID_NAVIGATOR_TREELIST (HID_BASE + 206) +#define HID_DLG_CAPTION (HID_BASE + 207) +#define HID_DLG_GLOSS_DECIDE (HID_BASE + 208) +#define HID_NAVIGATOR_TOOLBOX (HID_BASE + 209) +#define HID_NAVIGATOR_LISTBOX (HID_BASE + 210) +#define HID_NUM_BULLET_DLG (HID_BASE + 211) +#define HID_VS_SINGLENUM (HID_BASE + 212) +#define HID_VS_NUM (HID_BASE + 213) +#define HID_VS_BULLET (HID_BASE + 214) +#define HID_VS_NUMBMP (HID_BASE + 215) +#define HID_VS_RULER (HID_BASE + 216) +#define HID_RULER_DIALOG (HID_BASE + 217) +#define HID_INSERT_ABSTRACT (HID_BASE + 218) +#define HID_NAVI_TBX1 (HID_BASE + 219) +#define HID_NAVI_TBX2 (HID_BASE + 220) +#define HID_NAVI_TBX3 (HID_BASE + 221) +#define HID_NAVI_TBX4 (HID_BASE + 222) +#define HID_NAVI_TBX5 (HID_BASE + 223) +#define HID_NAVI_TBX6 (HID_BASE + 224) +#define HID_NAVI_TBX7 (HID_BASE + 225) +#define HID_NAVI_TBX8 (HID_BASE + 226) +#define HID_NAVI_TBX9 (HID_BASE + 227) +#define HID_NAVI_TBX10 (HID_BASE + 228) +#define HID_NAVI_TBX11 (HID_BASE + 229) +#define HID_NAVI_TBX12 (HID_BASE + 230) +#define HID_NAVI_TBX13 (HID_BASE + 231) +#define HID_NAVI_TBX14 (HID_BASE + 232) +#define HID_NAVI_TBX15 (HID_BASE + 233) +#define HID_NAVI_VS (HID_BASE + 234) +#define HID_NUM_FORMAT_BTN (HID_BASE + 235) +#define HID_PPREV_ZOOM (HID_BASE + 236) +#define HID_NAVI_TBX16 (HID_BASE + 237) +#define HID_LTEMPL_TEXT (HID_BASE + 238) +#define HID_LTEMPL_FRAME (HID_BASE + 239) +#define HID_LTEMPL_PAGE (HID_BASE + 240) +#define HID_LTEMPL_OVERRIDE (HID_BASE + 241) +#define HID_LTEMPL_TEMPLATES (HID_BASE + 242) +#define HID_NAVI_TBX17 (HID_BASE + 243) +#define HID_NAVI_TBX18 (HID_BASE + 244) +#define HID_NAVI_TBX19 (HID_BASE + 245) +#define HID_NAVI_TBX20 (HID_BASE + 246) +#define HID_NAVI_TBX21 (HID_BASE + 247) +#define HID_NAVI_TBX22 (HID_BASE + 248) +#define HID_NAVI_TBX23 (HID_BASE + 249) +#define HID_NAVI_TBX24 (HID_BASE + 250) +#define HID_NAVIGATOR_GLOBAL_TOOLBOX (HID_BASE + 251) +#define HID_NAVIGATOR_GLOB_TREELIST (HID_BASE + 252) +#define HID_GLOS_GROUP_TREE (HID_BASE + 253) +#define HID_GLBLTREE_UPDATE (HID_BASE + 254) +#define HID_GLBLTREE_INSERT (HID_BASE + 255) +#define HID_GLBLTREE_EDIT (HID_BASE + 256) +#define HID_GLBLTREE_DEL (HID_BASE + 257) +#define HID_GLBLTREE_INS_IDX (HID_BASE + 258) +#define HID_GLBLTREE_INS_CNTIDX (HID_BASE + 259) +#define HID_GLBLTREE_INS_USRIDX (HID_BASE + 260) +#define HID_GLBLTREE_INS_FILE (HID_BASE + 261) +#define HID_GLBLTREE_INS_NEW_FILE (HID_BASE + 262) +#define HID_GLBLTREE_INS_TEXT (HID_BASE + 263) +#define HID_GLBLTREE_UPD_SEL (HID_BASE + 264) +#define HID_GLBLTREE_UPD_IDX (HID_BASE + 265) +#define HID_GLBLTREE_UPD_LINK (HID_BASE + 266) +#define HID_GLBLTREEUPD_ALL (HID_BASE + 267) +#define HID_NUM_OUTL_NAMED_NUMS (HID_BASE + 268) +#define HID_NUM_OUTL_NUM_SAVEAS (HID_BASE + 269) +#define HID_NUM_NAMED_NUMS (HID_BASE + 270) +#define HID_NUM_NUM_SAVEAS (HID_BASE + 271) +#define HID_NUM_STD_NUMBER (HID_BASE + 272) +#define HID_NUM_DEL_NUMBER (HID_BASE + 273) +#define HID_NUM_STD_BULLET (HID_BASE + 274) +#define HID_NUM_DEL_BULLET (HID_BASE + 275) +#define HID_NAVI_CONTENT (HID_BASE + 276) +#define HID_NAVI_GLOBAL (HID_BASE + 277) +#define HID_LTEMPL_NUMBERING (HID_BASE + 278) +#define HID_FLDVAR_APPLY (HID_BASE + 279) +#define HID_FLDVAR_DELETE (HID_BASE + 280) +#define HID_FLDEDT_ADDRESS (HID_BASE + 281) +#define HID_SORT_ACTION (HID_BASE + 282) +#define HID_SORT_AUTHOR (HID_BASE + 283) +#define HID_SORT_DATE (HID_BASE + 284) +#define HID_SORT_COMMENT (HID_BASE + 285) +#define HID_SW_SORT_POSITION (HID_BASE + 286) +#define HID_SYNC_BTN (HID_BASE + 287) +#define HID_EDIT_COMMENT (HID_BASE + 288) +#define HID_SEL_TEMPLATE (HID_BASE + 289) +#define HID_DLG_SEQUENCE_OPTION (HID_BASE + 290) +#define HID_DLG_FLDEDT_NEXT (HID_BASE + 291) +#define HID_DLG_FLDEDT_PREV (HID_BASE + 292) +#define HID_DLG_FLDEDT_ADDRESS (HID_BASE + 293) +#define HID_DLG_PRV_PRT_OPTIONS (HID_BASE + 294) + +#define HID_FILEDLG_CHARDLG (HID_BASE + 295) +#define HID_FILEDLG_LOADTEMPLATE (HID_BASE + 296) +#define HID_FILEDLG_ROMENU (HID_BASE + 297) +#define HID_FILEDLG_MAILMRGE1 (HID_BASE + 298) +#define HID_FILEDLG_MAILMRGE2 (HID_BASE + 299) +#define HID_FILEDLG_FRMPAGE (HID_BASE + 300) +#define HID_FILEDLG_SRCVIEW (HID_BASE + 301) +#define HID_FILEDLG_WIZDOKU (HID_BASE + 302) +#define HID_PREVIEW_ZOOM (HID_BASE + 303) + +#define HID_REDLINE_AUTOFMT_ACCEPT (HID_BASE + 304) +#define HID_MULTI_TOX_DLG (HID_BASE + 305) +#define HID_ASCII_FILTER (HID_BASE + 306) + +// TabPage Help-IDs ********************************************************* + +#define HID_DROPCAPS (HID_BASE + 400) +#define HID_FRM_EXT (HID_BASE + 401) +#define HID_FRM_STD (HID_BASE + 402) +#define HID_GRF_EXT (HID_BASE + 403) +#define HID_COLUMN (HID_BASE + 404) +#define HID_DOC_STAT (HID_BASE + 405) +#define HID_MACROASSIGN (HID_BASE + 406) +#define HID_FOOTNOTE_PAGE (HID_BASE + 407) +#define HID_OPTDOCDISP_PAGE (HID_BASE + 408) +#define HID_OPTGRID_PAGE (HID_BASE + 409) +#define HID_OPTTEST_PAGE (HID_BASE + 410) +#define HID_OPTPRINT_PAGE (HID_BASE + 411) +#define HID_FORMAT_TABLE (HID_BASE + 412) +#define HID_TABLE_COLUMN (HID_BASE + 413) +#define HID_LAB_LAB (HID_BASE + 414) +#define HID_LAB_PRT (HID_BASE + 415) +#define HID_ENV_PRT (HID_BASE + 416) +#define HID_LAB_FMT (HID_BASE + 417) +#define HID_ENV_ENV (HID_BASE + 418) +#define HID_ENV_FMT (HID_BASE + 419) +#define HID_FRM_URL (HID_BASE + 421) +#define HID_CHAR_URL (HID_BASE + 422) +#define HID_CONTENT_OPT (HID_BASE + 423) +#define HID_LAYOUT_OPT (HID_BASE + 424) +#define HID_STD_FONT (HID_BASE + 425) +#define HID_COND_COLL (HID_BASE + 426) +#define HID_FRM_ADD (HID_BASE + 427) +#define HID_TABLE_TEXTFLOW (HID_BASE + 428) +#define HID_AUTOFMT_BY_INPUT (HID_BASE + 429) +#define HID_AUTOFMT_APPLY (HID_BASE + 430) +#define HID_OPTTABLE_PAGE (HID_BASE + 431) +#define HID_PICK_SINGLE_NUM (HID_BASE + 432) +#define HID_PICK_BULLET (HID_BASE + 433) +#define HID_PICK_NUM (HID_BASE + 434) +#define HID_PICK_BMP (HID_BASE + 435) +#define HID_OPTSRCVIEW (HID_BASE + 436) +#define HID_FLD_DB (HID_BASE + 437) +#define HID_FLD_DOKINF (HID_BASE + 438) +#define HID_FLD_VAR (HID_BASE + 439) +#define HID_FLD_DOK (HID_BASE + 440) +#define HID_FLD_FUNC (HID_BASE + 441) +#define HID_FLD_REF (HID_BASE + 442) +#define HID_OPTSHDWCRSR (HID_BASE + 443) +#define HID_NUM_OPTIONS (HID_BASE + 444) +#define HID_NUM_POSITION (HID_BASE + 445) +#define HID_NUMPARA (HID_BASE + 446) +#define HID_FOOTNOTE_OPTIONS (HID_BASE + 447) +#define HID_ENDNOTE_OPTIONS (HID_BASE + 448) +#define HID_REDLINE_OPT (HID_BASE + 449) +#define HID_LINENUMBERING (HID_BASE + 450) +#define HID_REDLINE_ACCEPT (HID_BASE + 451) +#define HID_EDIT_FLD_DB (HID_BASE + 452) +#define HID_EDIT_FLD_DOKINF (HID_BASE + 453) +#define HID_EDIT_FLD_VAR (HID_BASE + 454) +#define HID_EDIT_FLD_DOK (HID_BASE + 455) +#define HID_EDIT_FLD_FUNC (HID_BASE + 456) +#define HID_EDIT_FLD_REF (HID_BASE + 457) +#define HID_REDLINE_CTRL (HID_BASE + 458) +#define HID_TP_OUTLINE_NUM (HID_BASE + 459) +#define HID_OPTINSERT_PAGE (HID_BASE + 460) +#define HID_OPTCAPTION_PAGE (HID_BASE + 461) +#define HID_OPTLOAD_PAGE (HID_BASE + 462) +#define HID_INSERT_TOX_PAGE (HID_BASE + 463) +#define HID_TOX_FORM_ENTRY_PAGE (HID_BASE + 464) +#define HID_TOX_FORM_STYLES_PAGE (HID_BASE + 465) +#define HID_INSERT_TOX_TABDLG (HID_BASE + 466) +#define HID_INSERT_SECTION_PAGE (HID_BASE + 467) +#define HID_INSERT_SECTION_DLG (HID_BASE + 468) +#define HID_SECTION_PROPERTIES_DLG (HID_BASE + 469) +#define HID_RENAME_XNAMED (HID_BASE + 470) +#define HID_TP_TOX_SELECT (HID_BASE + 471) +#define HID_TP_TOX_ENTRY (HID_BASE + 472) +#define HID_TOX_STYLES_PAGE (HID_BASE + 473) +#define HID_TP_VISITING_CARDS (HID_BASE + 474) +#define HID_DLG_ADD_IDX_STYLES (HID_BASE + 475) +#define HID_ADD_STYLES_TLB (HID_BASE + 476) +#define HID_OLE_CHECKLB (HID_BASE + 477) +#define HID_DLG_CREATE_AUTH_ENTRY (HID_BASE + 478) +#define HID_TP_PRIVATE_DATA (HID_BASE + 479) +#define HID_TP_BUSINESS_DATA (HID_BASE + 480) +#define HID_SECTION_FTNENDNOTES_PAGE (HID_BASE + 481) + + +// AutoPilot Help-IDs ********************************************************* + +#define HID_LETTER_PAGE1 (HID_BASE + 501) +#define HID_LETTER_PAGE2 (HID_BASE + 502) +#define HID_LETTER_PAGE3 (HID_BASE + 503) +#define HID_LETTER_PAGE4 (HID_BASE + 504) +#define HID_LETTER_PAGE5 (HID_BASE + 505) +#define HID_LETTER_PAGE6 (HID_BASE + 506) +#define HID_LETTER_PAGE7 (HID_BASE + 507) +#define HID_LETTER_PAGE8 (HID_BASE + 508) +#define HID_LETTER_PAGE9 (HID_BASE + 509) + +#define HID_FAX_PAGE1 (HID_BASE + 511) +#define HID_FAX_PAGE2 (HID_BASE + 512) +#define HID_FAX_PAGE3 (HID_BASE + 513) +#define HID_FAX_PAGE4 (HID_BASE + 514) +#define HID_FAX_PAGE5 (HID_BASE + 515) +#define HID_FAX_PAGE6 (HID_BASE + 516) +#define HID_FAX_PAGE7 (HID_BASE + 517) +#define HID_FAX_PAGE8 (HID_BASE + 518) + +#define HID_MEMO_PAGE1 (HID_BASE + 521) +#define HID_MEMO_PAGE2 (HID_BASE + 522) +#define HID_MEMO_PAGE3 (HID_BASE + 523) +#define HID_MEMO_PAGE4 (HID_BASE + 524) +#define HID_MEMO_PAGE5 (HID_BASE + 525) + +#define HID_AGENDA_PAGE1 (HID_BASE + 531) +#define HID_AGENDA_PAGE2 (HID_BASE + 532) +#define HID_AGENDA_PAGE3 (HID_BASE + 533) +#define HID_AGENDA_PAGE4 (HID_BASE + 534) +#define HID_AGENDA_PAGE5 (HID_BASE + 535) +#define HID_AGENDA_PAGE6 (HID_BASE + 536) + +#define HID_AUTOPILOT_NEXT (HID_BASE + 537) +#define HID_AUTOPILOT_PREV (HID_BASE + 538) +#define HID_AUTOPILOT_OK (HID_BASE + 539) + +// HelpIds fuers Menue ***************************************************** + +#define HID_MN_SUB_TBLROW (HID_BASE + 600) +#define HID_MN_SUB_TBLCOL (HID_BASE + 601) +#define HID_MN_SUB_AUTOFORMAT (HID_BASE + 602) +#define HID_MN_SUB_TOOLBAR (HID_BASE + 603) +#define HID_MN_SUB_FIELD (HID_BASE + 604) +#define HID_MN_SUB_GRAPHIC (HID_BASE + 605) +#define HID_MN_SUB_TEMPLATES (HID_BASE + 606) +#define HID_MN_SUB_ARRANGE (HID_BASE + 607) +#define HID_MN_SUB_SPELLING (HID_BASE + 608) +#define HID_MN_SUB_UPDATE (HID_BASE + 609) +#define HID_MN_SUB_MIRROR (HID_BASE + 610) +#define HID_MN_SUB_ALIGN (HID_BASE + 611) +#define HID_MN_SUB_OPTIONS (HID_BASE + 612) + +#define HID_MN_CALC_PHD (HID_BASE + 613) +#define HID_MN_CALC_SQRT (HID_BASE + 614) +#define HID_MN_CALC_OR (HID_BASE + 615) +#define HID_MN_CALC_XOR (HID_BASE + 616) +#define HID_MN_CALC_AND (HID_BASE + 617) +#define HID_MN_CALC_NOT (HID_BASE + 618) +#define HID_MN_CALC_EQ (HID_BASE + 619) +#define HID_MN_CALC_NEQ (HID_BASE + 620) +#define HID_MN_CALC_LEQ (HID_BASE + 621) +#define HID_MN_CALC_GEQ (HID_BASE + 622) +#define HID_MN_CALC_LES (HID_BASE + 623) +#define HID_MN_CALC_GRE (HID_BASE + 624) +#define HID_MN_CALC_SUM (HID_BASE + 625) +#define HID_MN_CALC_MEAN (HID_BASE + 626) +#define HID_MN_CALC_MIN (HID_BASE + 627) +#define HID_MN_CALC_MAX (HID_BASE + 628) +#define HID_MN_CALC_SIN (HID_BASE + 629) +#define HID_MN_CALC_COS (HID_BASE + 630) +#define HID_MN_CALC_TAN (HID_BASE + 631) +#define HID_MN_CALC_ASIN (HID_BASE + 632) +#define HID_MN_CALC_ACOS (HID_BASE + 633) +#define HID_MN_CALC_ATAN (HID_BASE + 634) +#define HID_MN_CALC_POW (HID_BASE + 635) +#define HID_MN_CALC_LISTSEP (HID_BASE + 636) +#define HID_MN_POP_OPS (HID_BASE + 637) +#define HID_MN_POP_STATISTICS (HID_BASE + 638) +#define HID_MN_POP_FUNC (HID_BASE + 639) +#define HID_MN_RSC_END (HID_BASE + 640) +#define HID_MN_CALC_ROUND (HID_BASE + 641) + +#define HID_MN_READONLY_DOWNLOAD (HID_BASE + 643) +#define HID_MN_READONLY_CREATEGRAPHIKLINK (HID_BASE + 644) +#define HID_MN_READONLY_SAVEGRAPHIC (HID_BASE + 645) +#define HID_MN_READONLY_GRAPHICTOGALLERY (HID_BASE + 646) +#define HID_MN_READONLY_TOGALLERYLINK (HID_BASE + 647) +#define HID_MN_READONLY_TOGALLERYCOPY (HID_BASE + 648) +#define HID_MN_READONLY_SAVEBACKGROUND (HID_BASE + 649) +#define HID_MN_READONLY_BACKGROUNDTOGALLERY (HID_BASE + 650) +#define HID_MN_READONLY_COPYLINK (HID_BASE + 651) +#define HID_MN_READONLY_COPYGRAPHIC (HID_BASE + 652) +#define HID_MN_READONLY_LOADGRAPHIC (HID_BASE + 653) +#define HID_MN_READONLY_GRAPHICOFF (HID_BASE + 654) +#define HID_MN_READONLY_PLUGINOFF (HID_BASE + 655) + +#define HID_MD_GLOS_DEFINE (HID_BASE + 656) +#define HID_MD_GLOS_REPLACE (HID_BASE + 657) +#define HID_MD_GLOS_RENAME (HID_BASE + 658) +#define HID_MD_GLOS_DELETE (HID_BASE + 659) +#define HID_MD_GLOS_EDIT (HID_BASE + 660) +#define HID_MD_GLOS_MACRO (HID_BASE + 661) +#define HID_LINGU_ADD_WORD (HID_BASE + 662) +#define HID_LINGU_IGNORE_WORD (HID_BASE + 663) +#define HID_LINGU_SPELLING_DLG (HID_BASE + 664) +#define HID_LINGU_AUTOCORR (HID_BASE + 665) +#define HID_LINGU_REPLACE (HID_BASE + 666) +#define HID_MD_GLOS_CATEGORY (HID_BASE + 667) +#define HID_REGION_TREE (HID_BASE + 668) +#define HID_LINGU_WORD_LANGUAGE (HID_BASE + 669) +#define HID_LINGU_PARA_LANGUAGE (HID_BASE + 670) +#define HID_MD_GLOS_DEFINE_TEXT (HID_BASE + 671) +#define HID_DLG_PASSWD_SECTION (HID_BASE + 672) +#define HID_MD_COPY_TO_CLIPBOARD (HID_BASE + 673) +#define HID_MD_GLOS_IMPORT (HID_BASE + 674) + +// Weiter Help-IDs ********************************************************** + +#define HID_CLOSE_FILE (HID_BASE + 1001) +#define HID_LAUNCH_REGISTRY (HID_BASE + 1002) +#define HID_MERGE_FILE (HID_BASE + 1003) +#define HID_MERGE_FILE_DLG (HID_BASE + 1004) +#define HID_NEW_FILE (HID_BASE + 1005) +#define HID_OPEN_FILE (HID_BASE + 1007) +#define HID_OPEN_LASTVERSION (HID_BASE + 1009) +#define HID_PRINT_FILE (HID_BASE + 1010) +#define HID_PRINT_FILE_OPTIONS (HID_BASE + 1011) +#define HID_SAVE_FILE_AS (HID_BASE + 1012) +#define HID_SAVE_FILE (HID_BASE + 1013) +#define HID_SETUP_PRINTER_DLG (HID_BASE + 1015) +#define HID_EXIT (HID_BASE + 1017) +#define HID_CREATE_DOCUMENT (HID_BASE + 1019) +#define HID_DOCSTAT_DLG (HID_BASE + 1020) +#define HID_LOAD_TEMPLATE_DLG (HID_BASE + 1021) +#define HID_SAVE_ALL (HID_BASE + 1023) +#define HID_NEW_FILE_DEFAULT (HID_BASE + 1024) +#define HID_PRINT_FILE_DEFAULT (HID_BASE + 1025) +#define HID_FAX (HID_BASE + 1028) +#define HID_SELECT_DATABASE (HID_BASE + 1030) +#define HID_DOC_INFO_DLG (HID_BASE + 1031) +#define HID_DOC_MGR_DLG (HID_BASE + 1032) +#define HID_OPTCAPTION_CLB (HID_BASE + 1033) + +#define HID_COPY (HID_BASE + 1102) +#define HID_CUT (HID_BASE + 1103) +#define HID_EDIT_FIELD (HID_BASE + 1104) +#define HID_EDIT_FILE_INFO_DLG (HID_BASE + 1107) +#define HID_EDIT_LINK_DLG (HID_BASE + 1109) +#define HID_EDIT_OBJECT (HID_BASE + 1110) +#define HID_GOTO (HID_BASE + 1111) +#define HID_SET_FIELD_VALUE (HID_BASE + 1112) +#define HID_PASTE (HID_BASE + 1113) +#define HID_REDO (HID_BASE + 1116) +#define HID_SEARCH (HID_BASE + 1117) +#define HID_REPLACE (HID_BASE + 1118) +#define HID_SELECT_ALL (HID_BASE + 1119) +#define HID_UNDO (HID_BASE + 1120) +#define HID_REPEAT (HID_BASE + 1122) +#define HID_BUFFER_UPDATE (HID_BASE + 1124) +#define HID_UPDATE_FIELDS (HID_BASE + 1126) +#define HID_EXECUTE_MACROFIELD (HID_BASE + 1127) +#define HID_EDIT_FORMULA (HID_BASE + 1128) +#define HID_CALC_TABLE (HID_BASE + 1129) +#define HID_NUM_BULLET_DOWN (HID_BASE + 1130) +#define HID_NUM_BULLET_UP (HID_BASE + 1131) +#define HID_NUM_BULLET_PREV (HID_BASE + 1132) +#define HID_NUM_BULLET_NEXT (HID_BASE + 1133) +#define HID_NUM_BULLET_MOVEUP (HID_BASE + 1134) +#define HID_NUM_BULLET_MOVEDOWN (HID_BASE + 1135) +#define HID_NUM_BULLET_NONUM (HID_BASE + 1136) +#define HID_NUM_BULLET_OFF (HID_BASE + 1137) +#define HID_NUM_BULLET_ON (HID_BASE + 1138) +#define HID_NUM_BULLET_OUTLINE_DOWN (HID_BASE + 1139) +#define HID_NUM_BULLET_OUTLINE_UP (HID_BASE + 1140) +#define HID_NUM_BULLET_OUTLINE_MOVEUP (HID_BASE + 1141) +#define HID_NUM_BULLET_OUTLINE_MOVEDOWN (HID_BASE + 1142) +#define HID_UPDATE_INPUTFIELDS (HID_BASE + 1143) +#define HID_NUM_NUMBERING_ON (HID_BASE + 1144) +#define HID_REPEAT_SEARCH (HID_BASE + 1150) +#define HID_REPAGINATE (HID_BASE + 1161) + +#define HID_REFRESH_VIEW (HID_BASE + 1201) +#define HID_RIBBON (HID_BASE + 1210) +#define HID_RULER (HID_BASE + 1211) +#define HID_STATUSBAR (HID_BASE + 1212) +#define HID_TOOLBOX (HID_BASE + 1213) +#define HID_VIEW_BOUNDS (HID_BASE + 1214) +#define HID_VIEW_FIELDS (HID_BASE + 1215) +#define HID_VLINEAL (HID_BASE + 1216) +#define HID_VSCROLLBAR (HID_BASE + 1217) +#define HID_HSCROLLBAR (HID_BASE + 1218) +#define HID_VIEW_META_CHARS (HID_BASE + 1224) +#define HID_VIEW_MARKS (HID_BASE + 1225) +#define HID_VIEW_FIELDNAME (HID_BASE + 1226) +#define HID_VIEW_TABLEGRID (HID_BASE + 1227) +#define HID_ZOOM (HID_BASE + 1231) + +#define HID_DELETE_BOOKMARK (HID_BASE + 1301) +#define HID_INSERT_BREAK (HID_BASE + 1303) +#define HID_INSERT_COLUMN_BREAK (HID_BASE + 1305) +#define HID_INSERT_FILE (HID_BASE + 1309) +#define HID_INSERT_FOOTNOTE (HID_BASE + 1311) +#define HID_INSERT_GRAFIC (HID_BASE + 1315) +#define HID_INSERT_LINEBREAK (HID_BASE + 1318) +#define HID_INSERT_MERGEFIELD_DLG (HID_BASE + 1320) +#define HID_INSERT_OBJECT_DLG (HID_BASE + 1322) +#define HID_INSERT_PAGEBREAK (HID_BASE + 1323) +#define HID_INSERT_RECORD (HID_BASE + 1326) +#define HID_MERGE_RECORD (HID_BASE + 1327) +#define HID_INSERT_SYMBOL (HID_BASE + 1328) +#define HID_INSERT_STRING (HID_BASE + 1331) +#define HID_INSERT_COLS (HID_BASE + 1332) +#define HID_INSERT_FRAME_INTERACT (HID_BASE + 1333) +#define HID_INSERT_FRAME (HID_BASE + 1334) +#define HID_INSERT_IDX_ENTRY (HID_BASE + 1340) +#define HID_INSERT_USERIDX_ENTRY (HID_BASE + 1341) +#define HID_INSERT_CNTNTIDX_ENTRY (HID_BASE + 1342) +#define HID_INSERT_SOFT_HYPHEN (HID_BASE + 1350) +#define HID_INSERT_HARD_SPACE (HID_BASE + 1351) + +#define HID_SET_FONT (HID_BASE + 1401) +#define HID_SET_FONT_SIZE (HID_BASE + 1402) +#define HID_GROW_FONT_SIZE (HID_BASE + 1403) +#define HID_SHRINK_FONT_SIZE (HID_BASE + 1404) +#define HID_SET_BOLD (HID_BASE + 1405) +#define HID_SET_ITALIC (HID_BASE + 1406) +#define HID_SET_SHADOW (HID_BASE + 1407) +#define HID_SET_OUTLINE (HID_BASE + 1408) +#define HID_SET_UNDERLINE (HID_BASE + 1409) +#define HID_SET_STRIKEOUT (HID_BASE + 1410) +#define HID_SET_SUPER_SCRIPT (HID_BASE + 1411) +#define HID_SET_SUB_SCRIPT (HID_BASE + 1412) +#define HID_SET_COLOR (HID_BASE + 1413) +#define HID_SET_CASEMAP (HID_BASE + 1414) +#define HID_SET_LANGUAGE (HID_BASE + 1415) +#define HID_SET_KERNING (HID_BASE + 1416) +#define HID_INDENT_TO_TABSTOP (HID_BASE + 1417) +#define HID_SET_LEFT_PARA (HID_BASE + 1418) +#define HID_SET_RIGHT_PARA (HID_BASE + 1419) +#define HID_SET_CENTER_PARA (HID_BASE + 1420) +#define HID_SET_JUSTIFY_PARA (HID_BASE + 1421) +#define HID_SET_LINE_SPACE_1 (HID_BASE + 1422) +#define HID_SET_LINE_SPACE_15 (HID_BASE + 1423) +#define HID_SET_LINE_SPACE_2 (HID_BASE + 1424) +#define HID_FLIP_HORZ_GRAFIC (HID_BASE + 1425) +#define HID_FLIP_VERT_GRAFIC (HID_BASE + 1426) +#define HID_SET_ADJUST (HID_BASE + 1428) +#define HID_SET_LRMARGIN (HID_BASE + 1429) +#define HID_SET_ULMARGIN (HID_BASE + 1430) +#define HID_UNINDENT_TO_TABSTOP (HID_BASE + 1431) +#define HID_SET_HYPHEN_ZONE (HID_BASE + 1432) +#define HID_SET_PAGE_BREAK (HID_BASE + 1433) +#define HID_SET_KEEP_TOGETHER (HID_BASE + 1434) +#define HID_SET_WIDOW (HID_BASE + 1436) +#define HID_SET_ORPHAN (HID_BASE + 1437) +#define HID_FORMAT_SHADOW (HID_BASE + 1438) +#define HID_FORMAT_BORDER (HID_BASE + 1439) +#define HID_FORMAT_CHAR_DLG (HID_BASE + 1441) +#define HID_FORMAT_PARA_DLG (HID_BASE + 1443) +#define HID_FORMAT_TAB (HID_BASE + 1444) +#define HID_FORMAT_TAB_DLG (HID_BASE + 1445) +#define HID_FORMAT_BORDER_DLG (HID_BASE + 1447) +#define HID_FORMAT_BACKGROUND (HID_BASE + 1448) +#define HID_FORMAT_BACKGROUND_DLG (HID_BASE + 1450) +#define HID_FORMAT_PAGE (HID_BASE + 1451) +#define HID_FORMAT_PAGE_DLG (HID_BASE + 1452) +#define HID_FORMAT_DROPCAPS (HID_BASE + 1454) +#define HID_FORMAT_FRAME_DLG (HID_BASE + 1456) +#define HID_FORMAT_GRAFIC_DLG (HID_BASE + 1458) +#define HID_FORMAT_TABLE_DLG (HID_BASE + 1460) +#define HID_NEW_STYLE_BY_EXAMPLE (HID_BASE + 1462) +#define HID_UPDATE_STYLE_BY_EXAMPLE (HID_BASE + 1463) +#define HID_STYLE_SHEET_FRAME_DLG (HID_BASE + 1464) +#define HID_STYLE_SHEET_DOC_DLG (HID_BASE + 1465) +#define HID_FORMAT_RESET (HID_BASE + 1469) +#define HID_FRAME_TO_TOP (HID_BASE + 1470) +#define HID_FRAME_TO_BOTTOM (HID_BASE + 1471) +#define HID_FRAME_NOWRAP (HID_BASE + 1472) +#define HID_FRAME_WRAP (HID_BASE + 1473) +#define HID_FRAME_WRAPTHRU (HID_BASE + 1474) +#define HID_FRAME_ALIGN_HORZ_LEFT (HID_BASE + 1475) +#define HID_FRAME_ALIGN_HORZ_RIGHT (HID_BASE + 1476) +#define HID_FRAME_ALIGN_HORZ_CENTER (HID_BASE + 1477) +#define HID_FRAME_ALIGN_VERT_TOP (HID_BASE + 1478) +#define HID_FRAME_ALIGN_VERT_BOTTOM (HID_BASE + 1479) +#define HID_FRAME_ALIGN_VERT_CENTER (HID_BASE + 1480) +#define HID_SET_FRM_SIZE (HID_BASE + 1481) +#define HID_SET_FRM_POSITION (HID_BASE + 1482) +#define HID_SET_FRM_ANCHOR (HID_BASE + 1483) +#define HID_SET_FRM_WRAP (HID_BASE + 1484) +#define HID_SET_FRM_DIST (HID_BASE + 1485) +#define HID_SET_FRM_OPTIONS (HID_BASE + 1486) +#define HID_SET_GRF_MIRROR (HID_BASE + 1488) +#define HID_SET_TABLE_WIDTH (HID_BASE + 1489) +#define HID_SET_TABLE_ALIGN (HID_BASE + 1490) +#define HID_SET_CHAR_STYLE (HID_BASE + 1491) +#define HID_SET_PARA_STYLE (HID_BASE + 1492) +#define HID_SET_PAGE_STYLE (HID_BASE + 1493) +#define HID_SET_FRM_MACRO (HID_BASE + 1494) +#define HID_SET_FRM_COLUMNS (HID_BASE + 1495) +#define HID_SET_FRM_COLUMN_WIDTH (HID_BASE + 1496) +#define HID_UPDATE_STYLES_DIRECT (HID_BASE + 1497) + +#define HID_TABLE_INSERT_ROW (HID_BASE + 1501) +#define HID_TABLE_DELETE_ROW (HID_BASE + 1503) +#define HID_TABLE_DELETE_COL (HID_BASE + 1504) +#define HID_TABLE_MERGE_CELLS (HID_BASE + 1506) +#define HID_AUTOFMT_TABLE (HID_BASE + 1507) +#define HID_SWDLG_STRINPUT (HID_BASE + 1508) +#define HID_TABLE_SET_ULSPACE (HID_BASE + 1509) +#define HID_TABLE_SET_GRID (HID_BASE + 1510) +#define HID_TABLE_SET_SHADOW (HID_BASE + 1511) +#define HID_TABLE_SELECT_ROW (HID_BASE + 1513) +#define HID_TABLE_SELECT_COL (HID_BASE + 1514) +#define HID_TABLE_SELECT_ALL (HID_BASE + 1515) +#define HID_TABLE_SET_READ_ONLY_CELLS (HID_BASE + 1517) +#define HID_TABLE_UNSET_READ_ONLY_CELLS (HID_BASE + 1519) +#define HID_PAGE_STYLE_SET_COLS (HID_BASE + 1538) +#define HID_SET_PROP_LINE_SPACE (HID_BASE + 1540) +#define HID_SET_ABS_LINE_SPACE (HID_BASE + 1541) + +#define HID_SPELLING_DLG (HID_BASE + 1601) +#define HID_THESAURUS_DLG (HID_BASE + 1604) +#define HID_HYPHENATE_OPT_DLG (HID_BASE + 1607) +#define HID_SORTING (HID_BASE + 1613) +#define HID_SORTING_DLG (HID_BASE + 1614) +#define HID_CALCULATE (HID_BASE + 1615) +#define HID_RECORD_MACRO_DLG (HID_BASE + 1622) +#define HID_PLAY_MACRO_DLG (HID_BASE + 1624) +#define HID_CONFIG_DLG (HID_BASE + 1627) +#define HID_EXPAND_GLOSSARY (HID_BASE + 1628) +#define HID_RENAME_GLOSSARY (HID_BASE + 1629) +#define HID_CONFIG_MENU (HID_BASE + 1630) +#define HID_CONFIG_KEY (HID_BASE + 1631) +#define HID_ASSIGN_LOCAL_MACRO_DLG (HID_BASE + 1632) +#define HID_COMPILE_MACRO (HID_BASE + 1633) +#define HID_CONFIG_VIEWOPTIONS (HID_BASE + 1635) +#define HID_CONFIG_COLORS (HID_BASE + 1636) +#define HID_INSERT_GLOSSARY (HID_BASE + 1640) +#define HID_AUTO_CORRECT (HID_BASE + 1649) +#define HID_AUTO_CORRECT_DLG (HID_BASE + 1650) +#define HID_HELP_PI (HID_BASE + 1655) +#define HID_NAVIGATION_PI (HID_BASE + 1656) +#define HID_TEMPLATE_PI (HID_BASE + 1657) +#define HID_ADDR_PI (HID_BASE + 1658) +#define HID_NAVIGATION_PI_GOTO_PAGE (HID_BASE + 1659) +#define HID_LETTER_WIZZARD (HID_BASE + 1660) +#define HID_FAX_WIZZARD (HID_BASE + 1661) +#define HID_MEMO_WIZZARD (HID_BASE + 1662) +#define HID_AGENDA_WIZZARD (HID_BASE + 1663) + +#define HID_NEW_WINDOW (HID_BASE + 1701) +#define HID_ARRANGE_ALL_WIN (HID_BASE + 1702) +#define HID_ARRANGE_CASCADE_WIN (HID_BASE + 1703) +#define HID_ARRANGE_HORZ_WIN (HID_BASE + 1704) +#define HID_ARRANGE_VERT_WIN (HID_BASE + 1705) + +#define HID_SHOW_HELP_INDEX (HID_BASE + 1802) +#define HID_SHOW_KEYBOARD_HELP (HID_BASE + 1803) +#define HID_SHOW_HELP_MANUAL (HID_BASE + 1804) +#define HID_SHOW_UPDATE_HELP (HID_BASE + 1805) + +#define HID_CHAR_LEFT (HID_BASE + 1901) +#define HID_CHAR_RIGHT (HID_BASE + 1902) +#define HID_LINE_UP (HID_BASE + 1903) +#define HID_LINE_DOWN (HID_BASE + 1904) +#define HID_START_OF_LINE (HID_BASE + 1905) +#define HID_END_OF_LINE (HID_BASE + 1906) +#define HID_START_OF_DOCUMENT (HID_BASE + 1907) +#define HID_END_OF_DOCUMENT (HID_BASE + 1908) +#define HID_START_OF_NEXT_PAGE (HID_BASE + 1909) +#define HID_END_OF_NEXT_PAGE (HID_BASE + 1910) +#define HID_START_OF_PREV_PAGE (HID_BASE + 1911) +#define HID_END_OF_PREV_PAGE (HID_BASE + 1912) +#define HID_START_OF_PAGE (HID_BASE + 1913) +#define HID_END_OF_PAGE (HID_BASE + 1914) +#define HID_START_OF_COLUMN (HID_BASE + 1917) +#define HID_END_OF_COLUMN (HID_BASE + 1918) +#define HID_START_OF_PARA (HID_BASE + 1919) +#define HID_END_OF_PARA (HID_BASE + 1920) +#define HID_NEXT_WORD (HID_BASE + 1921) +#define HID_PREV_WORD (HID_BASE + 1922) +#define HID_NEXT_SENT (HID_BASE + 1923) +#define HID_PREV_SENT (HID_BASE + 1924) +#define HID_DELETE (HID_BASE + 1925) +#define HID_BACKSPACE (HID_BASE + 1926) +#define HID_DELETE_SENT (HID_BASE + 1927) +#define HID_DELETE_BACK_SENT (HID_BASE + 1928) +#define HID_DELETE_WORD (HID_BASE + 1929) +#define HID_DELETE_BACK_WORD (HID_BASE + 1930) +#define HID_DELETE_LINE (HID_BASE + 1931) +#define HID_DELETE_BACK_LINE (HID_BASE + 1932) +#define HID_DELETE_PARA (HID_BASE + 1933) +#define HID_DELETE_BACK_PARA (HID_BASE + 1934) +#define HID_DELETE_WHOLE_LINE (HID_BASE + 1935) +#define HID_SET_INS_MODE (HID_BASE + 1936) +#define HID_PAGEUP (HID_BASE + 1937) +#define HID_PAGEDOWN (HID_BASE + 1938) +#define HID_SET_ADD_MODE (HID_BASE + 1939) +#define HID_SET_EXT_MODE (HID_BASE + 1940) +#define HID_ESCAPE (HID_BASE + 1941) +#define HID_SELECT_WORD (HID_BASE + 1943) +#define HID_START_TABLE (HID_BASE + 1947) +#define HID_END_TABLE (HID_BASE + 1948) +#define HID_NEXT_TABLE (HID_BASE + 1949) +#define HID_PREV_TABLE (HID_BASE + 1950) +#define HID_START_OF_NEXT_COLUMN (HID_BASE + 1951) +#define HID_END_OF_NEXT_COLUMN (HID_BASE + 1952) +#define HID_START_OF_PREV_COLUMN (HID_BASE + 1953) +#define HID_END_OF_PREV_COLUMN (HID_BASE + 1954) +#define HID_FOOTNOTE_TO_ANCHOR (HID_BASE + 1955) +#define HID_NEXT_FOOTNOTE (HID_BASE + 1956) +#define HID_PREV_FOOTNOTE (HID_BASE + 1957) +#define HID_CNTNT_TO_NEXT_FRAME (HID_BASE + 1958) +#define HID_FRAME_TO_ANCHOR (HID_BASE + 1959) +#define HID_TO_HEADER (HID_BASE + 1960) +#define HID_TO_FOOTER (HID_BASE + 1961) +#define HID_IDX_MARK_TO_IDX (HID_BASE + 1962) + +#define HID_ENVELOP (HID_BASE + 2050) +#define HID_LABEL (HID_BASE + 2051) +#define HID_ENVELOP_PRINT (HID_BASE + 2052) + +#define HID_NAVIGATION_IMGBTN (HID_BASE + 2054) +#define HID_ENVELOP_INSERT (HID_BASE + 2055) + +#define HID_WEBTOOLS_TOOLBOX (HID_BASE + 2056) +#define HID_WEBTEXT_TOOLBOX (HID_BASE + 2057) +#define HID_WEBFRAME_TOOLBOX (HID_BASE + 2058) +#define HID_TEXT_TOOLBOX (HID_BASE + 2059) +#define HID_TABLE_TOOLBOX (HID_BASE + 2060) +#define HID_FRAME_TOOLBOX (HID_BASE + 2061) +#define HID_GRAFIK_TOOLBOX (HID_BASE + 2062) +#define HID_OLE_TOOLBOX (HID_BASE + 2063) +#define HID_DRAW_TOOLBOX (HID_BASE + 2064) +#define HID_BEZIER_TOOLBOX (HID_BASE + 2066) +#define HID_DRAW_TEXT_TOOLBOX (HID_BASE + 2067) +#define HID_NUM_TOOLBOX (HID_BASE + 2068) +#define HID_TOOLS_TOOLBOX (HID_BASE + 2069) +#define HID_SRCVIEW_TOOLBOX (HID_BASE + 2070) + +#define HID_LABEL_INSERT (HID_BASE + 2071) +#define HID_CALC_TOOLBOX (HID_BASE + 2072) +#define HID_PVIEW_TOOLBOX (HID_BASE + 2073) + +#define HID_FIELD_INSERT (HID_BASE + 2074) +#define HID_FIELD_CLOSE (HID_BASE + 2075) + +#define HID_COND_COLL_TABLIST (HID_BASE + 2076) + +#define HID_DB_SELECTION_TLB (HID_BASE + 2077) +#define HID_FIELD_DINF_TYPE (HID_BASE + 2078) + +#define HID_DRAWFORM_TOOLBOX (HID_BASE + 2079) +#define HID_SELECT_TEMPLATE (HID_BASE + 2080) + +#define HID_AP_INSERT_DB_SEL (HID_BASE + 2081) +#define HID_WEBGRAPHIC_TOOLBOX (HID_BASE + 2082) +#define HID_OUTLINE_FORM (HID_BASE + 2083) +#define HID_NUM_RESET (HID_BASE + 2084) + +#define HID_AUTOFORMAT_REJECT (HID_BASE + 2085) +#define HID_AUTOFORMAT_ACCEPT (HID_BASE + 2086) +#define HID_AUTOFORMAT_EDIT_CHG (HID_BASE + 2087) + +//insert index/entries/Pattern buttons and edits +#define HID_TOX_ENTRY_BUTTON (HID_BASE + 2088) +#define HID_TOX_ENTRY_EDIT (HID_BASE + 2089) + +#define HID_DLG_NEW_USER_IDX (HID_BASE + 2090) +#define HID_INSERT_IDX_MRK_OK (HID_BASE + 2091) +#define HID_INSERT_IDX_MRK_CLOSE (HID_BASE + 2092) +#define HID_INSERT_AUTH_MRK_OK (HID_BASE + 2093) +#define HID_INSERT_AUTH_MRK_CLOSE (HID_BASE + 2094) +#define HID_INSERT_IDX_MRK_DELETE (HID_BASE + 2095) +#define HID_INSERT_IDX_MRK_NEW (HID_BASE + 2096) +#define HID_INSERT_IDX_MRK_PREV (HID_BASE + 2097) +#define HID_INSERT_IDX_MRK_PREV_SAME (HID_BASE + 2098) +#define HID_INSERT_IDX_MRK_NEXT (HID_BASE + 2099) +#define HID_INSERT_IDX_MRK_NEXT_SAME (HID_BASE + 2100) +#define HID_INSERT_IDX_MRK_TYPE (HID_BASE + 2101) +#define HID_INSERT_IDX_MRK_ENTRY (HID_BASE + 2102) +#define HID_INSERT_IDX_MRK_PRIM_KEY (HID_BASE + 2103) +#define HID_INSERT_IDX_MRK_SEC_KEY (HID_BASE + 2104) +#define HID_INSERT_IDX_MRK_LEVEL (HID_BASE + 2105) +#define HID_INSERT_IDX_MRK_MAIN_ENTRY (HID_BASE + 2106) +#define HID_INSERT_IDX_MRK_APPLY_ALL (HID_BASE + 2107) +#define HID_INSERT_AUTH_MRK_ENTRY (HID_BASE + 2108) +#define HID_INSERT_AUTH_MRK_CREATE_ENTRY (HID_BASE + 2109) +#define HID_INSERT_AUTH_MRK_EDIT_ENTRY (HID_BASE + 2110) +#define HID_TOKEN_WINDOW (HID_BASE + 2111) + +#define HID_AUTH_FIELD_IDENTIFIER (HID_BASE + 2112 ) +#define HID_AUTH_FIELD_AUTHORITY_TYPE (HID_BASE + 2113 ) +#define HID_AUTH_FIELD_ADDRESS (HID_BASE + 2114 ) +#define HID_AUTH_FIELD_ANNOTE (HID_BASE + 2115 ) +#define HID_AUTH_FIELD_AUTHOR (HID_BASE + 2116 ) +#define HID_AUTH_FIELD_BOOKTITLE (HID_BASE + 2117 ) +#define HID_AUTH_FIELD_CHAPTER (HID_BASE + 2118 ) +#define HID_AUTH_FIELD_EDITION (HID_BASE + 2119 ) +#define HID_AUTH_FIELD_EDITOR (HID_BASE + 2120 ) +#define HID_AUTH_FIELD_HOWPUBLISHED (HID_BASE + 2121 ) +#define HID_AUTH_FIELD_INSTITUTION (HID_BASE + 2122 ) +#define HID_AUTH_FIELD_JOURNAL (HID_BASE + 2123 ) +#define HID_AUTH_FIELD_MONTH (HID_BASE + 2124 ) +#define HID_AUTH_FIELD_NOTE (HID_BASE + 2125 ) +#define HID_AUTH_FIELD_NUMBER (HID_BASE + 2126 ) +#define HID_AUTH_FIELD_ORGANIZATIONS (HID_BASE + 2127 ) +#define HID_AUTH_FIELD_PAGES (HID_BASE + 2128 ) +#define HID_AUTH_FIELD_PUBLISHER (HID_BASE + 2129 ) +#define HID_AUTH_FIELD_SCHOOL (HID_BASE + 2130 ) +#define HID_AUTH_FIELD_SERIES (HID_BASE + 2131 ) +#define HID_AUTH_FIELD_TITLE (HID_BASE + 2132 ) +#define HID_AUTH_FIELD_REPORT_TYPE (HID_BASE + 2133 ) +#define HID_AUTH_FIELD_VOLUME (HID_BASE + 2134 ) +#define HID_AUTH_FIELD_YEAR (HID_BASE + 2135 ) +#define HID_AUTH_FIELD_URL (HID_BASE + 2136 ) +#define HID_AUTH_FIELD_CUSTOM1 (HID_BASE + 2137 ) +#define HID_AUTH_FIELD_CUSTOM2 (HID_BASE + 2138 ) +#define HID_AUTH_FIELD_CUSTOM3 (HID_BASE + 2139 ) +#define HID_AUTH_FIELD_CUSTOM4 (HID_BASE + 2140 ) +#define HID_AUTH_FIELD_CUSTOM5 (HID_BASE + 2141 ) +#define HID_AUTH_FIELD_ISBN (HID_BASE + 2142 ) + +#define HID_AUTH_MARK_DLG_FROM_COMP_RB (HID_BASE + 2143 ) +#define HID_AUTH_MARK_DLG_FROM_DOC_RB (HID_BASE + 2144 ) +#define HID_AUTH_MARK_DLG_ID_LISTBOX (HID_BASE + 2145 ) + +#define HID_INSERT_INDEX_ENTRY_LEVEL_LB (HID_BASE + 2146 ) +#define HID_INSERT_IDX_MRK_SRCH_CASESENSITIVE (HID_BASE + 2147 ) +#define HID_INSERT_IDX_MRK_SRCH_WORDONLY (HID_BASE + 2148 ) +#define HID_DLG_CREATE_AUTOMARK (HID_BASE + 2149 ) +#define HID_BUSINESS_CARD_CONTENT (HID_BASE + 2150 ) diff --git a/sw/inc/hintids.hxx b/sw/inc/hintids.hxx new file mode 100644 index 000000000000..6d77b7a021a5 --- /dev/null +++ b/sw/inc/hintids.hxx @@ -0,0 +1,475 @@ +/************************************************************************* + * + * $RCSfile: hintids.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _HINTIDS_HXX +#define _HINTIDS_HXX + +#ifndef _SOLAR_H +#include // fuer __FAR_DATA +#endif +#ifndef _SAL_TYPES_H_ +#include // for sal_Unicode +#endif + +// fuer SwTxtHints ohne Endindex wird folgendes Zeichen eingefuegt: +//JP 24.05.00: for the new UniCode Version: +#define CH_TXTATR_BREAKWORD ((sal_Unicode)0x01) +#define CH_TXTATR_INWORD ((sal_Unicode)0x02) + + +/* + * Hier kommen erst mal die enums fuer die Hints + */ + +#define HINT_BEGIN 1 + +#define POOLATTR_BEGIN HINT_BEGIN +#define POOLATTR_END RES_UNKNOWNATR_END + +// Bereiche fuer die Id's der einzelnen Format-Attribute +// die Which-Werte fuer die Charakter-Format Attribute +enum RES_CHRATR +{ +RES_CHRATR_BEGIN = HINT_BEGIN, + RES_CHRATR_CASEMAP = RES_CHRATR_BEGIN, // 1 + RES_CHRATR_CHARSETCOLOR, // 2 + RES_CHRATR_COLOR, // 3 + RES_CHRATR_CONTOUR, // 4 + RES_CHRATR_CROSSEDOUT, // 5 + RES_CHRATR_ESCAPEMENT, // 6 + RES_CHRATR_FONT, // 7 + RES_CHRATR_FONTSIZE, // 8 + RES_CHRATR_KERNING, // 9 + RES_CHRATR_LANGUAGE, // 10 + RES_CHRATR_POSTURE, // 11 + RES_CHRATR_PROPORTIONALFONTSIZE, // 12 + RES_CHRATR_SHADOWED, // 13 + RES_CHRATR_UNDERLINE, // 14 + RES_CHRATR_WEIGHT, // 15 + RES_CHRATR_WORDLINEMODE, // 16 + RES_CHRATR_AUTOKERN, // 17 + RES_CHRATR_BLINK, // 18 + RES_CHRATR_NOHYPHEN, // 19 + RES_CHRATR_NOLINEBREAK, // 20 + RES_CHRATR_BACKGROUND, // 21 + RES_CHRATR_CJK_FONT, // 22 + RES_CHRATR_CJK_FONTSIZE, // 23 + RES_CHRATR_CJK_LANGUAGE, // 24 + RES_CHRATR_CJK_POSTURE, // 25 + RES_CHRATR_CJK_WEIGHT, // 26 + RES_CHRATR_CTL_FONT, // 27 + RES_CHRATR_CTL_FONTSIZE, // 28 + RES_CHRATR_CTL_LANGUAGE, // 29 + RES_CHRATR_CTL_POSTURE, // 30 + RES_CHRATR_CTL_WEIGHT, // 31 + RES_CHRATR_WRITING_DIRECTION, // 32 + RES_CHRATR_DUMMY2, // 33 + RES_CHRATR_DUMMY3, // 34 + RES_CHRATR_DUMMY4, // 35 + RES_CHRATR_DUMMY5, // 36 + RES_CHRATR_DUMMY1, // 37 +RES_CHRATR_END +}; + +// diese Attribute stehen nur im SwpAttr-Array vom TextNode +enum RES_TXTATR +{ +RES_TXTATR_BEGIN = RES_CHRATR_END, + +// alle TextAttribute mit einem Ende +// JP 12.07.96: die Ids RES_TXTATR_NOLINEBREAK und RES_TXTATR_NOHYPHEN +// wanderten in den Bereich der CharAttr. Die Ids selbst muessen +// aber als Dummies noch erhalten bleiben. Der SwG-/Sw3 Reader +// merkt sich die Ids immer als Offset zum Start der Gruppe!!! +// Aus dem RES_TXTATR_NOLINEBREAK ist jetzt RES_TXTATR_INETFMT geworden. +RES_TXTATR_WITHEND_BEGIN = RES_TXTATR_BEGIN , + RES_TXTATR_INETFMT = RES_TXTATR_WITHEND_BEGIN, // 38 + RES_TXTATR_DUMMY4, // 39 + RES_TXTATR_REFMARK, // 40 + RES_TXTATR_TOXMARK, // 41 + RES_TXTATR_CHARFMT, // 42 + RES_TXTATR_TWO_LINES, // 43 + RES_TXTATR_CJK_RUBY, // 44 + RES_TXTATR_UNKNOWN_CONTAINER, // 45 + RES_TXTATR_DUMMY5, // 46 + RES_TXTATR_DUMMY6, // 47 +RES_TXTATR_WITHEND_END, + +// alle TextAttribute ohne ein Ende +RES_TXTATR_NOEND_BEGIN = RES_TXTATR_WITHEND_END, + RES_TXTATR_FIELD = RES_TXTATR_NOEND_BEGIN, // 48 + RES_TXTATR_FLYCNT, // 49 + RES_TXTATR_FTN, // 50 + RES_TXTATR_SOFTHYPH, // 51 + RES_TXTATR_HARDBLANK, // 52 + RES_TXTATR_DUMMY1, // 53 + RES_TXTATR_DUMMY2, // 54 +RES_TXTATR_NOEND_END, +RES_TXTATR_END = RES_TXTATR_NOEND_END +}; + +enum RES_PARATR +{ +RES_PARATR_BEGIN = RES_TXTATR_END, + RES_PARATR_LINESPACING = RES_PARATR_BEGIN, // 55 + RES_PARATR_ADJUST, // 56 + RES_PARATR_SPLIT, // 57 + RES_PARATR_ORPHANS, // 58 + RES_PARATR_WIDOWS, // 59 + RES_PARATR_TABSTOP, // 60 + RES_PARATR_HYPHENZONE, // 61 + RES_PARATR_DROP, // 62 + RES_PARATR_REGISTER, // 63 + RES_PARATR_NUMRULE, // 64 + RES_PARATR_DUMMY2, // 65 +RES_PARATR_END +}; + + +enum RES_FRMATR +{ +RES_FRMATR_BEGIN = RES_PARATR_END, + RES_FILL_ORDER = RES_FRMATR_BEGIN, // 66 + RES_FRM_SIZE, // 67 + RES_PAPER_BIN, // 68 + RES_LR_SPACE, // 69 + RES_UL_SPACE, // 70 + RES_PAGEDESC, // 71 + RES_BREAK, // 72 + RES_CNTNT, // 73 + RES_HEADER, // 74 + RES_FOOTER, // 75 + RES_PRINT, // 76 + RES_OPAQUE, // 77 + RES_PROTECT, // 78 + RES_SURROUND, // 79 + RES_VERT_ORIENT, // 80 + RES_HORI_ORIENT, // 81 + RES_ANCHOR, // 82 + RES_BACKGROUND, // 83 + RES_BOX, // 84 + RES_SHADOW, // 85 + RES_FRMMACRO, // 86 + RES_COL, // 87 + RES_KEEP, // 88 + RES_URL, // 89 + RES_EDIT_IN_READONLY, // 90 + RES_LAYOUT_SPLIT, // 91 + RES_CHAIN, // 92 + RES_FRMATR_DUMMY2, // 93 + RES_LINENUMBER , // 94 + RES_FTN_AT_TXTEND, // 95 + RES_END_AT_TXTEND, // 96 + RES_COLUMNBALANCE, // 97 + RES_FRMATR_DUMMY7, // 98 + RES_FRMATR_DUMMY8, // 99 + RES_FRMATR_DUMMY9, // 100 +RES_FRMATR_END +}; + +enum RES_GRFATR +{ +RES_GRFATR_BEGIN = RES_FRMATR_END, + RES_GRFATR_MIRRORGRF = RES_GRFATR_BEGIN, // 101 + RES_GRFATR_CROPGRF, // 102 + + RES_GRFATR_ROTATION, // 103 + RES_GRFATR_LUMINANCE, // 104 + RES_GRFATR_CONTRAST, // 105 + RES_GRFATR_CHANNELR, // 106 + RES_GRFATR_CHANNELG, // 107 + RES_GRFATR_CHANNELB, // 108 + RES_GRFATR_GAMMA, // 109 + RES_GRFATR_INVERT, // 110 + RES_GRFATR_TRANSPARENCY, // 111 + RES_GRFATR_DRAWMODE, // 112 + + RES_GRFATR_DUMMY1, // 113 + RES_GRFATR_DUMMY2, // 114 + RES_GRFATR_DUMMY3, // 115 + RES_GRFATR_DUMMY4, // 116 + RES_GRFATR_DUMMY5, // 117 +RES_GRFATR_END +}; + +enum RES_BOXATR +{ +RES_BOXATR_BEGIN = RES_GRFATR_END, + RES_BOXATR_FORMAT = RES_BOXATR_BEGIN, // 118 + RES_BOXATR_FORMULA, // 119 + RES_BOXATR_VALUE, // 120 +RES_BOXATR_END +}; + +enum RES_UNKNOWNATR +{ +RES_UNKNOWNATR_BEGIN = RES_BOXATR_END, + RES_UNKNOWNATR_CONTAINER = RES_UNKNOWNATR_BEGIN, // 121 +RES_UNKNOWNATR_END +}; + + + +// ID-s fuer die Formate +enum RES_FMT +{ +RES_FMT_BEGIN = RES_UNKNOWNATR_END, + RES_CHRFMT = RES_FMT_BEGIN, + RES_FRMFMT, + RES_FLYFRMFMT, + RES_TXTFMTCOLL, + RES_GRFFMTCOLL, + RES_DRAWFRMFMT, + RES_CONDTXTFMTCOLL, +RES_FMT_END +}; + +// die ID's fuer Messages in den Formaten +enum RES_MSG +{ +RES_MSG_BEGIN = RES_FMT_END, + RES_OBJECTDYING = RES_MSG_BEGIN, + RES_FMT_CHG, + RES_ATTRSET_CHG, + RES_FRM_SIZECHG, + RES_TXTATR_FLDCHG, + RES_TXTATR_EMPTYCHG, + RES_INS_CHR, + RES_INS_TXT, + RES_DEL_CHR, + RES_DEL_TXT, + RES_UPDATE_ATTR, + RES_PAGEDESC_FTNINFO, + RES_REFMARKFLD_UPDATE, + RES_DOCPOS_UPDATE, + RES_TABLEFML_UPDATE, + RES_UPDATEDDETBL, + RES_TBLHEADLINECHG, + RES_AUTOFMT_DOCNODE, + RES_REPAINT, + RES_DOC_DTOR, + RES_SECTION_HIDDEN, + RES_SECTION_NOT_HIDDEN, + RES_GRAPHIC_ARRIVED, + RES_GRAPHIC_PIECE_ARRIVED, + RES_HIDDENPARA_PRINT, + RES_CONDCOLL_CONDCHG, + RES_VIRTPAGENUM_INFO, + RES_GETNUMNODES, + RES_GETLOWERNUMLEVEL, + RES_RESET_FMTWRITTEN, + RES_REMOVE_UNO_OBJECT, + RES_GRF_REREAD_AND_INCACHE, + RES_SECTION_RESETHIDDENFLAG, + RES_FINDNEARESTNODE, + RES_CONTENT_VISIBLE, + RES_FOOTNOTE_DELETED, + RES_REFMARK_DELETED, + RES_MSG_DUMMY7, + RES_MSG_DUMMY8, + RES_MSG_DUMMY9, +RES_MSG_END +}; + + +// eine ID fuer den RTF-Reader. Die Stylesheets werden wie +// Attribute behandelt, d.H. es gibt ein StyleSheet Attribut. Um +// nicht mit anderen Which()-Werten zu kollidieren, ist der Wert +// hier mit aufgefuehrt. (Auch das Hilfesystem definiert neue +// Attribute !!) +enum RES_FLTRATTR +{ +RES_FLTRATTR_BEGIN = RES_MSG_END, + RES_FLTR_STYLESHEET = RES_FLTRATTR_BEGIN, + RES_FLTR_BOOKMARK, + RES_FLTR_ANCHOR, + RES_FLTR_BORDER, + RES_FLTR_NUMRULE, + RES_FLTR_NUMRULE_NUM, + RES_FLTR_SDR_ANCHOR, + RES_FLTR_TOX, + RES_FLTR_SECTION, + RES_FLTR_REDLINE, +RES_FLTRATTR_END +}; + +#define RES_TBX_DUMMY RES_FLTRATTR_END + 1 + +#define HINT_END RES_TBX_DUMMY + +// Fehler-Erkennung !! +#define INVALID_HINT HINT_END +#define RES_WHICHHINT_END HINT_END + + +/* + * hole aus der statischen Default-Attribut Tabelle ueber den Which-Wert + * das entsprechende default Attribut. + * Ist keines vorhanden, returnt ein 0-Pointer !!! + * + * Diese Funktion ist im Init.CXX implementiert. Damit die Formate darauf + * zugreifen koennen, ist sie hier als extern deklariert. + * Im PRODUCT ist das Teil inline. + */ +class SfxPoolItem; +struct SfxItemInfo; +typedef SfxPoolItem* SwDfltAttrTab[ POOLATTR_END - POOLATTR_BEGIN ]; + +extern SwDfltAttrTab __FAR_DATA aAttrTab; +extern SfxItemInfo __FAR_DATA aSlotTab[]; + + +#ifndef PRODUCT +const SfxPoolItem* GetDfltAttr( USHORT nWhich ); +#else +inline const SfxPoolItem* GetDfltAttr( USHORT nWhich ) +{ + return aAttrTab[ nWhich - POOLATTR_BEGIN ]; +} +#endif + +// return for the given TextAttribut without an end the correct character. +// This function returns +// CH_TXTATR_BREAKWORD for Textattribut which breaks a word (default) +// CH_TXTATR_INWORD for Textattribut which dont breaks a word +class SwTxtAttr; +sal_Unicode GetCharOfTxtAttr( const SwTxtAttr& rAttr ); + +// alle Sets stehen im init.cxx + +// AttrSet-Range fuer die 3 Break-Attribute +extern USHORT __FAR_DATA aBreakSetRange[]; +// AttrSet-Range fuer die TxtFmtColl +extern USHORT __FAR_DATA aTxtFmtCollSetRange[]; +// AttrSet-Range fuer die GrfFmtColl +extern USHORT __FAR_DATA aGrfFmtCollSetRange[]; +// AttrSet-Range fuer die TextNode +extern USHORT __FAR_DATA aTxtNodeSetRange[]; +// AttrSet-Range fuer die NoTxtNode +extern USHORT __FAR_DATA aNoTxtNodeSetRange[]; +// AttrSet-Range fuer die SwTable +extern USHORT __FAR_DATA aTableSetRange[]; +// AttrSet-Range fuer die SwTableLine +extern USHORT __FAR_DATA aTableLineSetRange[]; +// AttrSet-Range fuer die SwTableBox +extern USHORT __FAR_DATA aTableBoxSetRange[]; +// AttrSet-Range fuer die SwFrmFmt +extern USHORT __FAR_DATA aFrmFmtSetRange[]; +// AttrSet-Range fuer die SwCharFmt +extern USHORT __FAR_DATA aCharFmtSetRange[]; +// AttrSet-Range fuer die SwPageDescFmt +extern USHORT __FAR_DATA aPgFrmFmtSetRange[]; + +// check if ID is InRange of AttrSet-Ids +BOOL IsInRange( const USHORT* pRange, const USHORT nId ); + + + +#define ITEMID_FONT RES_CHRATR_FONT +#define ITEMID_POSTURE RES_CHRATR_POSTURE +#define ITEMID_WEIGHT RES_CHRATR_WEIGHT +#define ITEMID_SHADOWED RES_CHRATR_SHADOWED +#define ITEMID_AUTOKERN RES_CHRATR_AUTOKERN +#define ITEMID_CONTOUR RES_CHRATR_CONTOUR +#define ITEMID_CROSSEDOUT RES_CHRATR_CROSSEDOUT +#define ITEMID_UNDERLINE RES_CHRATR_UNDERLINE +#define ITEMID_FONTHEIGHT RES_CHRATR_FONTSIZE +#define ITEMID_PROPSIZE RES_CHRATR_PROPORTIONALFONTSIZE +#define ITEMID_COLOR RES_CHRATR_COLOR +#define ITEMID_CHARSETCOLOR RES_CHRATR_CHARSETCOLOR +#define ITEMID_KERNING RES_CHRATR_KERNING +#define ITEMID_CASEMAP RES_CHRATR_CASEMAP +#define ITEMID_LANGUAGE RES_CHRATR_LANGUAGE +#define ITEMID_ESCAPEMENT RES_CHRATR_ESCAPEMENT +#define ITEMID_BLINK RES_CHRATR_BLINK +#define ITEMID_NOHYPHENHERE RES_CHRATR_NOHYPHEN +#define ITEMID_NOLINEBREAK RES_CHRATR_NOLINEBREAK +#define ITEMID_WORDLINEMODE RES_CHRATR_WORDLINEMODE + +//Defines fuer die ehemaligen FrmAttribute, die jetzt in frmitems.hxx +//von svx zu finden sind. +#define ITEMID_PAPERBIN RES_PAPER_BIN +#define ITEMID_LRSPACE RES_LR_SPACE +#define ITEMID_ULSPACE RES_UL_SPACE +#define ITEMID_PRINT RES_PRINT +#define ITEMID_OPAQUE RES_OPAQUE +#define ITEMID_PROTECT RES_PROTECT +#define ITEMID_BRUSH RES_BACKGROUND +#define ITEMID_BOX RES_BOX +#define ITEMID_SHADOW RES_SHADOW +#define ITEMID_MACRO RES_FRMMACRO +#define ITEMID_FMTKEEP RES_KEEP +#define ITEMID_FMTBREAK RES_BREAK + +//Defines fuer die ehemaligen ParAttribute, die jetzt in paraitem.hxx +//bzw. tabsitem.hxx von svx zu finden sind. + +#define ITEMID_LINESPACING RES_PARATR_LINESPACING +#define ITEMID_ADJUST RES_PARATR_ADJUST +#define ITEMID_FMTSPLIT RES_PARATR_SPLIT +#define ITEMID_WIDOWS RES_PARATR_WIDOWS +#define ITEMID_ORPHANS RES_PARATR_ORPHANS +#define ITEMID_TABSTOP RES_PARATR_TABSTOP +#define ITEMID_HYPHENZONE RES_PARATR_HYPHENZONE + +//Defines fuer die ehemaligen GrfAttribute, die jetzt im svx zu finden sind. +#define ITEMID_GRF_CROP RES_GRFATR_CROPGRF + +#endif diff --git a/sw/inc/hints.hxx b/sw/inc/hints.hxx new file mode 100644 index 000000000000..458017fa9675 --- /dev/null +++ b/sw/inc/hints.hxx @@ -0,0 +1,328 @@ +/************************************************************************* + * + * $RCSfile: hints.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _HINTS_HXX +#define _HINTS_HXX + +#ifndef _TABLE_HXX //autogen +#include +#endif +#ifndef _SWATRSET_HXX +#include +#endif + +class SwFmt; +class OutputDevice; +class SwTable; +class SwNode; +class SwNodes; +class SwCntntNode; +class SwPageFrm; +class SwFrm; +class SwTxtNode; +class SwHistory; + +// Basis-Klasse fuer alle Message-Hints: +// "Overhead" vom SfxPoolItem wird hier behandelt +class SwMsgPoolItem : public SfxPoolItem +{ +public: + SwMsgPoolItem( USHORT nWhich ); + + // "Overhead" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; +}; + + +// --------------------------------------- +// SwPtrMsgPoolItem (altes SwObjectDying!) +// --------------------------------------- + +class SwPtrMsgPoolItem : public SwMsgPoolItem +{ +public: + void * pObject; + + SwPtrMsgPoolItem( USHORT nId, void * pObj ) + : SwMsgPoolItem( nId ), pObject( pObj ) + {} +}; + + + +/* + * SwFmtChg wird verschickt, wenn ein Format gegen ein anderes + * Format ausgewechselt worden ist. Es werden immer 2. Hints verschickt, + * das alte und neue Format. + */ +class SwFmtChg: public SwMsgPoolItem +{ +public: + SwFmt *pChangedFmt; + SwFmtChg( SwFmt *pFmt ); +}; + + +class SwInsChr: public SwMsgPoolItem +{ +public: + xub_StrLen nPos; + + SwInsChr( USHORT nP ); +}; + +class SwInsTxt: public SwMsgPoolItem +{ +public: + xub_StrLen nPos; + xub_StrLen nLen; + + SwInsTxt( xub_StrLen nP, xub_StrLen nL ); +}; + +class SwDelChr: public SwMsgPoolItem +{ +public: + xub_StrLen nPos; + + SwDelChr( xub_StrLen nP ); +}; + +class SwDelTxt: public SwMsgPoolItem +{ +public: + xub_StrLen nStart; + xub_StrLen nLen; + + SwDelTxt( xub_StrLen nS, xub_StrLen nL ); +}; + +class SwUpdateAttr: public SwMsgPoolItem +{ +public: + xub_StrLen nStart; + xub_StrLen nEnd; + USHORT nWhichAttr; + SwUpdateAttr( xub_StrLen nS, xub_StrLen nE, USHORT nW ); +}; + + +// SwRefMarkFldUpdate wird verschickt, wenn sich die ReferenzMarkierungen +// Updaten sollen. Um Seiten-/KapitelNummer feststellen zu koennen, muss +// der akt. Frame befragt werden. Dafuer wird das akt. OutputDevice benoetigt. +class SwRefMarkFldUpdate : public SwMsgPoolItem +{ +public: + const OutputDevice* pOut; // Pointer auf das aktuelle Output-Device + SwRefMarkFldUpdate( const OutputDevice* ); +}; + +// SwDocPosUpdate wird verschickt, um zu signalisieren, dass nur die +// Frames ab oder bis zu einer bestimmten dokument-globalen Position +// geupdated werden brauchen. Zur Zeit wird dies nur beim Updaten +// von Seitennummernfeldern benoetigt. + +class SwDocPosUpdate : public SwMsgPoolItem +{ +public: + const long nDocPos; + SwDocPosUpdate( const long nDocPos ); +}; + +// SwTableFmlUpdate wird verschickt, wenn sich die Tabelle neu berechnen soll +// JP 16.02.99: oder wenn die Tabelle selbst gemergt oder gesplittet wird +enum TableFmlUpdtFlags { TBL_CALC = 0, + TBL_BOXNAME, + TBL_BOXPTR, + TBL_RELBOXNAME, + TBL_MERGETBL, + TBL_SPLITTBL + }; +class SwTableFmlUpdate : public SwMsgPoolItem +{ +public: + const SwTable* pTbl; // Pointer auf die zu aktuelle Tabelle + union { + const SwTable* pDelTbl; // Merge: Ptr auf die zu loeschende Tabelle + const String* pNewTblNm; // Split: der Name der neuen Tabelle + } DATA; + SwHistory* pHistory; + USHORT nSplitLine; // Split: ab dieser BaseLine wird gespl. + TableFmlUpdtFlags eFlags; + BOOL bModified : 1; + BOOL bBehindSplitLine : 1; + + SwTableFmlUpdate( const SwTable* ); +}; + + +class SwAutoFmtGetDocNode: public SwMsgPoolItem +{ +public: + const SwCntntNode* pCntntNode; + const SwNodes* pNodes; + + SwAutoFmtGetDocNode( const SwNodes* pNds ); +}; + +/* + * SwAttrSetChg wird verschicht, wenn sich in dem SwAttrSet rTheChgdSet + * etwas veraendert hat. Es werden immer 2. Hints + * verschickt, die alten und neuen Items in dem rTheChgdSet. + */ +class SwAttrSetChg: public SwMsgPoolItem +{ + BOOL bDelSet; + SwAttrSet* pChgSet; // was sich veraendert hat + const SwAttrSet* pTheChgdSet; // wird nur zum Vergleichen gebraucht !! +public: + SwAttrSetChg( const SwAttrSet& rTheSet, SwAttrSet& rSet ); + SwAttrSetChg( const SwAttrSetChg& ); + ~SwAttrSetChg(); + + // was sich veraendert hat + const SwAttrSet* GetChgSet() const { return pChgSet; } + SwAttrSet* GetChgSet() { return pChgSet; } + + // wo es sich geaendert hat + const SwAttrSet* GetTheChgdSet() const { return pTheChgdSet; } + + SfxItemState GetItemState( USHORT nWhich, BOOL bSrchInParent = TRUE, + const SfxPoolItem **ppItem = 0 ) const + { return pChgSet->GetItemState( nWhich, bSrchInParent, ppItem ); } + + USHORT Count() const { return pChgSet->Count(); } + void ClearItem( USHORT nWhich = 0 ) +#ifdef PRODUCT + { pChgSet->ClearItem( nWhich ); } +#else + ; +#endif +}; + +class SwCondCollCondChg: public SwMsgPoolItem +{ +public: + SwFmt *pChangedFmt; + SwCondCollCondChg( SwFmt *pFmt ); +}; + +class SwVirtPageNumInfo: public SwMsgPoolItem +{ + const SwPageFrm *pPage; + const SwPageFrm *pOrigPage; + const SwFrm *pFrm; //An einem Absatz/Tabelle koennen mehrere + //Attribute sitzen. Der Frame muss dann + //muss dann letztlich bei bestimmen + //welches Attribut gilt und um welche physikalische + //Seite es sich handelt. +public: + SwVirtPageNumInfo( const SwPageFrm *pPg ); + + const SwPageFrm *GetPage() { return pPage; } + const SwPageFrm *GetOrigPage() { return pOrigPage;} + const SwFrm *GetFrm() { return pFrm; } + void SetInfo( const SwPageFrm *pPg, + const SwFrm *pF ) { pFrm = pF, pPage = pPg; } +}; + + +DECLARE_TABLE( SwTxtNodeTable, SwTxtNode* ) + +class SwNumRuleInfo : public SwMsgPoolItem +{ + SwTxtNodeTable aList; + const String& rName; +public: + SwNumRuleInfo( const String& rRuleName ); + + const String& GetName() const { return rName; } + void AddNode( SwTxtNode& rNd ); + + // erzeuge die Liste aller Nodes der NumRule in dem angegebenem Doc + // Der Code steht im docnum.cxx + void MakeList( SwDoc& rDoc ); + SwTxtNodeTable& GetList() const { return (SwTxtNodeTable&)aList; } +}; + +class SwNRuleLowerLevel : public SwMsgPoolItem +{ + const String& rName; + BYTE nLvl; +public: + SwNRuleLowerLevel( const String& rRuleName, BYTE nLevel ); + + const String& GetName() const { return rName; } + BYTE GetLevel() const { return nLvl; } +}; + +class SwFindNearestNode : public SwMsgPoolItem +{ + const SwNode *pNd, *pFnd; +public: + SwFindNearestNode( const SwNode& rNd ); + void CheckNode( const SwNode& rNd ); + + const SwNode* GetFoundNode() const { return pFnd; } +}; + + +#endif diff --git a/sw/inc/htmltbl.hxx b/sw/inc/htmltbl.hxx new file mode 100644 index 000000000000..656e11cf2f4c --- /dev/null +++ b/sw/inc/htmltbl.hxx @@ -0,0 +1,530 @@ +/************************************************************************* + * + * $RCSfile: htmltbl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _HTMLTBL_HXX +#define _HTMLTBL_HXX + + +#ifndef _TIMER_HXX //autogen +#include +#endif + +#ifndef _SVX_SVXENUM_HXX //autogen +#include +#endif + +#include "swtypes.hxx" +#include "node.hxx" // Fuer SwStartNode + + +class SwTableBox; +class SwTable; +class SwHTMLTableLayout; +class SwDoc; +class SwFrmFmt; + +#define HTMLTABLE_RESIZE_NOW (ULONG_MAX) + +class SwHTMLTableLayoutCnts +{ + SwHTMLTableLayoutCnts *pNext; // der naechste Inhalt + + // von den beiden naechsten Pointern darf nur einer gesetzt sein! + SwTableBox *pBox; // ein Box + SwHTMLTableLayout *pTable; // eine "Tabelle in der Tabelle" + + // Beim ersten Durchlauf gibt es noch keine Boxen. Es wird dann + // pStartNode anstelle von pBox verwendet. + const SwStartNode *pStartNode; + + // Die folgenden Zahler geben an, wie oft ein Pass bereits fuer diesen + // Inhalt durchgefuehrt wurde. Dazu werden sie mit einer Soll-Vorgabe + // verglichen. Wird 255 erreicht laufen sie bei 0 weiter. So wird + // eine Reinitialisierung bei jedem Resize vermieden. + BYTE nPass1Done; // Wieoft wurde Pass 1 aufgerufen? + BYTE nWidthSet; // Wieoft wurde die Breite gesetzt? + + BOOL bNoBreakTag; // -Tag ueber gesamten Inhalt + +public: + + SwHTMLTableLayoutCnts( const SwStartNode* pSttNd, SwHTMLTableLayout* pTab, + BOOL bNoBreakTag, SwHTMLTableLayoutCnts* pNxt ); + + ~SwHTMLTableLayoutCnts(); + + void SetTableBox( SwTableBox *pBx ) { pBox = pBx; } + SwTableBox *GetTableBox() const { return pBox; } + + SwHTMLTableLayout *GetTable() const { return pTable; } + + const SwStartNode *GetStartNode() const; + + // Ermitteln des naechsten Knotens + SwHTMLTableLayoutCnts *GetNext() const { return pNext; } + + void SetWidthSet( BYTE nRef ) { nWidthSet = nRef; } + BOOL IsWidthSet( BYTE nRef ) const { return nRef==nWidthSet; } + + void SetPass1Done( BYTE nRef ) { nPass1Done = nRef; } + BOOL IsPass1Done( BYTE nRef ) const { return nRef==nPass1Done; } + + BOOL HasNoBreakTag() const { return bNoBreakTag; } +}; + +/* */ + +class SwHTMLTableLayoutCell +{ + SwHTMLTableLayoutCnts *pContents; // der Inhalt der Zelle + + USHORT nRowSpan; // ROWSPAN der Zelle + USHORT nColSpan; // COLSPAN der Zelle + USHORT nWidthOption;// angegebene Breite der Zelle in Twip oder % + + BOOL bPrcWidthOption : 1;// nWidth ist %-Angabe + BOOL bNoWrapOption : 1; // NOWRAP-Option + +public: + + SwHTMLTableLayoutCell( SwHTMLTableLayoutCnts *pCnts, + USHORT nRSpan, USHORT nCSpan, + USHORT nWidthOpt, BOOL bPrcWdthOpt, + BOOL nNWrapOpt ); + + ~SwHTMLTableLayoutCell(); + + // Setzen/Ermitteln des Inhalts einer Zelle + void SetContents( SwHTMLTableLayoutCnts *pCnts ) { pContents = pCnts; } + SwHTMLTableLayoutCnts *GetContents() const { return pContents; } + + inline void SetProtected(); + + // ROWSPAN/COLSPAN der Zelle Setzen/Ermitteln + void SetRowSpan( USHORT nRSpan ) { nRowSpan = nRSpan; } + USHORT GetRowSpan() const { return nRowSpan; } + USHORT GetColSpan() const { return nColSpan; } + + USHORT GetWidthOption() const { return nWidthOption; } + BOOL IsPrcWidthOption() const { return bPrcWidthOption; } + + BOOL HasNoWrapOption() const { return bNoWrapOption; } +}; + +/* */ + +class SwHTMLTableLayoutColumn +{ + // Zwischenwerte von AutoLayoutPass1 + ULONG nMinNoAlign, nMaxNoAlign, nAbsMinNoAlign; + + // Ergebnisse von AutoLayoutPass1 + ULONG nMin, nMax; + + // Ergibnisse von Pass 2 + USHORT nAbsColWidth; // in Twips + USHORT nRelColWidth; // in Twips bzw. relativ zu USHRT_MAX + + USHORT nWidthOption; // Optionen von oder / + + BOOL bRelWidthOption : 1; + BOOL bLeftBorder : 1; + +public: + + SwHTMLTableLayoutColumn( USHORT nColWidthOpt, BOOL bRelColWidthOpt, + BOOL bLBorder ); + + ~SwHTMLTableLayoutColumn() {} + + inline void MergeCellWidthOption( USHORT nWidth, BOOL bPrc ); + inline void SetWidthOption( USHORT nWidth, BOOL bRelWidth, BOOL bTest ); + + USHORT GetWidthOption() const { return nWidthOption; } + BOOL IsRelWidthOption() const { return bRelWidthOption; } + + inline void MergeMinMaxNoAlign( ULONG nMin, ULONG nMax, ULONG nAbsMin ); + ULONG GetMinNoAlign() const { return nMinNoAlign; } + ULONG GetMaxNoAlign() const { return nMaxNoAlign; } + ULONG GetAbsMinNoAlign() const { return nAbsMinNoAlign; } + inline void ClearPass1Info( BOOL bWidthOpt ); + + inline void SetMinMax( ULONG nMin, ULONG nMax ); + void SetMax( ULONG nVal ) { nMax = nVal; } + void AddToMin( ULONG nVal ) { nMin += nVal; } + void AddToMax( ULONG nVal ) { nMax += nVal; } + ULONG GetMin() const { return nMin; } + ULONG GetMax() const { return nMax; } + + void SetAbsColWidth( USHORT nWidth ) { nAbsColWidth = nWidth; } + USHORT GetAbsColWidth() const { return nAbsColWidth; } + + void SetRelColWidth( USHORT nWidth ) { nRelColWidth = nWidth; } + USHORT GetRelColWidth() const { return nRelColWidth; } + + BOOL HasLeftBorder() const { return bLeftBorder; } +}; + +/* */ + +class SwHTMLTableLayout +{ + Timer aResizeTimer; // Timer fuer DelayedResize + + SwHTMLTableLayoutColumn **aColumns; + SwHTMLTableLayoutCell **aCells; + + const SwTable *pSwTable; // die SwTable (nur Top-Table) + SwTableBox *pLeftFillerBox; // linke Filler-Zelle (nur Tab in Tab) + SwTableBox *pRightFillerBox; // rechte Filler-Zelle (nur Tab-in Tab) + + ULONG nMin; // minimale Breite der Tabelle (Twips) + ULONG nMax; // maximale Breite der Tabelle (Twips) + + USHORT nRows; // Anzahl Zeilen + USHORT nCols; // Anzahl Spalten + + USHORT nLeftMargin; // Abstand zum linken Rand (aus Absatz) + USHORT nRightMargin; // Abstand zum rechten Rand (aus Absatz) + + USHORT nInhAbsLeftSpace; // von umgebender Zelle geerbter Abstand, + USHORT nInhAbsRightSpace; // der Zellen zugeschlagen wurde + + USHORT nRelLeftFill; // relative Breiten der Zellen zur + USHORT nRelRightFill; // Ausrichtung von Tabellen in Tabellen + + USHORT nRelTabWidth; // Die relative Breite der Tabelle + + USHORT nWidthOption; // die Breite der Tabelle (in Twip oder %) + USHORT nCellPadding; // Abstand zum Inhalt (in Twip) + USHORT nCellSpacing; // Absatnd zwischen Zellen (in Twip) + USHORT nBorder; // Dicke der ausseren Umrandung bzw. + // Platz, den Netscape hierfuer einrechnet. + + USHORT nLeftBorderWidth; + USHORT nRightBorderWidth; + USHORT nInhLeftBorderWidth; + USHORT nInhRightBorderWidth; + USHORT nBorderWidth; + + USHORT nDelayedResizeAbsAvail; // Param fuer's verzoegerte Resize + USHORT nLastResizeAbsAvail; + + BYTE nPass1Done; // Vorgabe-Werte fuer die einzelen + BYTE nWidthSet; // Schleifen-Durchlauefe + + SvxAdjust eTableAdjust; // Die Ausrichtung der Tabelle + + BOOL bColsOption : 1; // Tabelle besitzt eine COLS-Option + BOOL bColTags : 1; // Tabelle besitzt COL/COLGRP-Tags + BOOL bPrcWidthOption : 1; // Breite ist eine %-Angabe + BOOL bUseRelWidth : 1; // SwTable bekommt relative Breite + + BOOL bMustResize : 1; // Tabelle muss in der Breite ang. werden + BOOL bExportable : 1; // Layout kann zum Export genutzt werden + BOOL bBordersChanged : 1; // Umrandung wurde geaendert + BOOL bMayBeInFlyFrame : 1; // Die Tabelle koennte im Rahmen sein + + BOOL bDelayedResizeRecalc : 1; // Param fuer's verzoegerte Resize + BOOL bMustNotResize : 1; // Die Tabelle darf nicht reseized werden + BOOL bMustNotRecalc : 1; // Tabelle darf nicht an Inhalt angepasst + // werden + +// USHORT GetLeftBorderWidth( USHORT nCol ) const; +// USHORT GetRightBorderWidth( USHORT nCol, USHORT nColSpan ) const; + + void AddBorderWidth( ULONG &rMin, ULONG &rMax, ULONG& rAbsMin, + USHORT nCol, USHORT nColSpan, + BOOL bSwBorders=TRUE ) const; + void SetBoxWidth( SwTableBox *pBox, USHORT nCol, USHORT nColSpan ) const; + + const SwStartNode *GetAnyBoxStartNode() const; + SwFrmFmt *FindFlyFrmFmt() const; + const SwDoc *GetDoc() const { return GetAnyBoxStartNode()->GetDoc(); } + + void ClearPass1Info() { nMin = nMax = 0; } + + void _Resize( USHORT nAbsAvail, BOOL bRecalc=FALSE ); + + DECL_STATIC_LINK( SwHTMLTableLayout, DelayedResize_Impl, void* ); + +public: + + SwHTMLTableLayout( const SwTable *pSwTbl, + USHORT nRows, USHORT nCols, BOOL bColsOpt, BOOL ColTgs, + USHORT nWidth, BOOL bPrcWidth, USHORT nBorderOpt, + USHORT nCellPad, USHORT nCellSp, SvxAdjust eAdjust, + USHORT nLMargin, USHORT nRMargin, USHORT nBWidth, + USHORT nLeftBWidth, USHORT nRightBWidth, + USHORT nInhLeftBWidth, USHORT nInhRightBWidth ); + + ~SwHTMLTableLayout(); + + USHORT GetLeftCellSpace( USHORT nCol, USHORT nColSpan, + BOOL bSwBorders=TRUE ) const; + USHORT GetRightCellSpace( USHORT nCol, USHORT nColSpan, + BOOL bSwBorders=TRUE ) const; + inline USHORT GetInhCellSpace( USHORT nCol, USHORT nColSpan ) const; + + inline void SetInhBorderWidths( USHORT nLeft, USHORT nRight ); + + + void GetAvail( USHORT nCol, USHORT nColSpan, USHORT& rAbsAvail, + USHORT& rRelAvail ) const; + + void AutoLayoutPass1(); + void AutoLayoutPass2( USHORT nAbsAvail, USHORT nRelAvail, + USHORT nAbsLeftSpace, USHORT nAbsRightSpace, + USHORT nParentInhSpace ); + void SetWidths( BOOL bCallPass2=FALSE, USHORT nAbsAvail=0, + USHORT nRelAvail=0, USHORT nAbsLeftSpace=0, + USHORT nAbsRightSpace=0, + USHORT nParentInhSpace=0 ); + + inline SwHTMLTableLayoutColumn *GetColumn( USHORT nCol ) const; + inline void SetColumn( SwHTMLTableLayoutColumn *pCol, USHORT nCol ); + + inline SwHTMLTableLayoutCell *GetCell( USHORT nRow, USHORT nCol ) const; + inline void SetCell( SwHTMLTableLayoutCell *pCell, USHORT nRow, USHORT nCol ); + + void SetLeftFillerBox( SwTableBox *pBox ) { pLeftFillerBox = pBox; } + void SetRightFillerBox( SwTableBox *pBox ) { pRightFillerBox = pBox; } + + ULONG GetMin() const { return nMin; } + ULONG GetMax() const { return nMax; } + USHORT GetRelLeftFill() const { return nRelLeftFill; } + USHORT GetRelRightFill() const { return nRelRightFill; } + + inline long GetBrowseWidthMin() const; + + BOOL HasColsOption() const { return bColsOption; } + BOOL HasColTags() const { return bColTags; } + + BOOL IsTopTable() const { return pSwTable != 0; } + + void SetMustResize( BOOL bSet ) { bMustResize = bSet; } + void SetMustNotResize( BOOL bSet ) { bMustNotResize = bSet; } + void SetMustNotRecalc( BOOL bSet ) { bMustNotRecalc = bSet; } + + // Neueberechnung der Tabellenbreiten fuer die uebergebene verfuegbare + // Breite. + // - Wenn bRecalc gesetzt ist, werden auch der Inhalt der Boxen + // zur Berechnung herangezogen. + // neu berechnet. + // - Wenn bForce gesetzt ist, wird die Tabelle auch neu berechnet, wenn + // dies mit SetMustNotResize unterdrueckt werden soll. + // - Wenn nDelay>0 wird die Berechnung entsprechend verzoegert. + // Innerhalb der Verzeoegerung auftretende Resize-Aufrufe werden + // ignoriert, die Verzeogerung wird aber ggf. uebernommen. + // - Wenn nDelay==HTMLTABLE_RESIZE_NOW ist, wird sofort Resized und + // eventuell noch asstehende Resize-Aufrufe werden nicht mehr + // ausgefuehrt. + // - Der Rueckgabewert gibt an, ob sich die Tabelle geaendert hat. + BOOL Resize( USHORT nAbsAvail, BOOL bRecalc=FALSE, BOOL bForce=FALSE, + ULONG nDelay=0 ); + + void BordersChanged( USHORT nAbsAvail, BOOL bRecalc=FALSE ); + + // Ermitteln der verfuegbaren Breite. Das geht nur, wenn ein Layout + // oder eine ViewShell vorhanden ist. Sonst wird 0 zurueckgegeben. + // (Wird vom HTML-Filter benoetigt, da der nicht an das Layout kommt.) + static USHORT GetBrowseWidth( const SwDoc& rDoc ); + static USHORT GetBrowseWidthByVisArea( const SwDoc& rDoc ); + + // Ermitteln der verfuegbaren Breite uber den Tabellen-Frame + USHORT GetBrowseWidthByTabFrm( const SwTabFrm& rTabFrm ) const; + + // Ermitteln der verfuegbaren Breite uber den Tabellen-Frame oder + // das statische GetBrowseWidth, wenn kein Layout existiert. + USHORT GetBrowseWidthByTable( const SwDoc& rDoc ) const; + + // Fuer Export + USHORT GetWidthOption() const { return nWidthOption; } + BOOL HasPrcWidthOption() const { return bPrcWidthOption; } + + USHORT GetCellPadding() const { return nCellPadding; } + USHORT GetCellSpacing() const { return nCellSpacing; } + USHORT GetBorder() const { return nBorder; } + + USHORT GetRowCount() const { return nRows; } + USHORT GetColCount() const { return nCols; } + + void SetExportable( BOOL bSet ) { bExportable = bSet; } + BOOL IsExportable() const { return bExportable; } + + BOOL HaveBordersChanged() const { return bBordersChanged; } + + void SetMayBeInFlyFrame( BOOL bSet ) { bMayBeInFlyFrame = bSet; } + BOOL MayBeInFlyFrame() const { return bMayBeInFlyFrame; } +}; + +/* */ + +inline void SwHTMLTableLayoutCell::SetProtected() +{ + nRowSpan = 1; + nColSpan = 1; + + pContents = 0; +} + +/* */ + +inline void SwHTMLTableLayoutColumn::MergeMinMaxNoAlign( ULONG nMin, + ULONG nMax, ULONG nAbsMin ) +{ + if( nMin > nMinNoAlign ) + nMinNoAlign = nMin; + if( nMax > nMaxNoAlign ) + nMaxNoAlign = nMax; + if( nAbsMin > nAbsMinNoAlign ) + nAbsMinNoAlign = nAbsMin; +} + +inline void SwHTMLTableLayoutColumn::ClearPass1Info( BOOL bWidthOpt ) +{ + nMinNoAlign = nMaxNoAlign = nAbsMinNoAlign = MINLAY; + nMin = nMax = 0; + if( bWidthOpt ) + { + nWidthOption = 0; + bRelWidthOption = FALSE; + } +} + +inline void SwHTMLTableLayoutColumn::MergeCellWidthOption( + USHORT nWidth, BOOL bRel ) +{ + if( !nWidthOption || + (bRel==bRelWidthOption && nWidthOption < nWidth) ) + { + nWidthOption = nWidth; + bRelWidthOption = bRel; + } +} + +inline void SwHTMLTableLayoutColumn::SetMinMax( ULONG nMn, ULONG nMx ) +{ + nMin = nMn; + nMax = nMx; +} + +/* */ + +inline USHORT SwHTMLTableLayout::GetInhCellSpace( USHORT nCol, + USHORT nColSpan ) const +{ + USHORT nSpace = 0; + if( nCol==0 ) + nSpace += nInhAbsLeftSpace; + if( nCol+nColSpan==nCols ) + nSpace += nInhAbsRightSpace; + + return nSpace; +} + +inline SwHTMLTableLayoutColumn *SwHTMLTableLayout::GetColumn( USHORT nCol ) const +{ + return aColumns[nCol]; +} + +inline void SwHTMLTableLayoutColumn::SetWidthOption( + USHORT nWidth, BOOL bRelWidth, BOOL bTest ) +{ + if( bTest && bRelWidthOption==bRelWidth ) + { + if( nWidth > nWidthOption ) + nWidthOption = nWidth; + } + else + nWidthOption = nWidth; + bRelWidthOption = bRelWidth; +} + +inline void SwHTMLTableLayout::SetColumn( SwHTMLTableLayoutColumn *pCol, USHORT nCol ) +{ + aColumns[nCol] = pCol; +} + +inline SwHTMLTableLayoutCell *SwHTMLTableLayout::GetCell( USHORT nRow, USHORT nCol ) const +{ + return aCells[nRow*nCols+nCol]; +} + +inline void SwHTMLTableLayout::SetCell( SwHTMLTableLayoutCell *pCell, + USHORT nRow, USHORT nCol ) +{ + aCells[nRow*nCols+nCol] = pCell; +} + +inline long SwHTMLTableLayout::GetBrowseWidthMin() const +{ + return (long)( (!nWidthOption || bPrcWidthOption) ? nMin : nRelTabWidth ); +} + +void SwHTMLTableLayout::SetInhBorderWidths( USHORT nLeft, USHORT nRight ) +{ + nInhLeftBorderWidth = nLeft; + nInhRightBorderWidth = nRight; +} + + +#endif diff --git a/sw/inc/index.hxx b/sw/inc/index.hxx new file mode 100644 index 000000000000..ec1cff8f1b66 --- /dev/null +++ b/sw/inc/index.hxx @@ -0,0 +1,318 @@ +/************************************************************************* + * + * $RCSfile: index.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _INDEX_HXX +#define _INDEX_HXX + +#include + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _RTTI_HXX +#include // for RTTI of SwIndexReg +#endif +#ifndef _STRING_HXX +#include // for xub_StrLen +#endif + +#define INVALID_INDEX STRING_NOTFOUND + +// Maximale Anzahl von Indizies im IndexArray (zum Abtesten auf Ueberlaeufe) +class SwIndex; +class SwIndexReg; + +#ifdef PRODUCT +#define INLINE inline +#else +#define INLINE +#endif + +class SwIndex +{ + friend class SwIndexReg; + +#ifndef PRODUCT + static int nSerial; + int MySerial; +#endif + + xub_StrLen nIndex; + SwIndexReg* pArray; + SwIndex *pNext, *pPrev; + + SwIndex& ChgValue( const SwIndex& rIdx, xub_StrLen nNewValue ); + void Remove(); // Ausketten + +public: + SwIndex( SwIndexReg * pReg, xub_StrLen nIdx = 0 ); + SwIndex( const SwIndex & ); + SwIndex( const SwIndex &, short nDiff ); + ~SwIndex() { Remove(); } + + INLINE xub_StrLen operator++(); + INLINE xub_StrLen operator--(); +#ifndef CFRONT + INLINE xub_StrLen operator++(int); + INLINE xub_StrLen operator--(int); +#endif + + INLINE xub_StrLen operator+=( xub_StrLen ); + INLINE xub_StrLen operator-=( xub_StrLen ); + INLINE xub_StrLen operator+=( const SwIndex& ); + INLINE xub_StrLen operator-=( const SwIndex& ); + + INLINE BOOL operator<( const SwIndex& ) const; + INLINE BOOL operator<=( const SwIndex& ) const; + INLINE BOOL operator>( const SwIndex& ) const; + INLINE BOOL operator>=( const SwIndex& ) const; + BOOL operator==( const SwIndex& rSwIndex ) const + { return (nIndex == rSwIndex.nIndex) && (pArray == rSwIndex.pArray); } + + BOOL operator!=( const SwIndex& rSwIndex ) const + { return (nIndex != rSwIndex.nIndex) || (pArray != rSwIndex.pArray); } + + BOOL operator<( xub_StrLen nWert ) const { return nIndex < nWert; } + BOOL operator<=( xub_StrLen nWert ) const { return nIndex <= nWert; } + BOOL operator>( xub_StrLen nWert ) const { return nIndex > nWert; } + BOOL operator>=( xub_StrLen nWert ) const { return nIndex >= nWert; } + BOOL operator==( xub_StrLen nWert ) const { return nIndex == nWert; } + BOOL operator!=( xub_StrLen nWert ) const { return nIndex != nWert; } + + INLINE SwIndex& operator=( xub_StrLen ); + SwIndex& operator=( const SwIndex & ); + + // gebe den Wert vom Index als xub_StrLen zurueck + xub_StrLen GetIndex() const { return nIndex; } + + // ermoeglicht Zuweisungen ohne Erzeugen eines temporaeren + // Objektes + SwIndex &Assign(SwIndexReg *,xub_StrLen); + + // Herausgabe des Pointers auf das IndexArray, + // (fuers RTTI am SwIndexReg) + const SwIndexReg* GetIdxReg() const { return pArray; } +}; + +#undef INLINE + +class SwIndexReg +{ + friend class SwIndex; + const SwIndex *pFirst, *pLast, *pMiddle; + + // ein globales Array, in das Indizies verschoben werden, die mal + // temporaer "ausgelagert" werden muessen; oder die zum Zeitpunkt des + // anlegens kein gueltiges Array kennen (SwPaM/SwPosition!) + friend void _InitCore(); + friend void _FinitCore(); + static SwIndexReg* pEmptyIndexArray; + +protected: + virtual void Update( const SwIndex & aPos, xub_StrLen nLen, + BOOL bNegativ = FALSE ); + + void ChkArr(); + + BOOL HasAnyIndex() const { return 0 != pFirst; } + + // fuer das Move am RegArray: + void MoveIdx( const SwIndex& rOldPos, const SwIndex& rNewPos ); + +public: + SwIndexReg(); +#ifndef PRODUCT + ~SwIndexReg(); +#endif + + // rtti, abgeleitete moegens gleichtun oder nicht. Wenn sie es gleichtun + // kann ueber das SwIndexReg typsicher gecastet werden. + TYPEINFO(); + + void SetDefMiddle( const SwIndex* pIdx ) { pMiddle = pIdx; } + void MoveTo( SwIndexReg& rArr ); +}; + + +#ifdef PRODUCT + +inline xub_StrLen SwIndex::operator++() +{ + return ChgValue( *this, nIndex+1 ).nIndex; +} +inline xub_StrLen SwIndex::operator--() +{ + return ChgValue( *this, nIndex-1 ).nIndex; +} +#ifndef CFRONT +inline xub_StrLen SwIndex::operator++(int) +{ + xub_StrLen nOldIndex = nIndex; + ChgValue( *this, nIndex+1 ); + return nOldIndex; +} +inline xub_StrLen SwIndex::operator--(int) +{ + xub_StrLen nOldIndex = nIndex; + ChgValue( *this, nIndex-1 ); + return nOldIndex; +} +#endif + +inline xub_StrLen SwIndex::operator+=( xub_StrLen nWert ) +{ + return ChgValue( *this, nIndex + nWert ).nIndex; +} +inline xub_StrLen SwIndex::operator-=( xub_StrLen nWert ) +{ + return ChgValue( *this, nIndex - nWert ).nIndex; +} +inline xub_StrLen SwIndex::operator+=( const SwIndex& rIndex ) +{ + return ChgValue( *this, nIndex + rIndex.nIndex ).nIndex; +} +inline xub_StrLen SwIndex::operator-=( const SwIndex& rIndex ) +{ + return ChgValue( *this, nIndex - rIndex.nIndex ).nIndex; +} + +inline BOOL SwIndex::operator<( const SwIndex& rIndex ) const +{ + return nIndex < rIndex.nIndex; +} +inline BOOL SwIndex::operator<=( const SwIndex& rIndex ) const +{ + return nIndex <= rIndex.nIndex; +} +inline BOOL SwIndex::operator>( const SwIndex& rIndex ) const +{ + return nIndex > rIndex.nIndex; +} +inline BOOL SwIndex::operator>=( const SwIndex& rIndex ) const +{ + return nIndex >= rIndex.nIndex; +} +inline SwIndex& SwIndex::operator=( xub_StrLen nWert ) +{ + if( nIndex != nWert ) + ChgValue( *this, nWert ); + return *this; +} + +// PRODUCT +#endif + + +/****************************************************************** + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/inc/index.hxx,v 1.1.1.1 2000-09-18 17:14:26 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.67 2000/09/18 16:03:22 willem.vandorp + OpenOffice header added. + + Revision 1.66 2000/09/08 13:24:17 willem.vandorp + Header and footer replaced + + Revision 1.65 2000/04/12 13:53:23 jp + Unicode changes + + Revision 1.64 1999/02/25 08:20:48 JP + Task #62314#: Asynchrone DDE-Links/-Requests + + + Rev 1.63 25 Feb 1999 09:20:48 JP + Task #62314#: Asynchrone DDE-Links/-Requests + + Rev 1.62 27 Nov 1997 09:20:28 JP + neu: SwIndexReg::MoveTo - move alle Indiezies aus einem Array ins andere + + Rev 1.61 11 Nov 1997 20:36:48 JP + SwIndexReg CTOR/DTOR jetzt public + + Rev 1.60 10 Oct 1997 14:03:20 JP + SwRange wird nicht mehr benoetigt + + Rev 1.59 09 Oct 1997 15:11:50 JP + Umstellung NodeIndex/-Array/BigPtrArray + + Rev 1.58 07 Aug 1997 14:41:26 OM + Headerfile-Umstellung + + Rev 1.57 18 Jul 1997 12:21:20 MA + includes + + Rev 1.56 08 Nov 1995 15:47:10 MA + opt: operatoren entfernt + + Rev 1.55 25 Jun 1995 16:49:20 JP + Unter Windows nun auch den neuen Index + + Rev 1.54 09 May 1995 08:44:28 KH + #ifdef MAC -> #ifdef CFRONT + +*******************************************************************/ + +#endif diff --git a/sw/inc/inetfld.hxx b/sw/inc/inetfld.hxx new file mode 100644 index 000000000000..aa6db674a437 --- /dev/null +++ b/sw/inc/inetfld.hxx @@ -0,0 +1,142 @@ +/************************************************************************* + * + * $RCSfile: inetfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _INETFLD_HXX +#define _INETFLD_HXX + + +#include "fldbas.hxx" + +class SvxMacro; +class SvxMacroTableDtor; +class SwINetField; +class SwCharFmt; +class SwDoc; + +/*-------------------------------------------------------------------- + Beschreibung: InterNet-FieldType -> Lade Document mit der URL + --------------------------------------------------------------------*/ + +class SwINetFieldType : public SwFieldType +{ + SwDepend aNormalFmt; + SwDepend aVisitFmt; + SwDoc* pDoc; + +public: + SwINetFieldType( SwDoc* pDoc ); + + virtual SwFieldType* Copy() const; + + SwCharFmt* GetCharFmt( const SwINetField& rFld ); + + SwDoc* GetDoc() const { return pDoc; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: InterNet-Field -> Lade Document mit der URL + --------------------------------------------------------------------*/ + +class SwINetField : public SwField +{ + friend class SwINetFieldType; + + String sTargetFrameName; // in diesen Frame soll die URL + String sURL; + String sText; + SvxMacroTableDtor* pMacroTbl; + +public: + // Direkte Eingabe alten Wert loeschen + SwINetField( SwINetFieldType* pTyp, USHORT nFmt, + const String& rURL, const String& rText ); + virtual ~SwINetField(); + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual String Expand() const; + virtual SwField* Copy() const; + + // URL + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + // HinweisText + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + + // das ist das akt. Zeichenformat + SwCharFmt* GetCharFmt(); + const SwCharFmt* GetCharFmt() const + { return ((SwINetField*)this)->GetCharFmt(); } + + const String& GetTargetFrameName() const { return sTargetFrameName; } + void SetTargetFrameName( const String& rNm ) { sTargetFrameName = rNm; } + + // setze eine neue oder loesche die akt. MakroTabelle + void SetMacroTbl( const SvxMacroTableDtor* pTbl = 0 ); + const SvxMacroTableDtor* GetMacroTbl() const { return pMacroTbl; } + + // setze / erfrage ein Makro + void SetMacro( USHORT nEvent, const SvxMacro& rMacro ); + const SvxMacro* GetMacro( USHORT nEvent ) const; +}; + + +#endif // _INETFLD_HXX diff --git a/sw/inc/init.hxx b/sw/inc/init.hxx new file mode 100644 index 000000000000..00a9c814d4f9 --- /dev/null +++ b/sw/inc/init.hxx @@ -0,0 +1,78 @@ +/************************************************************************* + * + * $RCSfile: init.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _INIT_HXX +#define _INIT_HXX + +void _InitCore(); // bastyp/init.cxx +void _FinitCore(); + +void _InitFilter(); // basflt/fltini.cxx +void _FinitFilter(); + +// layout/frame.cxx +void _FrmInit(); + +// text/txtfrm.cxx +void _TextInit(); +void _TextFinit(); + + +#endif diff --git a/sw/inc/io.hxx b/sw/inc/io.hxx new file mode 100644 index 000000000000..570a43efd28c --- /dev/null +++ b/sw/inc/io.hxx @@ -0,0 +1,221 @@ +/************************************************************************* + * + * $RCSfile: io.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +// eigene Klasse fuer IO, die die systemunabhaengige Darstellung +// uebernimmt (bytes dreht, Character konvertiert) +// das Schreiben erfolgt aus Effizienzgruenden binaer +#ifndef _IO_HXX +#define _IO_HXX + +#ifndef MAC +#ifdef UNX +#include +#else +#include +#endif +#else +#include // wegen fcntl und sv +#endif + +#include + +#ifndef MAC +#include +#include +#else +#include +#endif + + +#ifndef _KEYCOD_HXX //autogen +#include +#endif + +#ifndef _STREAM_HXX //autogen +#include +#endif + +/*$ +class BinaryFile { + int fd; +public: + enum IO_OpenMode { + BF_READ = O_RDONLY, + BF_WRITE = O_RDWR, + BF_CREATE = O_CREAT, + BF_TRUNC = O_TRUNC + }; + // ctor oeffnet File im BinearMode, dtor schliesst es + BinaryFile(const String &, int eOpenMode); + ~BinaryFile(); + BOOL Ok() const { + return -1 != fd; + } + operator int() const { return fd; } +}; +*/ + +class SwIOin { +private: + SvFileStream aStr; //$ ifstream +public: + // Stream wird im entsprechenden Mode erzeugt. + SwIOin(const String &rFilename, StreamMode nMode = + STREAM_READ | STREAM_NOCREATE ); + + SwIOin& operator>>(char& val); + SwIOin& operator>>(unsigned char& val); + SwIOin& operator>>(char* val); + SwIOin& operator>>(unsigned char* val); + SwIOin& operator>>(short& val); + SwIOin& operator>>(unsigned short& val); + SwIOin& operator>>(long& val); + SwIOin& operator>>(unsigned long& val); + String ReadString(); + KeyCode ReadKeyCode(); + // kann erweitert werden fuer weitere Arrays von + // Basistypen; nLen ist die Anzahl der Elemente + SwIOin& Read(char *buf, unsigned nLen); + + int operator!() { return aStr.GetError() != SVSTREAM_OK; } + SvFileStream &operator()() { + return aStr; + } +}; + +class SwIOout { +private: + void _write(const char *buf, unsigned size); + SvFileStream aStr; //$ ofstream +public: + // Stream wird im entsprechenden Mode erzeugt. + SwIOout( const String &rFilename, StreamMode nMode = + STREAM_WRITE | STREAM_NOCREATE ); + SwIOout& operator<<(char val); + SwIOout& operator<<(unsigned char val); + SwIOout& operator<<(char* val); + SwIOout& operator<<(unsigned char* val); + SwIOout& operator<<(short val); + SwIOout& operator<<(unsigned short val); + SwIOout& operator<<(long val); + SwIOout& operator<<(unsigned long val); + SwIOout& operator<<(const String &); + SwIOout& operator<<(const KeyCode &); + // kann erweitert werden fuer weitere Arrays von + // Basistypen; nLen ist die Anzahl der Elemente + SwIOout& Write(const char *buf, unsigned nLen); + + int operator!() { return aStr.GetError() != SVSTREAM_OK; } + SvFileStream &operator()() { + return aStr; + } +}; + + +class SwIOinout { +private: + SvFileStream aStr; //$ fstream + +public: + // Stream wird im entsprechenden Mode erzeugt. + SwIOinout(const String &rFilename, StreamMode nMode = + STREAM_READWRITE | STREAM_NOCREATE ); + + SwIOinout& operator>>(char& val); + SwIOinout& operator>>(unsigned char& val); + SwIOinout& operator>>(char* val); + SwIOinout& operator>>(unsigned char* val); + SwIOinout& operator>>(short& val); + SwIOinout& operator>>(unsigned short& val); + SwIOinout& operator>>(long& val); + SwIOinout& operator>>(unsigned long& val); + String ReadString(); + KeyCode ReadKeyCode(); + // kann erweitert werden fuer weitere Arrays von + // Basistypen; nLen ist die Anzahl der Elemente + SwIOinout& Read(char *buf, unsigned nLen); + SwIOinout& Read(unsigned short *buf, unsigned nLen ); + + SwIOinout& operator<<(char val); + SwIOinout& operator<<(unsigned char val); + SwIOinout& operator<<(char* val); + SwIOinout& operator<<(unsigned char* val); + SwIOinout& operator<<(short val); + SwIOinout& operator<<(unsigned short val); + SwIOinout& operator<<(long val); + SwIOinout& operator<<(unsigned long val); + SwIOinout& operator<<(const String &); + SwIOinout& operator<<(const KeyCode &); + // kann erweitert werden fuer weitere Arrays von + // Basistypen; nLen ist die Anzahl der Elemente + SwIOinout& Write(const char *buf, unsigned nLen); + + int operator!() { return aStr.GetError() != SVSTREAM_OK; } + SvFileStream &operator()() { + return aStr; + } + + BOOL Ok(); +}; + + + +#endif + diff --git a/sw/inc/itabenum.hxx b/sw/inc/itabenum.hxx new file mode 100644 index 000000000000..92406bda2647 --- /dev/null +++ b/sw/inc/itabenum.hxx @@ -0,0 +1,77 @@ +/************************************************************************* + * + * $RCSfile: itabenum.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:26 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _ITABENUM_HXX +#define _ITABENUM_HXX + +enum SwTableInsMode +{ + DEFAULT_BORDER = 0x01, + HEADLINE = 0x02, + REPEAT = 0x04, + HEADLINE_REPEAT = 0x06, // Headline + Repeat + SPLIT_LAYOUT = 0x08, + HEADLINE_NO_BORDER = HEADLINE_REPEAT|SPLIT_LAYOUT, + ALL_TBL_INS_ATTR = DEFAULT_BORDER|HEADLINE_REPEAT|SPLIT_LAYOUT +}; + + +#endif + diff --git a/sw/inc/lineinfo.hxx b/sw/inc/lineinfo.hxx new file mode 100644 index 000000000000..4622bec63796 --- /dev/null +++ b/sw/inc/lineinfo.hxx @@ -0,0 +1,144 @@ +/************************************************************************* + * + * $RCSfile: lineinfo.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef SW_LINEINFO_HXX +#define SW_LINEINFO_HXX + + +#ifndef _CALBCK_HXX +#include "calbck.hxx" +#endif +#ifndef _NUMRULE_HXX +#include "numrule.hxx" +#endif + +class SwCharFmt; +class SwDoc; + +enum LineNumberPosition +{ + LINENUMBER_POS_LEFT, + LINENUMBER_POS_RIGHT, + LINENUMBER_POS_INSIDE, + LINENUMBER_POS_OUTSIDE +}; + +class SwLineNumberInfo : public SwClient //purpose of derivation from SwClient: + //character style for displaying the numbers. +{ + SwNumType aType; //e.g. roman linenumbers + String aDivider; //String for aditional interval (vert. lines user defined) + USHORT nPosFromLeft; //Position for paint + USHORT nCountBy; //Paint only for every n line + USHORT nDividerCountBy; //Interval for display of an user defined + //string every n lines + LineNumberPosition ePos; //Where should the display occur (number and divicer) + BOOL bPaintLineNumbers; //Should anything be displayed? + BOOL bCountBlankLines; //Count empty lines? + BOOL bCountInFlys; //Count also within FlyFrames? + BOOL bRestartEachPage; //Restart counting at the first paragraph of each page + //(even on follows when paragraphs are splitted) + +public: + SwLineNumberInfo(); + SwLineNumberInfo(const SwLineNumberInfo&); + + SwLineNumberInfo& operator=(const SwLineNumberInfo&); + BOOL operator==( const SwLineNumberInfo& rInf ) const; + + SwCharFmt *GetCharFmt(SwDoc &rDoc) const; + void SetCharFmt( SwCharFmt* ); + + const SwNumType &GetNumType() const { return aType; } + void SetNumType( SwNumType aNew ) { aType = aNew; } + + const String &GetDivider() const { return aDivider; } + void SetDivider( const String &r ) { aDivider = r; } + USHORT GetDividerCountBy() const { return nDividerCountBy; } + void SetDividerCountBy( USHORT n ) { nDividerCountBy = n; } + + USHORT GetPosFromLeft() const { return nPosFromLeft; } + void SetPosFromLeft( USHORT n) { nPosFromLeft = n; } + + USHORT GetCountBy() const { return nCountBy; } + void SetCountBy( USHORT n) { nCountBy = n; } + + LineNumberPosition GetPos() const { return ePos; } + void SetPos( LineNumberPosition eP ){ ePos = eP; } + + BOOL IsPaintLineNumbers() const { return bPaintLineNumbers; } + void SetPaintLineNumbers( BOOL b ){ bPaintLineNumbers = b; } + + BOOL IsCountBlankLines() const { return bCountBlankLines; } + void SetCountBlankLines( BOOL b ) { bCountBlankLines = b; } + + BOOL IsCountInFlys() const { return bCountInFlys; } + void SetCountInFlys( BOOL b ) { bCountInFlys = b; } + + BOOL IsRestartEachPage() const { return bRestartEachPage; } + void SetRestartEachPage( BOOL b ) { bRestartEachPage = b; } + + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); +}; + + + +#endif + diff --git a/sw/inc/linkenum.hxx b/sw/inc/linkenum.hxx new file mode 100644 index 000000000000..ea15f28748cd --- /dev/null +++ b/sw/inc/linkenum.hxx @@ -0,0 +1,73 @@ +/************************************************************************* + * + * $RCSfile: linkenum.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _LINKENUM_HXX +#define _LINKENUM_HXX + +enum UpdateLinks +{ + NEVER, + MANUAL, + AUTOMATIC, + GLOBALSETTING +}; + +#endif + diff --git a/sw/inc/mdiexp.hxx b/sw/inc/mdiexp.hxx new file mode 100644 index 000000000000..b9e3ee9c4b25 --- /dev/null +++ b/sw/inc/mdiexp.hxx @@ -0,0 +1,118 @@ +/************************************************************************* + * + * $RCSfile: mdiexp.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _MDIEXP_HXX +#define _MDIEXP_HXX + +#ifndef _SOLAR_H +#include +#endif + +class UniString; +class SwRect; +class Size; +class Dialog; +class ViewShell; +class SwDoc; +class SwDocShell; +class SfxObjectShell; +class SfxFrame; + +extern void ScrollMDI(ViewShell* pVwSh, const SwRect &, USHORT nRangeX, USHORT nRangeY); +extern BOOL IsScrollMDI(ViewShell* pVwSh, const SwRect &); +extern void SizeNotify(ViewShell* pVwSh, const Size &); + +//Update der Statusleiste, waehrend einer Action. +extern void PageNumNotify( ViewShell* pVwSh, + USHORT nPhyNum, + USHORT nVirtNum, + const UniString& rPg ); + +enum FlyMode { FLY_DRAG_START, FLY_DRAG, FLY_DRAG_END }; +extern void FrameNotify( ViewShell* pVwSh, FlyMode eMode = FLY_DRAG ); + +void StartProgress ( USHORT nMessId, long nStartVal, long nEndVal, SwDocShell *pDocSh = 0 ); +void EndProgress ( SwDocShell *pDocSh = 0 ); +void SetProgressState ( long nPosition, SwDocShell *pDocShell ); +void SetProgressText ( USHORT nMessId, SwDocShell *pDocShell ); +void RescheduleProgress( SwDocShell *pDocShell ); + +void EnableCmdInterface(BOOL bEnable = TRUE); + +Dialog* GetSearchDialog(); + +void RepaintPagePreview( ViewShell* pVwSh, const SwRect& rRect ); + +//paintfrm.cxx +void RemoveFromBackgroundCache( const SfxObjectShell &rDocSh, FASTBOOL bFreeze ); + +//grfcache.cxx +// alle QuickDraw-Bitmaps loeschen (pDoc = 0) oder alle des speziellen Docs +void DelAllGrfCacheEntries( SwDoc* pDoc = 0 ); + +extern void JavaScriptScrollMDI( SfxFrame* pFrame, INT32 nX, INT32 nY ); + +// ChgMode fuer Tabellen aus der Konfiguration lesen +USHORT GetTblChgDefaultMode(); + +BOOL JumpToSwMark( ViewShell* pVwSh, const UniString& rMark ); + + +#endif diff --git a/sw/inc/ndarr.hxx b/sw/inc/ndarr.hxx new file mode 100644 index 000000000000..c6958373c493 --- /dev/null +++ b/sw/inc/ndarr.hxx @@ -0,0 +1,353 @@ +/************************************************************************* + * + * $RCSfile: ndarr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _NDARR_HXX +#define _NDARR_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _BPARR_HXX +#include +#endif +#ifndef _NDTYP_HXX +#include +#endif + +class Graphic; +class UniString; +class SvInPlaceObject; +class SwAttrSet; +class SwCntntFrm; +class SwCntntNode; +class SwDoc; +class SwGrfFmtColl; +class SwGrfNode; +class SwHistory; +class SwNode; +class SwNodeIndex; +class SwNodeRange; +class SwOLENode; +class SwOutlineNodes; +class SwPaM; +class SwSection; +class SwSectionFmt; +class SwSectionNode; +class SwStartNode; +class SwTableBoxFmt; +class SwTableFmt; +class SwTableLine; +class SwTableLineFmt; +class SwTableNode; +class SwTblToTxtSaves; +class SwTxtFmtColl; +class SwTxtNode; +class SwUndoInsNum; +class SwUndoTblToTxt; +class SwUndoTxtToTbl; +struct SwPosition; + + +// -------------------- +// class SwNodes +// -------------------- + +typedef SwNode * SwNodePtr; +typedef BOOL (*FnForEach_SwNodes)( const SwNodePtr&, void* pArgs ); + +SV_DECL_PTRARR_SORT( SwOutlineNodes, SwNodePtr, 0, 10 ) + +class SwNodes: private BigPtrArray +{ + friend class SwDoc; + friend class SwNode; + friend class SwNodeIndex; + + SwNodePtr operator[]( USHORT n ) const; + SwNodePtr operator[]( int n ) const; + + SwNodeIndex* pRoot; // Liste aller Indizies auf Nodes + + void Insert( const SwNodePtr pNode, const SwNodeIndex& rPos ); + void Insert( const SwNodePtr pNode, ULONG nPos); +// void Remove( const SwNodeIndex& rPos, USHORT nLen = 1 ); +// void Remove( ULONG nPos, USHORT nLen = 1 ); +// BOOL Move( const SwIndex & rOldPos, const SwIndex & rNewPos ); + + + SwDoc* pMyDoc; // in diesem Doc ist das Nodes-Array + + SwNode *pEndOfPostIts, *pEndOfInserts, // das sind die festen Bereiche + *pEndOfAutotext, *pEndOfRedlines, + *pEndOfContent; + + SwOutlineNodes* pOutlineNds; // Array aller GliederiungsNodes + + BOOL bInNodesDel : 1; // falls rekursiv aufgerufen wird + // Num/Outline nicht aktualisierem + BOOL bInDelUpdOutl : 1; // Flags fuers aktualisieren von Outl. + BOOL bInDelUpdNum : 1; // Flags fuers aktualisieren von Outl. + + // fuer dier Verwaltung der Indizies + void RegisterIndex( SwNodeIndex& rIdx ); + void DeRegisterIndex( SwNodeIndex& rIdx ); + void RemoveNode( ULONG nDelPos, ULONG nLen, FASTBOOL bDel ); + + // Aktionen auf die Nodes + void SectionUpDown( const SwNodeIndex & aStart, const SwNodeIndex & aEnd ); + void DelNodes( const SwNodeIndex& rStart, ULONG nCnt = 1 ); + + void ChgNode( SwNodeIndex& rDelPos, ULONG nSize, + SwNodeIndex& rInsPos, BOOL bNewFrms ); + + void UpdtOutlineIdx( const SwNode& ); // Update ab Node alle OutlineNodes + + void _CopyNodes( const SwNodeRange&, const SwNodeIndex&, + BOOL bNewFrms = TRUE, BOOL bTblInsDummyNode = FALSE ) const; + void _DelDummyNodes( const SwNodeRange& rRg ); + +protected: + SwNodes( SwDoc* pDoc ); + +public: + ~SwNodes(); + + SwNodePtr operator[]( ULONG n ) const + { return (SwNodePtr)BigPtrArray::operator[] ( n ); } + +//JP 29.09.97: impl. steht im ndindex.hxx - sollte moeglichst bald auf die +// neue Schnittstelle angepasst werden + inline SwNodePtr operator[]( const SwNodeIndex& rIdx ) const; + + ULONG Count() const { return BigPtrArray::Count(); } + void ForEach( FnForEach_SwNodes fnForEach, void* pArgs = 0 ) + { + BigPtrArray::ForEach( 0, BigPtrArray::Count(), + (FnForEach) fnForEach, pArgs ); + } + void ForEach( ULONG nStt, ULONG nEnd, FnForEach_SwNodes fnForEach, void* pArgs = 0 ) + { + BigPtrArray::ForEach( nStt, nEnd, (FnForEach) fnForEach, pArgs ); + } + void ForEach( const SwNodeIndex& rStart, const SwNodeIndex& rEnd, + FnForEach_SwNodes fnForEach, void* pArgs = 0 ); + + // eine noch leere Section + SwNode& GetEndOfPostIts() const { return *pEndOfPostIts; } + // Section fuer alle Fussnoten + SwNode& GetEndOfInserts() const { return *pEndOfInserts; } + // Section fuer alle Flys/Header/Footers + SwNode& GetEndOfAutotext() const { return *pEndOfAutotext; } + // Section fuer alle Redlines + SwNode& GetEndOfRedlines() const { return *pEndOfRedlines; } + // das ist der letzte EndNode einer SonderSection. Hier nach kommt nur + // noch die normale ContentSection (also der BodyText) + SwNode& GetEndOfExtras() const { return *pEndOfRedlines; } + // die normale ContentSection (also der BodyText) + SwNode& GetEndOfContent() const { return *pEndOfContent; } + + // ist das NodesArray das normale vom Doc? (nicht das UndoNds, .. ) + // Implementierung steht im doc.hxx (weil man dazu Doc kennen muss) ! + inline BOOL IsDocNodes() const; + + USHORT GetSectionLevel(const SwNodeIndex &rIndex) const; + void Delete(const SwNodeIndex &rPos, ULONG nNodes = 1); + + BOOL _MoveNodes( const SwNodeRange&, SwNodes& rNodes, const SwNodeIndex&, + BOOL bNewFrms = TRUE ); + void Move( SwPaM&, SwPosition&, SwNodes& rNodes, BOOL bSplitNd=TRUE ); + + void _Copy( const SwNodeRange& rRg, const SwNodeIndex& rInsPos, + BOOL bNewFrms = TRUE ) const + { _CopyNodes( rRg, rInsPos, bNewFrms ); } + + void SectionUp( SwNodeRange *); + void SectionDown( SwNodeRange *pRange, SwStartNodeType = SwNormalStartNode ); + + BOOL CheckNodesRange( const SwNodeIndex& rStt, const SwNodeIndex& rEnd ) const; + + void GoStartOfSection(SwNodeIndex *) const; + void GoEndOfSection(SwNodeIndex *) const; + + SwCntntNode* GoNext(SwNodeIndex *) const; + SwCntntNode* GoPrevious(SwNodeIndex *) const; + + //Gehe zum naechsten/vorherigen Cntnt/Tabellennode, fuer den + //es LayoutFrames gibt, dabei Kopf-/Fusszeilen/Rahmen etc. nicht verlassen + SwNode* GoNextWithFrm(SwNodeIndex *) const; + SwNode* GoPreviousWithFrm(SwNodeIndex *) const; + + // zum naechsten Content-Node, der nicht geschuetzt oder versteckt ist + // (beides auf FALSE ==> GoNext/GoPrevious!!!) + SwCntntNode* GoNextSection( SwNodeIndex *, int bSkipHidden = TRUE, + int bSkipProtect = TRUE ) const; + SwCntntNode* GoPrevSection( SwNodeIndex *, int bSkipHidden = TRUE, + int bSkipProtect = TRUE ) const; + + // erzeuge ein leere Section von Start und EndNode. Darf nur gerufen + // werden, wenn eine neue Section mit Inhalt erzeugt werden soll. + // Zum Beispiel bei den Filtern/Undo/... + SwStartNode* MakeEmptySection( const SwNodeIndex& rIdx, + SwStartNodeType = SwNormalStartNode ); + + SwCntntFrm *MakeFrm(const SwNodeIndex &rIndex); + + // die Impl. von "Make...Node" stehen in den angegebenen .ccx-Files + SwTxtNode *MakeTxtNode( const SwNodeIndex & rWhere, + SwTxtFmtColl *pColl, + SwAttrSet* pAutoAttr = 0 ); // in ndtxt.cxx + SwStartNode* MakeTextSection( const SwNodeIndex & rWhere, + SwStartNodeType eSttNdTyp, + SwTxtFmtColl *pColl, + SwAttrSet* pAutoAttr = 0 ); + + SwGrfNode *MakeGrfNode( const SwNodeIndex & rWhere, + const UniString& rGrfName, + const UniString& rFltName, + const Graphic* pGraphic, + SwGrfFmtColl *pColl, + SwAttrSet* pAutoAttr = 0, + BOOL bDelayed = FALSE ); // in ndgrf.cxx + + SwOLENode *MakeOLENode( const SwNodeIndex & rWhere, + SvInPlaceObject *pObj, + SwGrfFmtColl *pColl, + SwAttrSet* pAutoAttr = 0 ); // in ndole.cxx + SwOLENode *MakeOLENode( const SwNodeIndex & rWhere, + UniString &rName, + SwGrfFmtColl *pColl, + SwAttrSet* pAutoAttr = 0 ); // in ndole.cxx + + // Array aller GliederiungsNodes; + const SwOutlineNodes& GetOutLineNds() const { return *pOutlineNds; } + // ab einem bestimmten TextNode alle Updaten + void UpdateOutlineNode( const SwNode&, BYTE nOldLevel, BYTE nNewLevel ); + // alle Nodes Updaten - Rule/Format-Aenderung + void UpdateOutlineNodes(); + + // fuege die Nodes fuer die Tabelle ein + // wenn Lines angegeben, erzeuge die Matrix aus Lines & Boxen + // ansonsten nur die Anzahl von Boxen. + SwTableNode* InsertTable( const SwNodeIndex& rNdIdx, + USHORT nBoxes, SwTxtFmtColl* pCntntTxtColl, + USHORT nLines=0, SwTxtFmtColl* pHeadlineTxtColl=0 ); + // erzeuge aus dem makierten Bereich eine ausgeglichene Tabelle + SwTableNode* TextToTable( const SwNodeRange& rRange, sal_Unicode cCh, + SwTableFmt* pTblFmt, + SwTableLineFmt* pLineFmt, + SwTableBoxFmt* pBoxFmt, + SwTxtFmtColl* pTxtColl, + SwUndoTxtToTbl* pUndo = 0 ); + // erzeuge aus der Tabelle wieder normalen Text + BOOL TableToText( const SwNodeRange& rRange, sal_Unicode cCh, + SwUndoTblToTxt* = 0 ); + // steht im untbl.cxx und darf nur vom Undoobject gerufen werden + SwTableNode* UndoTableToText( ULONG nStt, ULONG nEnd, + const SwTblToTxtSaves& rSavedData ); + + // fuege in der Line, vor der InsPos eine neue Box ein. Das Format + // wird von der nachfolgenden (vorhergenden;wenn an Ende) genommen + // in der Line muss schon eine Box vorhanden sein ! + BOOL InsBoxen( SwTableNode*, SwTableLine*, SwTableBoxFmt*, + // Formate fuer den TextNode der Box + SwTxtFmtColl*, SwAttrSet* pAutoAttr, + USHORT nInsPos, USHORT nCnt = 1 ); + // Splittet eine Tabelle in der Grund-Zeile, in der der Index steht. + // Alle GrundZeilen dahinter wandern in eine neue Tabelle/-Node. + // Ist das Flag bCalcNewSize auf TRUE, wird fuer beide neuen Tabellen + // die neue SSize aus dem Max der Boxen errechnet; vorrausgesetzt, + // die SSize ist "absolut" gesetzt (LONG_MAX) + // (Wird zur Zeit nur fuer den RTF-Parser benoetigt) + SwTableNode* SplitTable( const SwNodeIndex& rPos, BOOL bAfter = TRUE, + BOOL bCalcNewSize = FALSE ); + // fuegt 2 Tabellen, die hintereinander stehen, wieder zusammen + BOOL MergeTable( const SwNodeIndex& rPos, BOOL bWithPrev = TRUE, + USHORT nMode = 0, SwHistory* pHistory = 0 ); + + // fuege eine neue SwSection ein + SwSectionNode* InsertSection( const SwNodeIndex& rNdIdx, + SwSectionFmt& rSectionFmt, + const SwSection&, + const SwNodeIndex* pEnde, + BOOL bInsAtStart = TRUE, + BOOL bCreateFrms = TRUE ); + + // in welchem Doc steht das Nodes-Array ? + SwDoc* GetDoc() { return pMyDoc; } + const SwDoc* GetDoc() const { return pMyDoc; } + + // suche den vorhergehenden [/nachfolgenden ] ContentNode oder + // TabellenNode mit Frames. Wird kein Ende angeben, dann wird mit + // dem FrameIndex begonnen; ansonsten, wird mit dem vor rFrmIdx und + // dem hintern pEnd die Suche gestartet. Sollte kein gueltiger Node + // gefunden werden, wird 0 returnt. rFrmIdx zeigt auf dem Node mit + // Frames + SwNode* FindPrvNxtFrmNode( SwNodeIndex& rFrmIdx, + const SwNode* pEnd = 0 ) const; +private: + // privater Constructor, weil nie kopiert werden darf !! + SwNodes( const SwNodes & rNodes ); +}; + + + +#endif diff --git a/sw/inc/ndgrf.hxx b/sw/inc/ndgrf.hxx new file mode 100644 index 000000000000..36bea7f6326c --- /dev/null +++ b/sw/inc/ndgrf.hxx @@ -0,0 +1,373 @@ +/************************************************************************* + * + * $RCSfile: ndgrf.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDGRF_HXX +#define _NDGRF_HXX + + +#ifndef _LNKBASE_HXX //autogen +#include +#endif +#ifndef _GRFMGR_HXX //autogen +#include +#endif +#ifndef _NDNOTXT_HXX +#include +#endif + +class SwGrfFmtColl; +class SwDoc; +class GraphicAttr; + +// Code for the new GraphicObject +#ifdef USE_GRFOBJECT + +// -------------------- +// SwGrfNode +// -------------------- +class SwGrfNode: public SwNoTxtNode +{ + friend class SwNodes; + friend class SwGrfFrm; + + GraphicObject aGrfObj; + SvBaseLinkRef refLink; // falls Grafik nur als Link, dann Pointer gesetzt + Size nGrfSize; + String aStrmName; // SW3: Name des Storage-Streams fuer Embedded + String aNewStrmName; // SW3: name des Storage-Streams bei SaveAs + String aLowResGrf; // HTML: LowRes Grafik (Ersatzdarstellung bis + // die normale (HighRes) geladen ist. + + BOOL bTransparentFlagValid :1; + BOOL bInSwapIn :1; + BOOL bGrafikArrived :1; + BOOL bChgTwipSize :1; + BOOL bLoadLowResGrf :1; + BOOL bFrameInPaint :1; //Um Start-/EndActions im Paint (ueber + //SwapIn zu verhindern. + BOOL bScaleImageMap :1; //Image-Map in SetTwipSize skalieren + + SwGrfNode( const SwNodeIndex& rWhere, + const String& rGrfName, const String& rFltName, + const Graphic* pGraphic, + SwGrfFmtColl* pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + // Ctor fuer Einlesen (SW/G) ohne Grafik + SwGrfNode( const SwNodeIndex& rWhere, + const String& rGrfName, const String& rFltName, + SwGrfFmtColl* pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + + void InsertLink( const String& rGrfName, const String& rFltName ); + void DelStreamName(); + + DECL_LINK( SwapGraphic, GraphicObject* ); + +public: + virtual ~SwGrfNode(); + + const Graphic& GetGrf() const { return aGrfObj.GetGraphic(); } + const GraphicObject& GetGrfObj() const { return aGrfObj; } + GraphicObject& GetGrfObj() { return aGrfObj; } + + virtual SwCntntNode *SplitNode( const SwPosition & ); + + virtual Size GetTwipSize() const; +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + void SetTwipSize( const Size& rSz ); + + inline BOOL IsTransparent() const { return aGrfObj.IsTransparent(); } + + inline BOOL IsAnimated() const { return aGrfObj.IsAnimated(); } + + inline BOOL IsChgTwipSize() const { return bChgTwipSize; } + inline void SetChgTwipSize( BOOL b ) { bChgTwipSize = b; } + + inline BOOL IsGrafikArrived() const { return bGrafikArrived; } + inline void SetGrafikArrived( BOOL b ) { bGrafikArrived = b; } + + inline BOOL IsFrameInPaint() const { return bFrameInPaint; } + inline void SetFrameInPaint( BOOL b ) { bFrameInPaint = b; } + + inline BOOL IsScaleImageMap() const { return bScaleImageMap; } + inline void SetScaleImageMap( BOOL b ) { bScaleImageMap = b; } + + // alles fuers Laden der LowRes-Grafiken + inline BOOL IsLoadLowResGrf() const { return bLoadLowResGrf; } + inline void SetLoadLowResGrf( BOOL b ) { bLoadLowResGrf = b; } + const String& GetLowResGrfName() const { return aLowResGrf; } + void SetLowResGrfName( const String& r ) { aLowResGrf = r; } +#endif + // steht in ndcopy.cxx + virtual SwCntntNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + // erneutes Einlesen, falls Graphic nicht Ok ist. Die + // aktuelle wird durch die neue ersetzt. +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + BOOL ReRead( const String& rGrfName, const String& rFltName, + const Graphic* pGraphic = 0, BOOL bModify = TRUE ); + // Laden der Grafik unmittelbar vor der Anzeige + short SwapIn( BOOL bWaitForData = FALSE ); + // Entfernen der Grafik, um Speicher freizugeben + short SwapOut(); + // Schreiben der Grafik + BOOL StoreGraphics( SvStorage* pDocStg = NULL ); + // Zugriff auf den Storage-Streamnamen + const String& GetStreamName() const; + void SetStreamName( const String& r ) { aStrmName = r; } + void SaveCompleted( BOOL bClear ); +#endif + + // Der Grafik sagen, dass sich der Node im Undobereich befindet + virtual BOOL SavePersistentData(); + virtual BOOL RestorePersistentData(); + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + // Abfrage der Link-Daten + BOOL IsGrfLink() const { return refLink.Is(); } + inline BOOL IsLinkedFile() const; + inline BOOL IsLinkedDDE() const; + SvBaseLinkRef GetLink() const { return refLink; } + BOOL GetFileFilterNms( String* pFileNm, String* pFilterNm ) const; + void ReleaseLink(); + + // Prioritaet beim Laden der Grafik setzen. Geht nur, wenn der Link + // ein FileObject gesetzt hat + void SetTransferPriority( USHORT nPrio ); + + // Skalieren einer Image-Map: Die Image-Map wird um den Faktor + // zwischen Grafik-Groesse und Rahmen-Groesse vergroessert/verkleinert + void ScaleImageMap(); + + // returns the with our graphic attributes filled Graphic-Attr-Structure + GraphicAttr& GetGraphicAttr( GraphicAttr&, const SwFrm* pFrm ) const; + +#endif +}; + +/* */ +#else +// USE_GRFOBJECT + +// -------------------- +// SwGrfNode +// -------------------- +class SwGrfNode: public SwNoTxtNode +{ + friend class SwNodes; + friend class SwGrfFrm; + friend class SwGraphicAccess; + + Graphic aGraphic; + SvBaseLinkRef refLink; // falls Grafik nur als Link, dann Pointer gesetzt + Size nGrfSize; + String aStrmName; // SW3: Name des Storage-Streams fuer Embedded + String aNewStrmName; // SW3: name des Storage-Streams bei SaveAs + String aLowResGrf; // HTML: LowRes Grafik (Ersatzdarstellung bis + // die normale (HighRes) geladen ist. + + const void *pCchMagic; // "MagicNumber" innerhalb des Grafikcaches + USHORT nCchIndex; // Index im Grafikcache + + BOOL bTransparentFlagValid :1; + BOOL bIsTransparent :1; + BOOL bInSwapIn :1; + BOOL bGrafikArrived :1; + BOOL bChgTwipSize :1; + BOOL bLoadLowResGrf :1; + BOOL bFrameInPaint :1; //Um Start-/EndActions im Paint (ueber + //SwapIn zu verhindern. + BOOL bScaleImageMap :1; //Image-Map in SetTwipSize skalieren + + SwGrfNode( const SwNodeIndex& rWhere, + const String& rGrfName, const String& rFltName, + const Graphic* pGraphic, + SwGrfFmtColl* pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + // Ctor fuer Einlesen (SW/G) ohne Grafik + SwGrfNode( const SwNodeIndex& rWhere, + const String& rGrfName, const String& rFltName, + SwGrfFmtColl* pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + + void InsertLink( const String& rGrfName, const String& rFltName ); + void DelStreamName(); + + void Impl_IsTransparent(); + +public: + ~SwGrfNode(); + + const Graphic& GetGrf() const { return aGraphic; } + + virtual SwCntntNode *SplitNode( const SwPosition & ); + + virtual Size GetTwipSize() const; +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + void SetTwipSize( const Size& rSz ); + + inline BOOL IsTransparent() const; + inline void InvalidateTransparentFlag() { bTransparentFlagValid = FALSE; } + inline void SetTransparent( BOOL bFlag ) + { bIsTransparent = bFlag, bTransparentFlagValid = TRUE; } + + inline BOOL IsChgTwipSize() const { return bChgTwipSize; } + inline void SetChgTwipSize( BOOL b ) { bChgTwipSize = b; } + + inline BOOL IsGrafikArrived() const { return bGrafikArrived; } + inline void SetGrafikArrived( BOOL b ) { bGrafikArrived = b; } + + inline BOOL IsFrameInPaint() const { return bFrameInPaint; } + inline void SetFrameInPaint( BOOL b ) { bFrameInPaint = b; } + + inline BOOL IsScaleImageMap() const { return bScaleImageMap; } + inline void SetScaleImageMap( BOOL b ) { bScaleImageMap = b; } + + inline void SetCacheFlags( const void* p, USHORT nIdx = 0 ) + { pCchMagic = p; nCchIndex = nIdx; } + void ClearQBmpCache(); + inline BOOL HasMagicId() const { return 0 != pCchMagic; } + + // alles fuers Laden der LowRes-Grafiken + inline BOOL IsLoadLowResGrf() const { return bLoadLowResGrf; } + inline void SetLoadLowResGrf( BOOL b ) { bLoadLowResGrf = b; } + const String& GetLowResGrfName() const { return aLowResGrf; } + void SetLowResGrfName( const String& r ) { aLowResGrf = r; } +#endif + // steht in ndcopy.cxx + virtual SwCntntNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + // erneutes Einlesen, falls Graphic nicht Ok ist. Die + // aktuelle wird durch die neue ersetzt. +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + BOOL ReRead( const String& rGrfName, const String& rFltName, + const Graphic* pGraphic = 0, BOOL bModify = TRUE ); + // Laden der Grafik unmittelbar vor der Anzeige + short SwapIn( BOOL bWaitForData = FALSE ); + // Entfernen der Grafik, um Speicher freizugeben + short SwapOut(); + // Schreiben der Grafik + BOOL StoreGraphics( SvStorage* pDocStg = NULL ); + // Zugriff auf den Storage-Streamnamen + const String& GetStreamName() const; + void SetStreamName( const String& r ) { aStrmName = r; } + void SaveCompleted( BOOL bClear ); +#endif + + // Der Grafik sagen, dass sich der Node im Undobereich befindet + virtual BOOL SavePersistentData(); + virtual BOOL RestorePersistentData(); + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + // Abfrage der Link-Daten + BOOL IsGrfLink() const { return refLink.Is(); } + inline BOOL IsLinkedFile() const; + inline BOOL IsLinkedDDE() const; + SvBaseLinkRef GetLink() const { return refLink; } + BOOL GetFileFilterNms( String* pFileNm, String* pFilterNm ) const; + void ReleaseLink(); + + // Prioritaet beim Laden der Grafik setzen. Geht nur, wenn der Link + // ein FileObject gesetzt hat + void SetTransferPriority( USHORT nPrio ); + + // Skalieren einer Image-Map: Die Image-Map wird um den Faktor + // zwischen Grafik-Groesse und Rahmen-Groesse vergroessert/verkleinert + void ScaleImageMap(); +#endif +}; + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED +inline BOOL SwGrfNode::IsTransparent() const +{ + if ( !bTransparentFlagValid ) + ((SwGrfNode*)this)->Impl_IsTransparent(); + return bIsTransparent; +} +// fuer den Zugriff auf die CacheDaten +BOOL FindGrfSizeFromCache( const String& rGrfName, Size& rGrfSz ); +#endif + +/* */ +#endif +// USE_GRFOBJECT + +// ---------------------------------------------------------------------- +// Inline Metoden aus Node.hxx - erst hier ist der TxtNode bekannt !! +inline SwGrfNode *SwNode::GetGrfNode() +{ + return ND_GRFNODE == nNodeType ? (SwGrfNode*)this : 0; +} +inline const SwGrfNode *SwNode::GetGrfNode() const +{ + return ND_GRFNODE == nNodeType ? (const SwGrfNode*)this : 0; +} + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED +inline BOOL SwGrfNode::IsLinkedFile() const +{ + return refLink.Is() && OBJECT_CLIENT_GRF == refLink->GetObjType(); +} +inline BOOL SwGrfNode::IsLinkedDDE() const +{ + return refLink.Is() && OBJECT_CLIENT_DDE == refLink->GetObjType(); +} +#endif + + +#endif diff --git a/sw/inc/ndhints.hxx b/sw/inc/ndhints.hxx new file mode 100644 index 000000000000..abd81a89d4e8 --- /dev/null +++ b/sw/inc/ndhints.hxx @@ -0,0 +1,260 @@ +/************************************************************************* + * + * $RCSfile: ndhints.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDHINTS_HXX +#define _NDHINTS_HXX + + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif + +#include "numrule.hxx" + +class SwTxtNode; +class SwRegHistory; // steht im RolBck.hxx +class SwTxtAttr; + +/* + * Ableitung der Klasse SwpHints ueber den Umweg ueber SwpHts, da + * lediglich die Klasse SwTxtNode Attribute einfuegen und + * loeschen koennen soll. Anderen Klassen wie den Frames steht + * lediglich ein lesender Zugriff ueber den Index-Operator zur + * Verfuegung. + * Groesse beim Anlegen gleich 1, weil nur dann ein Array erzeug wird, wenn + * auch ein Hint eingefuegt wird. + */ + +/************************************************************************* + * class SwpHtStart/End + *************************************************************************/ + +SV_DECL_PTRARR_SORT(SwpHtStart,SwTxtAttr*,1,1) +SV_DECL_PTRARR_SORT(SwpHtEnd,SwTxtAttr*,1,1) + +/************************************************************************* + * class SwpHintsArr + *************************************************************************/ + +// Das neue Hintsarray: +class SwpHintsArr : private SwpHtStart +{ + +protected: + SwpHtEnd aHtEnd; + +public: + void Insert( const SwTxtAttr *pHt ); + void Delete( const SwTxtAttr *pHt ); + void DeleteAtPos( const USHORT nPosInStart ); + BOOL Resort(); + SwTxtAttr *Cut( const USHORT nPosInStart ); + + inline const SwTxtAttr *GetStart( const USHORT nPos ) const { return (*this)[nPos]; } + inline const SwTxtAttr *GetEnd( const USHORT nPos ) const { return aHtEnd[nPos]; } + inline SwTxtAttr *GetStart( const USHORT nPos ) { return GetHt(nPos); } + inline SwTxtAttr *GetEnd( const USHORT nPos ) { return aHtEnd[nPos]; } + inline USHORT GetEndCount() const { return aHtEnd.Count(); } + inline USHORT GetStartCount() const { return Count(); } + inline USHORT GetStartOf( const SwTxtAttr *pHt ) const; + inline USHORT GetEndOf( const SwTxtAttr *pHt ) const; + inline USHORT GetPos( const SwTxtAttr *pHt ) const +// OS: in svmem.hxx wird fuer TCPP GetPos ohne const gerufen +#ifdef TCPP + { return SwpHtStart::GetPos( (SwTxtAttr *)pHt ); } +#else + { return SwpHtStart::GetPos( pHt ); } +#endif + +#ifdef USED + // Der Zugriffsoperator soll bald nur noch const sein! + inline SwTxtAttr *operator[]( const USHORT nIdx ) { return SwpHtStart::operator[](nIdx); } +#endif + + + inline SwTxtAttr *GetHt( const USHORT nIdx ) { return SwpHtStart::operator[](nIdx); } + inline const SwTxtAttr *operator[]( const USHORT nIdx )const + { return SwpHtStart::operator[](nIdx); } + inline USHORT Count() const { return SwpHtStart::Count(); } + + // Methoden vom PtrArr weiterreichen, wird fuer Node::_Cut benoetigt + const SwTxtAttr** GetData() const { return SwpHtStart::GetData(); } + +#ifndef PRODUCT + BOOL Check() const; +#endif +}; + +/************************************************************************* + * class SwpHints + *************************************************************************/ + +// Die public-Schnittstelle zum Node hin +class SwpHints: public SwpHintsArr +{ +private: + SwRegHistory* pHistory; + // Numerierung + BOOL bVis :1; // HiddenParaFld + BOOL bFntChg :1; // Fontwechsel + BOOL bFtn :1; // Fussnoten + BOOL bInSplitNode: 1; // TRUE: der Node ist im Split und die Frames + // werden verschoben! + BOOL bDDEFlds : 1; // es sind DDE-Felder am TextNode vorhanden + BOOL bCalcVis : 1; // bVis ist invalid, CalcVisibleFlag() rufen + + BOOL Resort( const USHORT nPos ); + // loescht Hints, die keinen Zustaendigkeitsbereich mehr haben + void ClearDummies( SwTxtNode &rNode ); + // Forget signalisiert, dass es ueberfluessig ist, das Attribut einzu- + // fuegen, da es keinen Zustaendigkeitsbereich haette. + BOOL Forget( const USHORT i, const USHORT nWhich, + const xub_StrLen nStrt, const xub_StrLen nEnd ); + // Merge verschmilzt aneinanderreichende Hints mit gleichen Attributen + // und gleichen Werten, falls nichts dagegen spricht, d.h. wenn dadurch + // keine Ueberlappungen mit gleichartigen Attr. entstehen, + // Ist der Rueckgabewert TRUE, so wurde verschmolzen und dabei u.a. auch + // ein Resort ausgeloest. + BOOL Merge( SwTxtNode &rNode ); + // Haelt ein neues Attribut in pHistory fest. + void NoteInHistory( SwTxtAttr *pAttr, const BOOL bNew = FALSE ); + + void CalcFlags( ); + + // die Delete Methoden duerfen nur vom TextNode gerufen werden !! + // Dieser sorgt dafuer, das bei Attributen ohne Ende auch das + // entsp. Zeichen entfernt wird !! + friend class SwTxtNode; + void DeleteAtPos( const USHORT nPos ); + // Ist der Hint schon bekannt, dann suche die Position und loesche ihn. + // Ist er nicht im Array, so gibt es ein ASSERT !! + void Delete( SwTxtAttr* pTxtHt ); + +public: + inline BOOL CanBeDeleted() const { return !Count(); } + + // damit das SwDoc::Undo ueber alle Attributaenderungen informiert + // wird, gibt es hier einen Pointer auf die History. Nur wenn dieser + // != 0 ist, muessen alle Attributaenderungen "gemeldet" werden. + void Register( SwRegHistory* pHist ) { pHistory = pHist; } + void DeRegister() { Register(0); } + + void Insert( SwTxtAttr *pHt, SwTxtNode &rNode, USHORT nMode = 0 ); + + USHORT GetLang( const xub_StrLen nBegin, const xub_StrLen nLen) const; + inline void SetCalcVisible(){ bCalcVis = TRUE; } + inline void SetVisible( const BOOL bNew ) { bVis = bNew; } + inline BOOL IsVisible() const + { if( bCalcVis ) ((SwpHints*)this)->CalcVisibleFlag(); return bVis; } + inline BOOL HasFntChg() const { return bFntChg; } + inline BOOL HasFtn() const { return bFtn; } + inline BOOL IsInSplitNode() const { return bInSplitNode; } + inline BOOL HasDDEFld() const { return bDDEFlds; } + + // Konstruktor (wird im nur einmal benutzt!) + SwpHints() + { + pHistory = 0; + bFntChg = bVis = TRUE; + bDDEFlds = bFtn = bInSplitNode = bCalcVis = FALSE; + } + + // Berechnung von bVis, return-Wert TRUE bei Aenderung + BOOL CalcVisibleFlag(); + + DECL_FIXEDMEMPOOL_NEWDEL(SwpHints) +}; + +// Ausgabeoperator fuer die Texthints +SvStream &operator<<(SvStream &aS, const SwpHints &rHints); //$ ostream + +/************************************************************************* + * Inline-Implementationen + *************************************************************************/ + +inline USHORT SwpHintsArr::GetStartOf( const SwTxtAttr *pHt ) const +{ + USHORT nPos; + if( !Seek_Entry( pHt, &nPos ) ) + nPos = USHRT_MAX; + return nPos; +} + +inline USHORT SwpHintsArr::GetEndOf( const SwTxtAttr *pHt ) const +{ + USHORT nPos; + if( !aHtEnd.Seek_Entry( pHt, &nPos ) ) + nPos = USHRT_MAX; + return nPos; +} + +inline SwTxtAttr *SwpHintsArr::Cut( const USHORT nPosInStart ) +{ + SwTxtAttr *pHt = GetHt(nPosInStart); + DeleteAtPos( nPosInStart ); + return pHt; +} + + +#endif diff --git a/sw/inc/ndindex.hxx b/sw/inc/ndindex.hxx new file mode 100644 index 000000000000..d4eaf6a50937 --- /dev/null +++ b/sw/inc/ndindex.hxx @@ -0,0 +1,312 @@ +/************************************************************************* + * + * $RCSfile: ndindex.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDINDEX_HXX +#define _NDINDEX_HXX + +#include +#ifndef _SOLAR_H +#include +#endif + +#include "node.hxx" +#include "ndarr.hxx" + +class SwNode; +class SwNodes; + +class SwNodeIndex +{ + friend void SwNodes::RegisterIndex( SwNodeIndex& ); + friend void SwNodes::DeRegisterIndex( SwNodeIndex& ); + friend void SwNodes::RemoveNode( ULONG, ULONG, FASTBOOL ); + +#ifndef PRODUCT + static int nSerial; + int MySerial; +#endif + + SwNode* pNd; + SwNodeIndex *pNext, *pPrev; + + void Remove(); // Ausketten + + // diese sind nicht erlaubt! + SwNodeIndex( SwNodes& rNds, USHORT nIdx ); + SwNodeIndex( SwNodes& rNds, int nIdx ); + +public: + SwNodeIndex( SwNodes& rNds, ULONG nIdx = 0 ); + SwNodeIndex( const SwNodeIndex &, long nDiff = 0 ); + SwNodeIndex( const SwNode&, long nDiff = 0 ); + ~SwNodeIndex() { Remove(); } + + inline ULONG operator++(); + inline ULONG operator--(); +#ifndef CFRONT + inline ULONG operator++(int); + inline ULONG operator--(int); +#endif + + inline ULONG operator+=( ULONG ); + inline ULONG operator-=( ULONG ); + inline ULONG operator+=( const SwNodeIndex& ); + inline ULONG operator-=( const SwNodeIndex& ); + + inline BOOL operator< ( const SwNodeIndex& ) const; + inline BOOL operator<=( const SwNodeIndex& ) const; + inline BOOL operator> ( const SwNodeIndex& ) const; + inline BOOL operator>=( const SwNodeIndex& ) const; + inline BOOL operator==( const SwNodeIndex& ) const; + inline BOOL operator!=( const SwNodeIndex& ) const; + + inline BOOL operator< ( ULONG nWert ) const; + inline BOOL operator<=( ULONG nWert ) const; + inline BOOL operator> ( ULONG nWert ) const; + inline BOOL operator>=( ULONG nWert ) const; + inline BOOL operator==( ULONG nWert ) const; + inline BOOL operator!=( ULONG nWert ) const; + + inline SwNodeIndex& operator=( ULONG ); + SwNodeIndex& operator=( const SwNodeIndex& ); + SwNodeIndex& operator=( const SwNode& ); + + // gebe den Wert vom Index als ULONG zurueck + inline ULONG GetIndex() const; + + // ermoeglicht Zuweisungen ohne Erzeugen eines temporaeren Objektes + SwNodeIndex& Assign( SwNodes& rNds, ULONG ); + SwNodeIndex& Assign( const SwNode& rNd, long nOffset = 0 ); + + // Herausgabe des Pointers auf das NodesArray, + inline const SwNodes& GetNodes() const; + inline SwNodes& GetNodes(); + + SwNode& GetNode() const { return *pNd; } +}; + +/* + * SwRange + */ +class SwNodeRange +{ +public: + SwNodeIndex aStart; + SwNodeIndex aEnd; + + SwNodeRange( const SwNodeIndex &rS, const SwNodeIndex &rE ); + SwNodeRange( const SwNodeRange &rRange ); + + SwNodeRange( SwNodes& rArr, ULONG nSttIdx = 0, ULONG nEndIdx = 0 ); + SwNodeRange( const SwNodeIndex& rS, long nSttDiff, + const SwNodeIndex& rE, long nEndDiff = 0 ); + SwNodeRange( const SwNode& rS, long nSttDiff, + const SwNode& rE, long nEndDiff = 0 ); +}; + + + + +// fuer die inlines wird aber der node.hxx benoetigt. Dieses braucht aber +// auch wieder dieses. Also alle Inlines, die auf pNd zugreifen werden +// hier implementiert. + +inline ULONG SwNodeIndex::GetIndex() const +{ + return pNd->GetIndex(); +} +inline const SwNodes& SwNodeIndex::GetNodes() const +{ + return pNd->GetNodes(); +} +inline SwNodes& SwNodeIndex::GetNodes() +{ + return pNd->GetNodes(); +} +inline BOOL SwNodeIndex::operator< ( ULONG nWert ) const +{ + return pNd->GetIndex() < nWert; +} +inline BOOL SwNodeIndex::operator<=( ULONG nWert ) const +{ + return pNd->GetIndex() <= nWert; +} +inline BOOL SwNodeIndex::operator> ( ULONG nWert ) const +{ + return pNd->GetIndex() > nWert; +} +inline BOOL SwNodeIndex::operator>=( ULONG nWert ) const +{ + return pNd->GetIndex() >= nWert; +} +inline BOOL SwNodeIndex::operator==( ULONG nWert ) const +{ + return pNd->GetIndex() == nWert; +} +inline BOOL SwNodeIndex::operator!=( ULONG nWert ) const +{ + return pNd->GetIndex() != nWert; +} +inline BOOL SwNodeIndex::operator<( const SwNodeIndex& rIndex ) const +{ + return pNd->GetIndex() < rIndex.GetIndex(); +} +inline BOOL SwNodeIndex::operator<=( const SwNodeIndex& rIndex ) const +{ + return pNd->GetIndex() <= rIndex.GetIndex(); +} +inline BOOL SwNodeIndex::operator>( const SwNodeIndex& rIndex ) const +{ + return pNd->GetIndex() > rIndex.GetIndex(); +} +inline BOOL SwNodeIndex::operator>=( const SwNodeIndex& rIndex ) const +{ + return pNd->GetIndex() >= rIndex.GetIndex(); +} +inline BOOL SwNodeIndex::operator==( const SwNodeIndex& rIdx ) const +{ + return pNd == rIdx.pNd; +} +inline BOOL SwNodeIndex::operator!=( const SwNodeIndex& rIdx ) const +{ + return pNd != rIdx.pNd; +} + +inline ULONG SwNodeIndex::operator++() +{ + return ( pNd = GetNodes()[ pNd->GetIndex()+1 ] )->GetIndex(); +} +inline ULONG SwNodeIndex::operator--() +{ + return ( pNd = GetNodes()[ pNd->GetIndex()-1 ] )->GetIndex(); +} +#ifndef CFRONT +inline ULONG SwNodeIndex::operator++(int) +{ + ULONG nOldIndex = pNd->GetIndex(); + pNd = GetNodes()[ nOldIndex + 1 ]; + return nOldIndex; +} +inline ULONG SwNodeIndex::operator--(int) +{ + ULONG nOldIndex = pNd->GetIndex(); + pNd = GetNodes()[ nOldIndex - 1 ]; + return nOldIndex; +} +#endif + +inline ULONG SwNodeIndex::operator+=( ULONG nWert ) +{ + return ( pNd = GetNodes()[ pNd->GetIndex() + nWert ] )->GetIndex(); +} +inline ULONG SwNodeIndex::operator-=( ULONG nWert ) +{ + return ( pNd = GetNodes()[ pNd->GetIndex() - nWert ] )->GetIndex(); +} +inline ULONG SwNodeIndex::operator+=( const SwNodeIndex& rIndex ) +{ + return ( pNd = GetNodes()[ pNd->GetIndex() + rIndex.GetIndex() ] )->GetIndex(); +} +inline ULONG SwNodeIndex::operator-=( const SwNodeIndex& rIndex ) +{ + return ( pNd = GetNodes()[ pNd->GetIndex() - rIndex.GetIndex() ] )->GetIndex(); +} + +inline SwNodeIndex& SwNodeIndex::operator=( ULONG nWert ) +{ + pNd = GetNodes()[ nWert ]; + return *this; +} + + + +//JP 29.09.97: impl. steht im ndindex.hxx - sollte moeglichst bald auf die +// neue Schnittstelle angepasst werden +inline SwNode* SwNodes::operator[]( const SwNodeIndex& rIdx ) const +{ + return &rIdx.GetNode(); +} + + +/****************************************************************** + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/inc/ndindex.hxx,v 1.1.1.1 2000-09-18 17:14:27 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.3 2000/09/18 16:03:23 willem.vandorp + OpenOffice header added. + + Revision 1.2 2000/09/08 13:24:18 willem.vandorp + Header and footer replaced + + Revision 1.1 1997/10/09 13:12:34 JP + Umstellung NodeIndex/-Array/BigPtrArray + + + Rev 1.0 09 Oct 1997 15:12:34 JP + Umstellung NodeIndex/-Array/BigPtrArray + +*******************************************************************/ + +#endif diff --git a/sw/inc/ndnotxt.hxx b/sw/inc/ndnotxt.hxx new file mode 100644 index 000000000000..523dd3915436 --- /dev/null +++ b/sw/inc/ndnotxt.hxx @@ -0,0 +1,133 @@ +/************************************************************************* + * + * $RCSfile: ndnotxt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDNOTXT_HXX +#define _NDNOTXT_HXX + +#include "node.hxx" + +class PolyPolygon; + +// -------------------- +// SwNoTxtNode +// -------------------- + +class SwNoTxtNode : public SwCntntNode +{ + friend class SwNodes; + friend class SwNoTxtFrm; + + String aAlternateText; // alternativer Text (HTML) + + PolyPolygon *pContour; // Polygon fuer Konturumlauf + + // erzeugt fuer alle Ableitungen einen AttrSet mit Bereichen + // fuer Frame- und Grafik-Attributen (wird nur vom SwCntntNode gerufen) + virtual void NewAttrSet( SwAttrPool& ); + + SwNoTxtNode( const SwNoTxtNode& ); //nicht erlaubt + SwNoTxtNode &operator=( const SwNoTxtNode& ); //nicht erlaubt + +protected: + SwNoTxtNode( const SwNodeIndex &rWhere, const BYTE nNdType, + SwGrfFmtColl *pGrColl, SwAttrSet* pAutoAttr = 0 ); + +public: + ~SwNoTxtNode(); + + virtual SwCntntFrm *MakeFrm(); + + inline SwGrfFmtColl *GetGrfColl() const; + + virtual Size GetTwipSize() const = 0; + + virtual BOOL SavePersistentData(); + virtual BOOL RestorePersistentData(); + + // alternativen Text abfragen/setzen + const String& GetAlternateText() const { return aAlternateText; } + void SetAlternateText( const String& rTxt ) { aAlternateText = rTxt; } + + void SetContour( const PolyPolygon *pPoly ); + const PolyPolygon *HasContour() const { return pContour; } + void GetContour( PolyPolygon &rPoly ) const; + void CreateContour(); + + //Besorgt die Graphic, mit SwapIn fuer GrfNode, per GetData fuer OLE. + Graphic GetGraphic() const; +}; + +inline SwGrfFmtColl* SwNoTxtNode::GetGrfColl() const +{ + return (SwGrfFmtColl*)GetRegisteredIn(); +} + +// Inline Metoden aus Node.hxx - erst hier ist der TxtNode bekannt !! +inline SwNoTxtNode *SwNode::GetNoTxtNode() +{ + return ND_NOTXTNODE & nNodeType ? (SwNoTxtNode*)this : 0; +} +inline const SwNoTxtNode *SwNode::GetNoTxtNode() const +{ + return ND_NOTXTNODE & nNodeType ? (const SwNoTxtNode*)this : 0; +} + + +#endif // _NDNOTXT_HXX diff --git a/sw/inc/ndole.hxx b/sw/inc/ndole.hxx new file mode 100644 index 000000000000..7a00e889080e --- /dev/null +++ b/sw/inc/ndole.hxx @@ -0,0 +1,217 @@ +/************************************************************************* + * + * $RCSfile: ndole.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDOLE_HXX +#define _NDOLE_HXX + +#ifndef _SWBASLNK_HXX +#include // fuer SwBaseLink +#endif +#ifndef _NDNOTXT_HXX +#include +#endif + +class SwGrfFmtColl; +class SwDoc; +class SvInPlaceObjectRef; +class SvInPlaceObject; +class SwOLENode; +class SwOLELink; +class SwOLELRUCache; + + +class SwOLEObj +{ + friend class SwOLENode; + + static SwOLELRUCache* pOLELRU_Cache; + + const SwOLENode* pOLENd; + SvBaseLinkRef refLink; // falls Object nur als Link, dann Pointer gesetzt + + //Entweder Ref oder Name sind bekannt, wenn nur der Name bekannt ist, wird + //dir Ref bei Anforderung durch GetOleRef() vom Sfx besorgt. + SvInPlaceObjectRef *pOLERef; //new/delete, damit so2.hxx wegfaellt. + String aName; + + SwOLEObj( const SwOLEObj& rObj ); //nicht erlaubt. + SwOLEObj(); + + void SetNode( SwOLENode* pNode ); + +public: + SwOLEObj( SvInPlaceObject *pObj ); + SwOLEObj( const String &rName ); + ~SwOLEObj(); + + // OLE-Object aus dem "Speicher" entfernen + void Unload(); + BOOL RemovedFromLRU(); + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + SvInPlaceObjectRef GetOleRef(); + const String &GetName() const { return aName; } + + BOOL IsOleRef() const; //Damit das Objekt nicht unnoetig geladen werden muss. + + BOOL IsOLELink() const { return refLink.Is(); } + inline SwOLELink* GetLink() const; + inline void SetLink( SwOLELink* pLink ); + void ReleaseLink(); + +#endif +}; + + +// -------------------- +// SwOLENode +// -------------------- + +struct SwPersistentOleData; + +class SwOLENode: public SwNoTxtNode +{ + friend class SwNodes; + SwOLEObj aOLEObj; + SwPersistentOleData* pSavedData; + String sChartTblName; // bei Chart Objecten: Name der ref. Tabelle + BOOL bOLESizeInvalid; //Soll beim SwDoc::PrtOLENotify beruecksichtig + //werden (zum Beispiel kopiert). Ist nicht + //Persistent. + + SwOLENode( const SwNodeIndex &rWhere, + SvInPlaceObject *, + SwGrfFmtColl *pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + + SwOLENode( const SwNodeIndex &rWhere, + const String &rName, + SwGrfFmtColl *pGrfColl, + SwAttrSet* pAutoAttr = 0 ); + + // aOLEObj besitzt einen privaten Copy-CTOR, wir brauchen auch einen: + SwOLENode( const SwOLENode & ); + +public: + const SwOLEObj& GetOLEObj() const { return aOLEObj; } + SwOLEObj& GetOLEObj() { return aOLEObj; } + + virtual SwCntntNode *SplitNode( const SwPosition & ); + // steht in ndcopy.cxx + virtual SwCntntNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + + virtual Size GetTwipSize() const; + + virtual BOOL SavePersistentData(); + virtual BOOL RestorePersistentData(); + + BOOL IsInGlobalDocSection() const; + BOOL IsOLEObjectDeleted() const; + + BOOL IsOLESizeInvalid() const { return bOLESizeInvalid; } + void SetOLESizeInvalid( BOOL b ){ bOLESizeInvalid = b; } + + // OLE-Object aus dem "Speicher" entfernen + inline void Unload() { aOLEObj.Unload(); } + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED + const String& GetChartTblName() const { return sChartTblName; } + void SetChartTblName( const String& rNm ) { sChartTblName = rNm; } +#endif +}; + +// -------------------- +// SwOLELink +// -------------------- + +class SwOLELink : public SwBaseLink +{ + friend class Sw3IoImp; + void SetCacheObj( SvEmbeddedObject * pObj ) + { SvBaseLink::SetCacheObj( pObj ); } + +public: + SwOLELink( SwOLENode& rNode, SvPseudoObject* pObj ) + : SwBaseLink( aEmptyStr, OBJECT_CLIENT_OLE_CACHE, pObj, &rNode ) + {} + + SwOLELink( SwOLENode& rNode ) + : SwBaseLink( 0, 0, &rNode ) + {} +}; + + +// Inline Metoden aus Node.hxx - erst hier ist der TxtNode bekannt !! +inline SwOLENode *SwNode::GetOLENode() +{ + return ND_OLENODE == nNodeType ? (SwOLENode*)this : 0; +} +inline const SwOLENode *SwNode::GetOLENode() const +{ + return ND_OLENODE == nNodeType ? (const SwOLENode*)this : 0; +} + +#ifndef _FESHVIEW_ONLY_INLINE_NEEDED +inline SwOLELink* SwOLEObj::GetLink() const { return (SwOLELink*)&refLink; } +inline void SwOLEObj::SetLink( SwOLELink* pLink ) { refLink = pLink; } +#endif + +#endif // _NDOLE_HXX + diff --git a/sw/inc/ndtxt.hxx b/sw/inc/ndtxt.hxx new file mode 100644 index 000000000000..19794a05e5d2 --- /dev/null +++ b/sw/inc/ndtxt.hxx @@ -0,0 +1,377 @@ +/************************************************************************* + * + * $RCSfile: ndtxt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NDTXT_HXX +#define _NDTXT_HXX + +#ifndef _NODE_HXX +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _NDHINTS_HXX +#include +#endif +#ifndef _ERRHDL_HXX +#include +#endif + +class SwNumRules; +class SwTxtFmtColl; +class SwCntntFrm; +class SwTxtFld; // Fuer GetTxtFld() +class SwAttrSet; + +struct SwSpellArgs; // fuer Spell() +class SwInterHyphInfo; // Hyphenate(), splargs.hxx +class SwWrongList; // fuer OnlineSpelling +class SwNodeNum; +class OutputDevice; + +// Konstanten fuer das Text-Insert: +#define INS_DEFAULT 0x0000 // keine Extras +#define INS_EMPTYEXPAND 0x0001 // leere Hints beim Einfuegen aufspannen +#define INS_NOHINTEXPAND 0x0002 // Hints an der InsPos nicht aufspannen + + +// -------------------- +// SwTxtNode +// -------------------- +class SwTxtNode: public SwCntntNode +{ + // fuer das Erzeugen des ersten TextNode + friend class SwDoc; // CTOR und AppendTxtNode() + friend class SwNodes; + friend class SwTxtFrm; + friend void SwpHints::Insert( SwTxtAttr*, SwTxtNode&, USHORT ); + + //Kann 0 sein, nur dann nicht 0 wenn harte Attribute drin stehen. + //Also niemals direkt zugreifen! + SwpHints *pSwpHints; + SwWrongList *pWrong; // Rechtschreibfehler nach Online-Spelling + SwNodeNum *pNdNum; // Numerierung fuer diesen Absatz + SwNodeNum *pNdOutl; // Outline fuer diesen Absatz + XubString aText; + + SwTxtNode( const SwNodeIndex &rWhere, SwTxtFmtColl *pTxtColl, + SwAttrSet* pAutoAttr = 0 ); + + // Kopiert die Attribute an nStart nach pDest. + void CopyAttr( SwTxtNode *pDest, const xub_StrLen nStart, const xub_StrLen nOldPos); + + SwTxtNode* _MakeNewTxtNode( const SwNodeIndex&, BOOL bNext = TRUE, + BOOL bChgFollow = TRUE ); + + void _Cut( SwTxtNode *pDest, const SwIndex &rDestStart, + const SwIndex &rStart, xub_StrLen nLen, BOOL bUpdate = TRUE ); + + SwTxtAttr* MakeTxtAttr( const SfxPoolItem& rNew, xub_StrLen nStt, xub_StrLen nEnd, + BOOL bPool = TRUE ); + + // Verlagere alles umfassende harte Attribute in den AttrSet des Absatzes + void MoveTxtAttr_To_AttrSet(); // wird von SplitNode gerufen. + + // lege den spz. AttrSet an + virtual void NewAttrSet( SwAttrPool& ); + + void Replace0xFF( XubString& rTxt, xub_StrLen& rTxtStt, + xub_StrLen nEndPos, BOOL bExpandFlds ) const; + +public: + const String& GetTxt() const { return aText; } + + // Zugriff auf SwpHints + inline SwpHints &GetSwpHints(); + inline const SwpHints &GetSwpHints() const; + inline SwpHints *GetpSwpHints() { return pSwpHints; } + inline const SwpHints *GetpSwpHints() const { return pSwpHints; } + void SetWrong( SwWrongList *pNew ); + inline SwWrongList *GetWrong() { return pWrong; } + inline const SwWrongList *GetWrong() const { return pWrong; } + inline BOOL HasHints() const { return pSwpHints ? TRUE : FALSE; } + inline SwpHints &GetOrCreateSwpHints(); + + virtual ~SwTxtNode(); + + virtual xub_StrLen Len() const; + + // steht in itratr + void GetMinMaxSize( ULONG nIndex, ULONG& rMin, ULONG &rMax, ULONG &rAbs, + OutputDevice* pOut = 0 ) const; + + /* + * Einfuegen anderer Datentypen durch Erzeugen eines + * temporaeren Strings. + */ + SwTxtNode& Insert( xub_Unicode c, const SwIndex &rIdx ); + SwTxtNode& Insert( const XubString &rStr, const SwIndex &rIdx, + const USHORT nMode = INS_DEFAULT ); + + SwTxtNode& Erase( const SwIndex &rIdx, xub_StrLen nCount = STRING_LEN, + const USHORT nMode = INS_DEFAULT ); + + // Aktionen auf Attributen + // loesche alle TextAttribute die als Attribut im Set vorhanden sind + // (Set-Pointer != 0 ) oder alle deren Which-Wert mit nWhich mappen + // oder wenn Which = 0, alle. + void RstAttr( const SwIndex &rIdx, xub_StrLen nLen, USHORT nWhich = 0, + const SfxItemSet* pSet = 0, BOOL bInclRefToxMark = FALSE ); + void GCAttr(); + + // loesche das Text-Attribut (muss beim Pool abgemeldet werden!) + void DestroyAttr( SwTxtAttr* pAttr ); + + // loesche alle Attribute aus dem SwpHintsArray. + void ClearSwpHintsArr( int bDelAll = TRUE, int bDelFields = TRUE ); + + // uebernehme den Pointer auf das Text-Attribut + BOOL Insert( SwTxtAttr *pAttr, USHORT nMode = 0 ); + // lege ein neues TextAttribut an und fuege es ins SwpHints-Array ein + // returne den neuen Pointer (oder 0 bei Fehlern)! + SwTxtAttr* Insert( const SfxPoolItem& rAttr, + xub_StrLen nStt, xub_StrLen nEnd, USHORT nMode = 0 ); + + // setze diese Attribute am TextNode. Wird der gesamte Bereich umspannt, + // dann setze sie nur im AutoAttrSet (SwCntntNode:: SetAttr) + BOOL SetAttr( const SfxItemSet& rSet, + xub_StrLen nStt, xub_StrLen nEnd, USHORT nMode = 0 ); + // erfrage die Attribute vom TextNode ueber den Bereich + BOOL GetAttr( SfxItemSet& rSet, xub_StrLen nStt, xub_StrLen nEnd, + BOOL bOnlyTxtAttr = FALSE, + BOOL bGetFromChrFmt = TRUE ) const; + + // uebertrage Attribute eines AttrSets ( AutoFmt ) in das SwpHintsArray + void FmtToTxtAttr( SwTxtNode* pNd ); + + // loeschen eines einzelnen Attributes (fuer SwUndoAttr) + // ( nur das Attribut loeschen, dass mit Which,Start und End oder + // mit pTxtHint identisch ist (es gibt nur ein gueltiges)) + // AUSNAHME: ToxMarks !!! + void Delete( USHORT nTxtWhich, xub_StrLen nStart, xub_StrLen nEnd = 0 ); + void Delete( SwTxtAttr * pTxtAttr, BOOL bThisOnly = FALSE ); + + // Aktionen auf Text und Attributen + void Copy(SwTxtNode *pDest, const SwIndex &rStart, USHORT nLen); + void Copy(SwTxtNode *pDest, const SwIndex &rDestStart, + const SwIndex &rStart, xub_StrLen nLen); + void Cut(SwTxtNode *pDest, const SwIndex &rStart, xub_StrLen nLen); + inline void Cut(SwTxtNode *pDest, const SwIndex &rDestStart, + const SwIndex &rStart, xub_StrLen nLen); + // ersetze im String an Position nIdx das Zeichen + void Replace( const SwIndex& rStart, xub_Unicode cCh ); + void Replace( const SwIndex& rStart, xub_StrLen nLen, const XubString& rText ); + + // virtuelle Methoden aus dem CntntNode + virtual SwCntntFrm *MakeFrm(); + virtual SwCntntNode *SplitNode( const SwPosition & ); + virtual SwCntntNode *JoinNext(); + virtual SwCntntNode *JoinPrev(); + + SwCntntNode *AppendNode( const SwPosition & ); + + // setze ggf. das DontExpand-Flag an INet bzw. Zeichenvorlagen + BOOL DontExpandFmt( const SwIndex& rIdx, BOOL bFlag = TRUE, + BOOL bFmtToTxtAttributes = TRUE ); + + // gebe das vorgegebene Attribut, welches an der TextPosition (rIdx) + // gesetzt ist zurueck. Gibt es keines, returne 0-Pointer + // gesetzt heisst: Start <= rIdx < End + SwTxtAttr *GetTxtAttr( const SwIndex& rIdx, USHORT nWhichHt, + BOOL bExpand = FALSE ) const; + + // Diese Methode liefert nur Textattribute auf der Position nIdx + // zurueck, die kein EndIdx besitzen und denselben Which besitzen. + // Ueblicherweise steht an dieser Position ein CH_TXTATR. + // Bei RES_TXTATR_END entfaellt die Pruefung auf den Which-Wert. + SwTxtAttr *GetTxtAttr( const xub_StrLen nIdx, + const USHORT nWhichHt = RES_TXTATR_END ) const; + + SwTxtFld *GetTxtFld( const SwIndex& rIdx ) + { return (SwTxtFld *)GetTxtAttr( rIdx, RES_TXTATR_FIELD ); } + + // Aktuelles Wort zurueckliefern + XubString GetCurWord(xub_StrLen); + USHORT Spell(SwSpellArgs*); + + inline SwTxtFmtColl *GetTxtColl() const; + virtual SwFmtColl *ChgFmtColl( SwFmtColl* ); + void _ChgTxtCollUpdateNum( const SwTxtFmtColl* pOld, + const SwTxtFmtColl* pNew ); + + // kopiere die Collection mit allen Autoformaten zum Dest-Node + // dieser kann auch in einem anderen Dokument stehen! + // (Methode steht im ndcopy.cxx!!) + void CopyCollFmt( SwTxtNode& rDestNd ); + + // Numerierung + const SwNodeNum* UpdateNum( const SwNodeNum& ); + const SwNumRule *GetNumRule() const; + const SwNodeNum* GetNum() const { return pNdNum; } + // OutlineNumerierung + const SwNodeNum* UpdateOutlineNum( const SwNodeNum& ); + const SwNodeNum* GetOutlineNum() const { return pNdOutl; } + void NumRuleChgd(); // Frames benachrichtigen + XubString GetNumString() const; // returnt Outline oder Num - String + long GetLeftMarginWithNum( BOOL bTxtLeft = FALSE ) const; + BOOL GetFirstLineOfsWithNum( short& rFirstOffset ) const; + + USHORT GetLang( const xub_StrLen nBegin, const xub_StrLen nLen = 0) const; + // steht in ndcopy.cxx + BOOL IsSymbol( const xub_StrLen nBegin ) const; // steht in itratr.cxx + virtual SwCntntNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + + // interaktive Trennung: wir finden den TxtFrm und rufen sein CalcHyph + BOOL Hyphenate( SwInterHyphInfo &rHyphInf ); + void DelSoftHyph( const xub_StrLen nStart, const xub_StrLen nEnd ); + + // Liefert einen String mit expandierten Feldern zurueck + // opt. die Kapitel/Nummer-String zurueck + XubString GetExpandTxt( const xub_StrLen nIdx = 0, + const xub_StrLen nLen = STRING_LEN, + const BOOL bWithNum = FALSE ) const; + BOOL GetExpandTxt( SwTxtNode& rDestNd, const SwIndex* pDestIdx = 0, + xub_StrLen nIdx = 0, xub_StrLen nLen = STRING_LEN, + BOOL bWithNum = FALSE ) const; + XubString GetRedlineTxt( xub_StrLen nIdx = 0, + xub_StrLen nLen = STRING_LEN, + BOOL bExpandFlds = FALSE, + BOOL bWithNum = FALSE ) const; + //Liefert fuer die Initalfunktion tatsaechliche Anzahl der Initialzeichen + //bei nWishLen == 0 die des ersten Wortes + USHORT GetDropLen( USHORT nWishLen) const; + + // Berechnung des Visible-Flags + inline BOOL CalcVisibleFlag() + { if(pSwpHints) return pSwpHints->CalcVisibleFlag(); return FALSE; } + // Setzen des CalcVisible-Flags + inline void SetCalcVisible(){ if(pSwpHints) pSwpHints->SetCalcVisible(); } + + // Ist der Absatz sichtbar + inline BOOL IsVisible() const + { return pSwpHints ? pSwpHints->IsVisible() : TRUE; } + + // Besitzt der Absatz Fussnoten? + inline BOOL HasFtn() const {return pSwpHints ? pSwpHints->HasFtn() : FALSE;} + + inline SwTxtAttr* MakeTmpTxtAttr( const SfxPoolItem& rNew ) + { return MakeTxtAttr( rNew, 0, 0, FALSE ); } + + TYPEINFO(); // fuer rtti + + // fuers Umhaengen der TxtFmtCollections (Outline-Nummerierung!!) + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); +// virtual BOOL GetInfo( SfxPoolItem& ) const; + + // aus SwIndexReg + virtual void Update( const SwIndex & aPos, USHORT xub_StrLen, + BOOL bNegativ = FALSE ); + + FASTBOOL IsInSymbolFont( USHORT xub_StrLen ) const; + + DECL_FIXEDMEMPOOL_NEWDEL(SwTxtNode) +}; + +//----------------------------------------------------------------------------- + +inline SwpHints &SwTxtNode::GetSwpHints() +{ + ASSERT_ID( pSwpHints, ERR_NOHINTS); + return *pSwpHints; +} +inline const SwpHints &SwTxtNode::GetSwpHints() const +{ + ASSERT_ID( pSwpHints, ERR_NOHINTS); + return *pSwpHints; +} + +inline SwpHints& SwTxtNode::GetOrCreateSwpHints() +{ + if( !pSwpHints ) + pSwpHints = new SwpHints; + return *pSwpHints; +} + +inline SwTxtFmtColl* SwTxtNode::GetTxtColl() const +{ + return (SwTxtFmtColl*)GetRegisteredIn(); +} + +// fuer den IBM-Compiler nicht inlinen wg. 42876 +#ifndef ICC +// Inline Metoden aus Node.hxx - erst hier ist der TxtNode bekannt !! +inline SwTxtNode *SwNode::GetTxtNode() +{ + return ND_TEXTNODE == nNodeType ? (SwTxtNode*)this : 0; +} +inline const SwTxtNode *SwNode::GetTxtNode() const +{ + return ND_TEXTNODE == nNodeType ? (const SwTxtNode*)this : 0; +} + +#endif +inline void SwTxtNode::Cut(SwTxtNode *pDest, const SwIndex &rDestStart, + const SwIndex &rStart, xub_StrLen nLen) +{ + _Cut( pDest, rDestStart, rStart, nLen, TRUE ); +} + + +#endif diff --git a/sw/inc/ndtyp.hxx b/sw/inc/ndtyp.hxx new file mode 100644 index 000000000000..5133cad17caf --- /dev/null +++ b/sw/inc/ndtyp.hxx @@ -0,0 +1,105 @@ +/************************************************************************* + * + * $RCSfile: ndtyp.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _NDTYP_HXX +#define _NDTYP_HXX + +#ifndef _SOLAR_H +#include +#endif + +// Ids fuer die verschiedenden Nodes; in der Basisklasse steht der Member, +// der angibt, um was fuer einen es sich handelt +const BYTE ND_ENDNODE = 0x01; +const BYTE ND_STARTNODE = 0x02; +const BYTE ND_TABLENODE = 0x06; +const BYTE ND_TEXTNODE = 0x08; +const BYTE ND_GRFNODE = 0x10; +const BYTE ND_OLENODE = 0x20; + +const BYTE ND_CONTENTNODE = 0x38; // ContentNode (eines von den 3 Bits) +const BYTE ND_NOTXTNODE = 0x30; // NoTxtNode (eines von den 2 Bits) + +const BYTE ND_SECTIONNODE = 0x42; +// nur fuer internen Gebrauch!! +const BYTE ND_SECTIONDUMMY = 0x40; //(ND_SECTIONNODE & ~ND_STARTNODE); + +// spezielle Types der StartNodes, die keine Ableitungen sind, aber +// "Bereiche" zusammenhalten. +enum SwStartNodeType +{ + SwNormalStartNode = 0, + SwTableBoxStartNode, + SwFlyStartNode, + SwFootnoteStartNode, + SwHeaderStartNode, + SwFooterStartNode +}; + +// is the node the first and/or last node of a section? +// This information is used for the export filters. Our layout never have a +// distance before or after if the node is the first or last in a section. +const BYTE ND_HAS_PREV_LAYNODE = 0x01; +const BYTE ND_HAS_NEXT_LAYNODE = 0x02; + + + +#endif diff --git a/sw/inc/newhdl.hxx b/sw/inc/newhdl.hxx new file mode 100644 index 000000000000..ac0ecdf4c7d4 --- /dev/null +++ b/sw/inc/newhdl.hxx @@ -0,0 +1,108 @@ +/************************************************************************* + * + * $RCSfile: newhdl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NEWHDL_HXX +#define _NEWHDL_HXX + +#ifndef _LINK_HXX //autogen +#include +#endif + +#include "errhdl.hxx" // hier kommt auch swtypes rein, was ich brauche + +// ---------------------------------------------------------------------------- + +extern void SW_NEW_HDL(); + +class SwNewHdl +{ + friend void SW_NEW_HDL(); +private: + char* pWarnMem; + char* pExceptMem; + Link aWarnLnk; + Link aErrLnk; +public: + void SetWarnLnk( const Link &rLink ); + void SetErrLnk( const Link &rLink ); + + BOOL TryWarnMem(); + + BOOL Flush_WarnMem(); + BOOL Flush_ExceptMem(); + + SwNewHdl(); + ~SwNewHdl(); +}; + +/****************************************************************************** + * INLINE + ******************************************************************************/ +inline void SwNewHdl::SetWarnLnk( const Link &rLink ) +{ + aWarnLnk = rLink; +} + +inline void SwNewHdl::SetErrLnk( const Link &rLink ) +{ + aErrLnk = rLink; +} + +#endif diff --git a/sw/inc/node.hxx b/sw/inc/node.hxx new file mode 100644 index 000000000000..a9eb6581a8c7 --- /dev/null +++ b/sw/inc/node.hxx @@ -0,0 +1,726 @@ +/************************************************************************* + * + * $RCSfile: node.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _NODE_HXX +#define _NODE_HXX + + +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif +#ifndef _GEN_HXX //autogen +#include +#endif + +#ifndef _NDARR_HXX +#include +#endif +#ifndef _NDTYP_HXX +#include +#endif +#ifndef _INDEX_HXX +#include +#endif +#ifndef _FMTCOL_HXX +#include +#endif + +// --------------------- +// forward Deklarationen +// --------------------- + +class SvUShorts; +class SwCntntFrm; +class SwCntntNode; +class SwDoc; +class SwEndNode; +class SwFrm; +class SwFrmFmt; +class SwGrfNode; +class SwNoTxtNode; +class SwNodeIndex; +class SwNodeRange; +class SwOLENode; +class SwRect; +class SwSection; +class SwSectionFmt; +class SwSectionNode; +class SwStartNode; +class SwTabFrm; +class SwTable; +class SwTableNode; +class SwTableBox; +class SwTxtNode; +class SwPageDesc; +class ViewShell; +struct SwPosition; + +// -------------------- +// class SwNode +// -------------------- +class SwNode : private /* public*/ BigPtrEntry +{ + friend class SwNodes; + + BYTE nNodeType; + BOOL bWrongDirty : 1; // Ist das Wrong-Feld auf invalid? (nur TxtNodes) + BOOL bACmplWrdDirty : 1; // die ACompl-Liste muss angepasst werden (erstmal nur TxtNodes) + + // JP 28.03.96 + // fuer Textnodes: Stufungslevel der Autoformatierung. Ist erstmal hier + // gelandet, weil noch Bits frei sind + BYTE nAFmtNumLvl : 3; + BYTE nSetNumLSpace : 1; // fuer Numerierung: TRUE Einzug setzen + +protected: + SwStartNode* pStartOfSection; + + SwNode( const SwNodeIndex &rWhere, const BYTE nNodeId ); + + // fuer den initialen StartNode + SwNode( SwNodes& rNodes, ULONG nPos, const BYTE nNodeId ); + +public: + virtual ~SwNode(); + + USHORT GetSectionLevel() const; + inline ULONG StartOfSectionIndex() const; + inline const SwStartNode* StartOfSectionNode() const; + inline SwStartNode* StartOfSectionNode(); + inline ULONG EndOfSectionIndex() const; + inline const SwEndNode* EndOfSectionNode() const; + inline SwEndNode* EndOfSectionNode(); + + inline const BOOL IsWrongDirty() const { return bWrongDirty; } + inline void SetWrongDirty( BOOL bNew ) { bWrongDirty = bNew; } + + inline const BOOL IsAutoCompleteWordDirty() const { return bACmplWrdDirty; } + inline void SetAutoCompleteWordDirty( BOOL bNew ) { bACmplWrdDirty = bNew; } + + inline const BYTE GetAutoFmtLvl() const { return nAFmtNumLvl; } + inline void SetAutoFmtLvl( BYTE nVal ) { nAFmtNumLvl = nVal; } + + inline const BOOL IsSetNumLSpace() const { return 0 != nSetNumLSpace; } + inline void SetNumLSpace( BOOL bFlag ) { nSetNumLSpace = bFlag ? 1 : 0; } + + BYTE GetNodeType() const { return nNodeType; } + + inline SwStartNode *GetStartNode(); + inline const SwStartNode *GetStartNode() const; + inline SwCntntNode *GetCntntNode(); + inline const SwCntntNode *GetCntntNode() const; + inline SwEndNode *GetEndNode(); + inline const SwEndNode *GetEndNode() const; +#ifndef ICC + inline +#endif + SwTxtNode *GetTxtNode(); + +#ifndef ICC + inline +#endif + const SwTxtNode *GetTxtNode() const; +#ifndef COMPACT + inline SwOLENode *GetOLENode(); + inline const SwOLENode *GetOLENode() const; + inline SwNoTxtNode *GetNoTxtNode(); + inline const SwNoTxtNode *GetNoTxtNode() const; + inline SwGrfNode *GetGrfNode(); + inline const SwGrfNode *GetGrfNode() const; +#endif + inline SwTableNode *GetTableNode(); + inline const SwTableNode *GetTableNode() const; + inline SwSectionNode *GetSectionNode(); + inline const SwSectionNode *GetSectionNode() const; + + inline BOOL IsStartNode() const; + inline BOOL IsCntntNode() const; + inline BOOL IsEndNode() const; + inline BOOL IsTxtNode() const; + inline BOOL IsTableNode() const; + inline BOOL IsSectionNode() const; +#ifndef COMPACT + inline BOOL IsOLENode() const; + inline BOOL IsNoTxtNode() const; + inline BOOL IsGrfNode() const; +#endif + + // suche den TabellenNode, in dem dieser steht. Wenn in keiner + // Tabelle wird 0 returnt. + SwTableNode *FindTableNode(); + inline const SwTableNode *FindTableNode() const; + + // suche den SectionNode, in dem dieser steht. Wenn es in keiner + // Section steht wird 0 returnt. + SwSectionNode *FindSectionNode(); + inline const SwSectionNode *FindSectionNode() const; + + const SwStartNode *FindStartNode() const { return pStartOfSection; } + SwStartNode *FindStartNode() { return pStartOfSection; } + + SwStartNode* FindSttNodeByType( SwStartNodeType eTyp ); + inline const SwStartNode* FindSttNodeByType( SwStartNodeType eTyp ) const; + + const SwStartNode* FindTableBoxStartNode() const + { return FindSttNodeByType( SwTableBoxStartNode ); } + const SwStartNode* FindFlyStartNode() const + { return FindSttNodeByType( SwFlyStartNode ); } + const SwStartNode* FindFootnoteStartNode() const + { return FindSttNodeByType( SwFootnoteStartNode ); } + const SwStartNode* FindHeaderStartNode() const + { return FindSttNodeByType( SwHeaderStartNode ); } + const SwStartNode* FindFooterStartNode() const + { return FindSttNodeByType( SwFooterStartNode ); } + + // in welchem Nodes-Array/Doc steht der Node ? + inline SwNodes& GetNodes(); + inline const SwNodes& GetNodes() const; + inline SwDoc* GetDoc(); + inline const SwDoc* GetDoc() const; + + // liegt der Node im Sichtbarenbereich der Shell ? + BOOL IsVisible( ViewShell* pSh = 0 ) const; + // befindet sich der Node in einem geschuetzten Bereich? + BOOL IsInProtectSect() const; + // befindet sich der Node in irgendetwas geschuetzten ? + // (Bereich/Rahmen/Tabellenzellen/... incl. des Ankers bei + // Rahmen/Fussnoten/..) + BOOL IsProtect() const; + // suche den PageDesc, mit dem dieser Node formatiert ist. Wenn das + // Layout vorhanden ist wird ueber das gesucht, ansonsten gibt es nur + // die harte Tour ueber die Nodes nach vorne suchen!! + const SwPageDesc* FindPageDesc( BOOL bCalcLay ) const; + + // falls der Node in einem Fly steht, dann wird das entsprechende Format + // returnt + SwFrmFmt* GetFlyFmt() const; + + // liefert das Format, an dem die LayoutFrames des StartNodes registriert sind, + // wird von SwSectionNode::MakeFrms benutzt + const SwFrmFmt* GetFrmFmt() const; + + // falls der Node in einer Tabelle steht, dann wird die entsprechende + // TabellenBox returnt + SwTableBox* GetTblBox() const; + + inline ULONG GetIndex() const { return GetPos(); } + + const SwTxtNode* FindOutlineNodeOfLevel( BYTE nLvl ) const; + + BYTE HasPrevNextLayNode() const; + BOOL HasPrevLayNode() const + { return 0 != (ND_HAS_PREV_LAYNODE & HasPrevNextLayNode()); } + BOOL HasNextLayNode() const + { return 0 != (ND_HAS_NEXT_LAYNODE & HasPrevNextLayNode()); } + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwNode( const SwNode & rNodes ); +}; + +// -------------------- +// class SwStartNode +// -------------------- +class SwStartNode: public SwNode +{ + friend class SwNode; + friend class SwNodes; + friend class SwEndNode; // um theEndOfSection zu setzen !! + + SwEndNode* pEndOfSection; + SwStartNodeType eSttNdTyp; + + // fuer den initialen StartNode + SwStartNode( SwNodes& rNodes, ULONG nPos ); + +protected: + SwStartNode( const SwNodeIndex &rWhere, + const BYTE nNodeType = ND_STARTNODE, + SwStartNodeType = SwNormalStartNode ); +public: + DECL_FIXEDMEMPOOL_NEWDEL(SwStartNode) + + SwStartNodeType GetStartNodeType() const { return eSttNdTyp; } + + // an alle ContentNodes der Section das ChkCondColl rufen + void CheckSectionCondColl() const; + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwStartNode( const SwStartNode & rNode ); +}; + + +// -------------------- +// class SwEndNode +// -------------------- +class SwEndNode : public SwNode +{ + friend class SwNodes; + friend class SwTableNode; // um seinen EndNode anlegen zukoennen + friend class SwSectionNode; // um seinen EndNode anlegen zukoennen + + // fuer den initialen StartNode + SwEndNode( SwNodes& rNodes, ULONG nPos, SwStartNode& rSttNd ); + +protected: + SwEndNode( const SwNodeIndex &rWhere, SwStartNode& rSttNd ); + + DECL_FIXEDMEMPOOL_NEWDEL(SwEndNode) + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwEndNode( const SwEndNode & rNode ); +}; + + +// -------------------- +// SwCntntNode +// -------------------- +class SwCntntNode: public SwModify, public SwNode, public SwIndexReg +{ + // Der Reader darf NewAttrSet() aufrufen! + friend class SwSwgReader; + friend class Sw3IoImp; + +//FEATURE::CONDCOLL + SwDepend* pCondColl; +//FEATURE::CONDCOLL + +protected: + SwCntntNode( const SwNodeIndex &rWhere, const BYTE nNodeType, + SwFmtColl *pFmtColl ); + virtual ~SwCntntNode(); + + // Attribut-Set fuer alle AUTO-Attribute eines CntntNodes + // ( z.B: TxtNode oder NoTxtNode + SwAttrSet *pAttrSet; + // lasse von den entsprechenden Nodes die spz. AttrSets anlegen + virtual void NewAttrSet( SwAttrPool& ) = 0; + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + virtual SwCntntFrm *MakeFrm() = 0; + virtual SwCntntNode *SplitNode(const SwPosition & ) = 0; + virtual SwCntntNode *JoinNext(); + virtual SwCntntNode *JoinPrev(); + // koennen 2 Nodes zusammengefasst werden ? + // in pIdx kann die 2. Position returnt werden. + int CanJoinNext( SwNodeIndex* pIdx =0 ) const; + int CanJoinPrev( SwNodeIndex* pIdx =0 ) const; + + void MakeStartIndex( SwIndex * pIdx ) { pIdx->Assign( this, 0 ); } + void MakeEndIndex( SwIndex * pIdx ) { pIdx->Assign( this, Len() ); } + + BOOL GoNext(SwIndex *) const; + BOOL GoPrevious(SwIndex *) const; + + SwCntntFrm *GetFrm( const Point* pDocPos = 0, + const SwPosition *pPos = 0, + const BOOL bCalcFrm = TRUE ) const; + // Gibt die tatsaechlcheGroesse des Frames zurueck bzw. ein leeres + // Rechteck, wenn kein Layout existiert. + // Wird fuer die Export Filter benoetigt. + SwRect FindLayoutRect( const BOOL bPrtArea = FALSE, + const Point* pPoint = 0, + const BOOL bCalcFrm = FALSE ) const; + SwRect FindPageFrmRect( const BOOL bPrtArea = FALSE, + const Point* pPoint = 0, + const BOOL bCalcFrm = FALSE ) const; + /* + * Methode erzeugt fuer den angegebenen Node alle Ansichten vom + * Dokument. Die erzeugten Contentframes werden in das entsprechende + * Layout gehaengt. + */ + void MakeFrms( SwCntntNode& rNode ); + /* + * Methode loescht fuer den Node alle Ansichten vom + * Dokument. Die Contentframes werden aus dem entsprechenden + * Layout ausgehaengt. + */ + void DelFrms(); + + /* + * liefert die Anzahl der Elemente des Inhalts des Nodes; + * Default ist 1, Unterschiede gibt es beim TextNode und beim + * Formelnode. + */ + virtual xub_StrLen Len() const; + + virtual SwCntntNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const = 0; + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + // SS fuer die PoolItems: (Harte-(Fmt)Attrbutierung) + + // Ist bInParent FALSE, wird nur in diesem Node nach dem Attribut gesucht. + const SfxPoolItem& GetAttr( USHORT nWhich, BOOL bInParent=TRUE ) const; + BOOL GetAttr( SfxItemSet& rSet, BOOL bInParent=TRUE ) const; + BOOL SetAttr( const SfxPoolItem& ); + BOOL SetAttr( const SfxItemSet& rSet ); + BOOL ResetAttr( USHORT nWhich1, USHORT nWhich2 = 0 ); + BOOL ResetAttr( const SvUShorts& rWhichArr ); + USHORT ResetAllAttr(); + // liefert das Attribut, das nicht ueber die bedingte Vorlage kommt! + const SfxPoolItem* GetNoCondAttr( USHORT nWhich, BOOL bInParents ) const; + + // hat der Node schon eigene Auto-Attribute ? + // Zugriff auf SwAttrSet + inline SwAttrSet &GetSwAttrSet(); + inline const SwAttrSet &GetSwAttrSet() const; + inline SwAttrSet *GetpSwAttrSet() { return pAttrSet; } + inline const SwAttrSet *GetpSwAttrSet() const { return pAttrSet; } + inline BOOL HasSwAttrSet() const { return pAttrSet ? TRUE : FALSE; } + + virtual SwFmtColl* ChgFmtColl( SwFmtColl* ); + SwFmtColl* GetFmtColl() const { return (SwFmtColl*)GetRegisteredIn(); } + +//FEATURE::CONDCOLL + inline SwFmtColl& GetAnyFmtColl() const; + void SetCondFmtColl( SwFmtColl* ); + inline SwFmtColl* GetCondFmtColl() const; + + BOOL IsAnyCondition( SwCollCondition& rTmp ) const; + void ChkCondColl(); +//FEATURE::CONDCOLL + + // invalidiert die am Node gesetzte NumRule. Diese wird + // spaetestend in EndAction einer Shell geupdatet + BOOL InvalidateNumRule(); + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwCntntNode( const SwCntntNode & rNode ); +}; + + + +//--------- +// SwTableNode +//--------- +class SwTableNode : public SwStartNode +{ + friend class SwNodes; + SwTable* pTable; +protected: + virtual ~SwTableNode(); + +public: + SwTableNode( const SwNodeIndex & ); + + const SwTable& GetTable() const { return *pTable; } + SwTable& GetTable() { return *pTable; } + SwTabFrm *MakeFrm(); + + //Legt die Frms fuer den TableNode (also die TabFrms) an. + void MakeFrms( SwNodeIndex* pIdxBehind ); + + //Methode loescht fuer den Node alle Ansichten vom + //Dokument. Die Contentframes werden aus dem entsprechenden + //Layout ausgehaengt. + void DelFrms(); + + //Methode erzeugt fuer den vorhergehenden Node alle Ansichten vom + //Dokument. Die erzeugten Contentframes werden in das entsprechende + //Layout gehaengt. + void MakeFrms( const SwNodeIndex & rIdx ); + + SwTableNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + void SetNewTable( SwTable* , BOOL bNewFrames=TRUE ); + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwTableNode( const SwTableNode & rNode ); +}; + + +//--------- +// SwSectionNode +//--------- +class SwSectionNode : public SwStartNode +{ + friend class SwNodes; + SwSection* pSection; +protected: + virtual ~SwSectionNode(); + +public: + SwSectionNode( const SwNodeIndex&, SwSectionFmt& rFmt ); + + const SwSection& GetSection() const { return *pSection; } + SwSection& GetSection() { return *pSection; } + + // setze ein neues SectionObject. Erstmal nur gedacht fuer die + // neuen VerzeichnisSections. Der geht ueber in den Besitz des Nodes! + void SetNewSection( SwSection* pNewSection ); + + SwFrm *MakeFrm(); + + //Legt die Frms fuer den SectionNode (also die SectionFrms) an. + //Im Defaultfall wird bis die Frames bis zum Ende des Bereichs angelegt, + //uebergibt man einen weiteren NodeIndex pEnd, so wird bis zu diesem + //ein MakeFrms gerufen, genutzt wird dies von TableToText + void MakeFrms( SwNodeIndex* pIdxBehind, SwNodeIndex* pEnd = NULL ); + + //Methode loescht fuer den Node alle Ansichten vom + //Dokument. Die Contentframes werden aus dem entsprechenden + //Layout ausgehaengt. + void DelFrms(); + + //Methode erzeugt fuer den vorhergehenden Node alle Ansichten vom + //Dokument. Die erzeugten Contentframes werden in das entsprechende + //Layout gehaengt. + void MakeFrms( const SwNodeIndex & rIdx ); + + SwSectionNode* MakeCopy( SwDoc*, const SwNodeIndex& ) const; + + // setze den Verweis im Format der Section auf sich selbst + void NodesArrChgd(); + + // ueberprueft bei _nicht_ versteckten Bereichen, ob es Inhalt gibt, der + // _nicht_ in einem versteckten (Unter-)Bereich liegt + BOOL IsCntntHidden() const; + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwSectionNode( const SwSection& rNode ); +}; + + + +// ---------------------- einige Inline Methoden ---------------------- +inline SwEndNode *SwNode::GetEndNode() +{ + return ND_ENDNODE == nNodeType ? (SwEndNode*)this : 0; +} +inline const SwEndNode *SwNode::GetEndNode() const +{ + return ND_ENDNODE == nNodeType ? (const SwEndNode*)this : 0; +} +inline SwStartNode *SwNode::GetStartNode() +{ + return ND_STARTNODE & nNodeType ? (SwStartNode*)this : 0; +} +inline const SwStartNode *SwNode::GetStartNode() const +{ + return ND_STARTNODE & nNodeType ? (const SwStartNode*)this : 0; +} +inline SwTableNode *SwNode::GetTableNode() +{ + return ND_TABLENODE == nNodeType ? (SwTableNode*)this : 0; +} +inline const SwTableNode *SwNode::GetTableNode() const +{ + return ND_TABLENODE == nNodeType ? (const SwTableNode*)this : 0; +} +inline SwSectionNode *SwNode::GetSectionNode() +{ + return ND_SECTIONNODE == nNodeType ? (SwSectionNode*)this : 0; +} +inline const SwSectionNode *SwNode::GetSectionNode() const +{ + return ND_SECTIONNODE == nNodeType ? (const SwSectionNode*)this : 0; +} +inline SwCntntNode *SwNode::GetCntntNode() +{ + return ND_CONTENTNODE & nNodeType ? (SwCntntNode*)this : 0; +} +inline const SwCntntNode *SwNode::GetCntntNode() const +{ + return ND_CONTENTNODE & nNodeType ? (const SwCntntNode*)this : 0; +} + + +inline BOOL SwNode::IsStartNode() const +{ + return ND_STARTNODE & nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsCntntNode() const +{ + return ND_CONTENTNODE & nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsEndNode() const +{ + return ND_ENDNODE == nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsTxtNode() const +{ + return ND_TEXTNODE == nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsTableNode() const +{ + return ND_TABLENODE == nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsSectionNode() const +{ + return ND_SECTIONNODE == nNodeType ? TRUE : FALSE; +} +#ifndef COMPACT +inline BOOL SwNode::IsNoTxtNode() const +{ + return ND_NOTXTNODE & nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsOLENode() const +{ + return ND_OLENODE == nNodeType ? TRUE : FALSE; +} +inline BOOL SwNode::IsGrfNode() const +{ + return ND_GRFNODE == nNodeType ? TRUE : FALSE; +} +#endif + +inline const SwStartNode* SwNode::FindSttNodeByType( SwStartNodeType eTyp ) const +{ + return ((SwNode*)this)->FindSttNodeByType( eTyp ); +} +inline const SwTableNode* SwNode::FindTableNode() const +{ + return ((SwNode*)this)->FindTableNode(); +} +inline const SwSectionNode* SwNode::FindSectionNode() const +{ + return ((SwNode*)this)->FindSectionNode(); +} +inline ULONG SwNode::StartOfSectionIndex() const +{ + return pStartOfSection->GetIndex(); +} +inline const SwStartNode* SwNode::StartOfSectionNode() const +{ + return pStartOfSection; +} +inline SwStartNode* SwNode::StartOfSectionNode() +{ + return pStartOfSection; +} +inline ULONG SwNode::EndOfSectionIndex() const +{ + const SwStartNode* pStNd = IsStartNode() ? (SwStartNode*)this : pStartOfSection; + return pStNd->pEndOfSection->GetIndex(); +} +inline const SwEndNode* SwNode::EndOfSectionNode() const +{ + const SwStartNode* pStNd = IsStartNode() ? (SwStartNode*)this : pStartOfSection; + return pStNd->pEndOfSection; +} +inline SwEndNode* SwNode::EndOfSectionNode() +{ + SwStartNode* pStNd = IsStartNode() ? (SwStartNode*)this : pStartOfSection; + return pStNd->pEndOfSection; +} + +inline SwNodes& SwNode::GetNodes() +{ + return (SwNodes&)GetArray(); +} +inline const SwNodes& SwNode::GetNodes() const +{ + return (SwNodes&)GetArray(); +} + +inline SwDoc* SwNode::GetDoc() +{ + return GetNodes().GetDoc(); +} +inline const SwDoc* SwNode::GetDoc() const +{ + return GetNodes().GetDoc(); +} + +inline SwFmtColl* SwCntntNode::GetCondFmtColl() const +{ + return pCondColl ? (SwFmtColl*)pCondColl->GetRegisteredIn() : 0; +} + + +inline SwFmtColl& SwCntntNode::GetAnyFmtColl() const +{ + return pCondColl && pCondColl->GetRegisteredIn() + ? *(SwFmtColl*)pCondColl->GetRegisteredIn() + : *(SwFmtColl*)GetRegisteredIn(); +} + +inline SwAttrSet& SwCntntNode::GetSwAttrSet() +{ + return pAttrSet ? ( (SwAttrSet &) ( *pAttrSet ) ) + : ( (SwAttrSet &) ( GetAnyFmtColl().GetAttrSet() ) ); +} +inline const SwAttrSet& SwCntntNode::GetSwAttrSet() const +{ + return pAttrSet ? ( (SwAttrSet &) ( *pAttrSet ) ) + : ( (SwAttrSet &) ( GetAnyFmtColl().GetAttrSet() ) ); +} +//FEATURE::CONDCOLL + +inline const SfxPoolItem& SwCntntNode::GetAttr( USHORT nWhich, + BOOL bInParents ) const +{ + return GetSwAttrSet().Get( nWhich, bInParents ); +} + + + + +#endif diff --git a/sw/inc/numrule.hxx b/sw/inc/numrule.hxx new file mode 100644 index 000000000000..cd0ba88d165c --- /dev/null +++ b/sw/inc/numrule.hxx @@ -0,0 +1,422 @@ +/************************************************************************* + * + * $RCSfile: numrule.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _NUMRULE_HXX +#define _NUMRULE_HXX + + +#ifndef _LINK_HXX //autogen +#include +#endif +#ifndef _SV_GEN_HXX //autogen wg. Size +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SVX_SVXENUM_HXX //autogen +#include +#endif + +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _CALBCK_HXX +#include +#endif +#ifndef _ERRHDL_HXX +#include // Fuer die inline-ASSERTs +#endif +#ifndef _SWERROR_H +#include // Fuer die inline-ASSERTs +#endif + + +class Font; +class SvxBrushItem; +class SvxNumberFormat; +class SvxNumRule; +class SwCharFmt; +class SwDoc; +class SwFmtVertOrient; +class SwNodeNum; +class SwTxtNode; + +extern char __FAR_DATA sOutlineStr[]; // SWG-Filter + +const sal_Unicode cBulletChar = 0xF000 + 149; // Charakter fuer Aufzaehlungen + +inline BYTE GetRealLevel( const BYTE nLvl ) +{ + return nLvl & (NO_NUMLEVEL - 1); +} + +class SwNumType +{ + void GetRomanStr( ULONG nNo, String& rStr ) const; + void GetCharStr( ULONG nNo, String& rStr ) const; + void GetCharStrN( ULONG nNo, String& rStr ) const; +public: + /* Reihenfolge der Elemente des enums ist fuer die + * UI-Seite interesssant -- bitte nicht ohne trifftigen + * Grund und Nachricht an die UI-Seite aendern. + */ + SvxExtNumType eType; + + SwNumType() { eType = SVX_NUM_ARABIC; } + SwNumType( const SwNumType& rType ) : eType( rType.eType ) {} + + String GetNumStr( ULONG nNo ) const; +}; + + +class SwNumFmt : public SwClient, public SwNumType +{ + String aPrefix; // vorangestellter Text + String aPostfix; // nachfolgender Text + + // bei eType == USER_BITMAP ist folgendes ganz interessant + Size aGrfSize; + SvxBrushItem* pGrfBrush; + SwFmtVertOrient* pVertOrient; + // bei eType == CHAR_SPECIAL ist folgendes ganz interessant + Font* pBulletFont; // Pointer auf den BulletFont + + SvxAdjust eNumAdjust; // Ausrichtung (Links/rechts/zent.) + short nFirstLineOffset; // Abstand zwischen Linken Rand und Text + short nLSpace; // relativer linker Rand + USHORT nAbsLSpace; // absoluter linker Rand + USHORT nCharTextOffset; // Abstand zwischen Zeichen und Text + USHORT nStart; // Startwert fuer die Nummer + + BYTE nInclUpperLevel; // wieviele Levels + sal_Unicode cBullet; // das Bullet Char + BOOL bRelLSpace : 1; // LSpace als relative Angabe (UI) + + void UpdateNumNodes( SwDoc* pDoc ); + DECL_STATIC_LINK( SwNumFmt, GraphicArrived, void * ); + +public: + SwNumFmt(); + SwNumFmt( const SwNumFmt& ); + SwNumFmt( const SvxNumberFormat&, SwDoc* pDoc); + SvxNumberFormat MakeSvxFormat() const; + virtual ~SwNumFmt(); + + SwNumFmt& operator=( const SwNumFmt& ); + BOOL operator==( const SwNumFmt& ) const; + BOOL operator!=( const SwNumFmt& r ) const { return !(*this == r); } + + SwCharFmt* GetCharFmt() const { return (SwCharFmt*)pRegisteredIn; } + void SetCharFmt( SwCharFmt* ); + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + + // ist der Font* == 0, wird der Font nicht gewechselt + void SetBulletFont(const Font*); + const Font* GetBulletFont() const { return pBulletFont; } + + sal_Unicode GetBulletChar() const { return cBullet; } + void SetBulletChar( sal_Unicode c ) { cBullet = c; } + +//------ +// ALT + BOOL IsInclUpperLevel() const { return 1 < nInclUpperLevel; } + void SetInclUpperLevel( BOOL b ) { nInclUpperLevel = b ? MAXLEVEL : 1; } +// ALT +//------ + BYTE GetUpperLevel() const { return nInclUpperLevel; } + void SetUpperLevel( BYTE nValue ) { nInclUpperLevel = nValue; } + + BOOL IsRelLSpace() const { return bRelLSpace; } + void SetRelLSpace( BOOL b ) { bRelLSpace = b; } + + SvxAdjust GetAdjust() const { return eNumAdjust; } + void SetAdjust( SvxAdjust eAdj ) { eNumAdjust = eAdj; } + + short GetLSpace() const { return nLSpace; } + void SetLSpace( short n ) { nLSpace = n; } + + USHORT GetAbsLSpace() const { return nAbsLSpace; } + void SetAbsLSpace( USHORT n ) { nAbsLSpace = n; } + + short GetFirstLineOffset() const { return nFirstLineOffset; } + void SetFirstLineOffset( short n ) { nFirstLineOffset = n; } + + USHORT GetCharTextOffset() const { return nCharTextOffset; } + void SetCharTextOffset( USHORT n ) { nCharTextOffset = n; } + + USHORT GetStartValue() const { return nStart; } + void SetStartValue( USHORT n ) { nStart = n; } + + const String& GetPrefix() const { return aPrefix; } + void SetPrefix( const String& rS ) { aPrefix = rS; } + + const String& GetPostfix() const { return aPostfix; } + void SetPostfix( const String& rS ) { aPostfix = rS; } + + const SvxBrushItem* GetGrfBrush() const { return pGrfBrush; } + const SwFmtVertOrient* GetGrfOrient() const { return pVertOrient; } + const Size& GetGrfSize() const { return aGrfSize; } + void SetGrfBrush( const SvxBrushItem* pGrfBr, const Size* pSz, + const SwFmtVertOrient* pVOrient ); + void SetGraphic( const String& rName ); + // Graphic ggfs. reinswappen + const Graphic* GetGraphic() const; + // kann fuer das Format ein Text erzeugt werden? + inline BOOL IsTxtFmt() const; +}; + + +enum SwNumRuleType { OUTLINE_RULE = 0, NUM_RULE = 1, RULE_END = 2 }; +class SwNumRule +{ + friend void _FinitCore(); + + static SwNumFmt* aBaseFmts [ RULE_END ][ MAXLEVEL ]; + static USHORT aDefNumIndents[ MAXLEVEL ]; + static USHORT nRefCount; + static Font* pDefBulletFont; + static char* pDefOutlineName; + + SwNumFmt* aFmts[ MAXLEVEL ]; + String sName; + SwNumRuleType eRuleType; + USHORT nPoolFmtId; // Id-fuer "automatich" erzeugte NumRules + USHORT nPoolHelpId; // HelpId fuer diese Pool-Vorlage + BYTE nPoolHlpFileId; // FilePos ans Doc auf die Vorlagen-Hilfen + BOOL bAutoRuleFlag : 1; + BOOL bInvalidRuleFlag : 1; + BOOL bContinusNum : 1; // Fortlaufende Numerierung - ohne Ebenen + BOOL bAbsSpaces : 1; // die Ebenen repraesentieren absol. Einzuege + + static void _MakeDefBulletFont(); + +public: + SwNumRule( const String& rNm, SwNumRuleType = NUM_RULE, + BOOL bAutoFlg = TRUE ); + + SwNumRule( const SwNumRule& ); + ~SwNumRule(); + + SwNumRule& operator=( const SwNumRule& ); + BOOL operator==( const SwNumRule& ) const; + BOOL operator!=( const SwNumRule& r ) const { return !(*this == r); } + + inline const SwNumFmt* GetNumFmt( USHORT i ) const; + inline const SwNumFmt& Get( USHORT i ) const; + void Set( USHORT i, const SwNumFmt* ); + void Set( USHORT i, const SwNumFmt& ); + + String MakeNumString( const SwNodeNum&, BOOL bInclStrings = TRUE, + BOOL bOnlyArabic = FALSE ) const; + + inline unsigned char GetBulletChar( const SwNodeNum& ) const; + inline const Font* GetBulletFont( const SwNodeNum& ) const; + static inline const Font& GetDefBulletFont(); + + static char* GetOutlineRuleName() { return pDefOutlineName; } + + static inline USHORT GetNumIndent( BYTE nLvl ); + static inline USHORT GetBullIndent( BYTE nLvl ); + + SwNumRuleType GetRuleType() const { return eRuleType; } + void SetRuleType( SwNumRuleType eNew ) { eRuleType = eNew; + bInvalidRuleFlag = TRUE; } + + // eine Art Copy-Constructor, damit die Num-Formate auch an den + // richtigen CharFormaten eines Dokumentes haengen !! + // (Kopiert die NumFormate und returnt sich selbst) + SwNumRule& CopyNumRule( SwDoc*, const SwNumRule& ); + + // testet ob die CharFormate aus dem angegeben Doc sind und kopiert + // die gegebenfalls + void CheckCharFmts( SwDoc* pDoc ); + + // test ob der Einzug von dieser Numerierung kommt. + BOOL IsRuleLSpace( SwTxtNode& rNd ) const; + + const String& GetName() const { return sName; } + void SetName( const String& rNm ) { sName = rNm; } + + BOOL IsAutoRule() const { return bAutoRuleFlag; } + void SetAutoRule( BOOL bFlag ) { bAutoRuleFlag = bFlag; } + + BOOL IsInvalidRule() const { return bInvalidRuleFlag; } + void SetInvalidRule( BOOL bFlag ) { bInvalidRuleFlag = bFlag; } + + BOOL IsContinusNum() const { return bContinusNum; } + void SetContinusNum( BOOL bFlag ) { bContinusNum = bFlag; } + + BOOL IsAbsSpaces() const { return bAbsSpaces; } + void SetAbsSpaces( BOOL bFlag ) { bAbsSpaces = bFlag; } + + // erfragen und setzen der Poolvorlagen-Id's + USHORT GetPoolFmtId() const { return nPoolFmtId; } + void SetPoolFmtId( USHORT nId ) { nPoolFmtId = nId; } + + // erfragen und setzen der Hilfe-Id's fuer die Document-Vorlagen + USHORT GetPoolHelpId() const { return nPoolHelpId; } + void SetPoolHelpId( USHORT nId ) { nPoolHelpId = nId; } + BYTE GetPoolHlpFileId() const { return nPoolHlpFileId; } + void SetPoolHlpFileId( BYTE nId ) { nPoolHlpFileId = nId; } + + void SetSvxRule(const SvxNumRule&, SwDoc* pDoc); + SvxNumRule MakeSvxNumRule() const; +}; + + +class SwNodeNum +{ + USHORT nLevelVal[ MAXLEVEL ]; // Nummern aller Levels + USHORT nSetValue; // vorgegeben Nummer + BYTE nMyLevel; // akt. Level + BOOL bStartNum; // Numerierung neu starten + +public: + inline SwNodeNum( BYTE nLevel = NO_NUM, USHORT nSetVal = USHRT_MAX ); + inline SwNodeNum& operator=( const SwNodeNum& rCpy ); + + BOOL operator==( const SwNodeNum& ) const; + + BYTE GetLevel() const { return nMyLevel; } + void SetLevel( BYTE nVal ) { nMyLevel = nVal; } + + BOOL IsStart() const { return bStartNum; } + void SetStart( BOOL bFlag = TRUE ) { bStartNum = bFlag; } + + USHORT GetSetValue() const { return nSetValue; } + void SetSetValue( USHORT nVal ) { nSetValue = nVal; } + + const USHORT* GetLevelVal() const { return nLevelVal; } + USHORT* GetLevelVal() { return nLevelVal; } +}; + + + + +// ------------ inline Methoden ---------------------------- + +inline BOOL SwNumFmt::IsTxtFmt() const +{ + return SVX_NUM_NUMBER_NONE != eType && + SVX_NUM_CHAR_SPECIAL != eType && + SVX_NUM_BITMAP != eType; +} + +inline const SwNumFmt& SwNumRule::Get( USHORT i ) const +{ + ASSERT_ID( i < MAXLEVEL && eRuleType < RULE_END, ERR_NUMLEVEL); + return aFmts[ i ] ? *aFmts[ i ] + : *aBaseFmts[ eRuleType ][ i ]; +} + +inline const SwNumFmt* SwNumRule::GetNumFmt( USHORT i ) const +{ + ASSERT_ID( i < MAXLEVEL && eRuleType < RULE_END, ERR_NUMLEVEL); + return aFmts[ i ]; +} + +inline const Font& SwNumRule::GetDefBulletFont() +{ + if( !pDefBulletFont ) + SwNumRule::_MakeDefBulletFont(); + return *pDefBulletFont; +} + +inline USHORT SwNumRule::GetNumIndent( BYTE nLvl ) +{ + ASSERT( MAXLEVEL > nLvl, "NumLevel is out of range" ); + return aDefNumIndents[ nLvl ]; +} +inline USHORT SwNumRule::GetBullIndent( BYTE nLvl ) +{ + ASSERT( MAXLEVEL > nLvl, "NumLevel is out of range" ); + return aDefNumIndents[ nLvl ]; +} + +inline unsigned char SwNumRule::GetBulletChar( const SwNodeNum& rNum ) const +{ + return Get( rNum.GetLevel() & ~NO_NUMLEVEL ).GetBulletChar(); +} +inline const Font* SwNumRule::GetBulletFont( const SwNodeNum& rNum ) const +{ + return Get( rNum.GetLevel() & ~NO_NUMLEVEL ).GetBulletFont(); +} + + + +SwNodeNum::SwNodeNum( BYTE nLevel, USHORT nSetVal ) + : nMyLevel( nLevel ), nSetValue( nSetVal ), bStartNum( FALSE ) +{ + memset( nLevelVal, 0, sizeof( nLevelVal ) ); +} + +inline SwNodeNum& SwNodeNum::operator=( const SwNodeNum& rCpy ) +{ + nSetValue = rCpy.nSetValue; + nMyLevel = rCpy.nMyLevel; + bStartNum = rCpy.bStartNum; + + memcpy( nLevelVal, rCpy.nLevelVal, sizeof( nLevelVal ) ); + return *this; +} + + +#endif // _NUMRULE_HXX diff --git a/sw/inc/pagedesc.hxx b/sw/inc/pagedesc.hxx new file mode 100644 index 000000000000..4684ceb4ec79 --- /dev/null +++ b/sw/inc/pagedesc.hxx @@ -0,0 +1,348 @@ +/************************************************************************* + * + * $RCSfile: pagedesc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _PAGEDESC_HXX +#define _PAGEDESC_HXX + +#ifndef _FRACT_HXX +#include +#endif + +#ifndef _TOOLS_COLOR_HXX +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SWTYPES_HXX +#include //fuer SwTwips +#endif +#ifndef _FRMFMT_HXX +#include +#endif +#ifndef _NUMRULE_HXX +#include +#endif + +class SfxPoolItem; +class SwTxtFmtColl; +class SwNode; + +//Adjustierung der Trennlinie. +enum SwFtnAdj +{ + FTNADJ_LEFT, + FTNADJ_CENTER, + FTNADJ_RIGHT +}; + +//Fussnoteninformationen +class SwPageFtnInfo +{ + SwTwips nMaxHeight; //Maximalraum auf der Seite. +// Pen aPen; //Pen fuer Trennstrich. + ULONG nLineWidth; //width of separator line + Color aLineColor; //color of the separator line + Fraction aWidth; //Prozentuale Breite des Trennstriches. + SwFtnAdj eAdj; //Ausrichtung des Trennstriches. + SwTwips nTopDist; //Abstand zwischen Body und Trennstrich. + SwTwips nBottomDist; //Abstand zwischen Trennstrich und 1. Fussnote. +public: + SwTwips GetHeight() const { return nMaxHeight; } + ULONG GetLineWidth() const { return nLineWidth; } + const Color& GetLineColor() const { return aLineColor;} +// const Pen& GetPen() const { return aPen; } + const Fraction& GetWidth() const { return aWidth; } + SwFtnAdj GetAdj() const { return eAdj; } + SwTwips GetTopDist()const { return nTopDist; } + SwTwips GetBottomDist() const { return nBottomDist; } + + void SetHeight( SwTwips nNew ) { nMaxHeight = nNew; } +// void SetPen ( const Pen& rNew ) { aPen = rNew; } + void SetLineWidth(ULONG nSet ) { nLineWidth = nSet; } + void SetLineColor(const Color& rCol ) { aLineColor = rCol;} + void SetWidth( const Fraction &rNew){ aWidth = rNew; } + void SetAdj ( SwFtnAdj eNew ) { eAdj = eNew; } + void SetTopDist ( SwTwips nNew ) { nTopDist = nNew; } + void SetBottomDist( SwTwips nNew ) { nBottomDist = nNew; } + + SwPageFtnInfo(); + SwPageFtnInfo( const SwPageFtnInfo& ); + SwPageFtnInfo& operator=( const SwPageFtnInfo& ); + + BOOL operator ==( const SwPageFtnInfo& ) const; +}; + +/* + * Verwendung des UseOnPage (eUse) und der FrmFmt'e + * + * RIGHT - aMaster nur fuer rechte Seiten, linke Seiten immer leer. + * LEFT - aLeft fuer linke Seiten, rechte Seiten immer leer. + * aLeft ist eine Kopie des Master. + * ALL - aMaster fuer rechte Seiten, aLeft fuer Linke Seiten. + * aLeft ist eine Kopie des Master. + * MIRROR - aMaster fuer rechte Seiten, aLeft fuer linke Seiten. + * aLeft ist eine Kopie des Master, Raender sind gespiegelt. + * + * UI dreht auschliesslich am Master! aLeft wird beim Chg am Dokument + * enstprechend dem eUse eingestellt. + * + * Damit es die Filter etwas einfacher haben werden weitere Werte im + * eUse untergebracht: + * + * HEADERSHARE - Headerinhalt auf beiden Seiten gleich + * FOOTERSHARE - Footerinhalt auf beiden Seiten gleich + * + * Die Werte werden bei den entsprechenden Get-/Set-Methden ausmaskiert. + * Zugriff auf das volle eUse inclusive der Header-Footer information + * per ReadUseOn(), WriteUseOn() (fuer Filter und CopyCTor)! + * + * Die FrmFormate fuer Header/Footer werden anhand der Attribute fuer + * Header/Footer vom UI am Master eingestellt (Hoehe, Raender, Hintergrund...); + * Header/Footer fuer die Linke Seite werden entsprechen kopiert bzw. + * gespielt (Chg am Dokument). + * Das jew. Attribut fuer den Inhalt wird automatisch beim Chg am + * Dokument versorgt (entsprechen den SHARE-informationen werden Inhalte + * erzeugt bzw. entfernt). + * + */ + +enum UseOnPage +{ PD_NONE = 0x0000, //for internal use only. + PD_LEFT = 0x0001, + PD_RIGHT = 0x0002, + PD_ALL = 0x0003, + PD_MIRROR = 0x0007, + PD_HEADERSHARE = 0x0040, + PD_FOOTERSHARE = 0x0080, + PD_NOHEADERSHARE = 0x00BF, //for internal use only + PD_NOFOOTERSHARE = 0x007F //for internal use only +}; + +class SwPageDesc : public SwModify +{ + friend class SwDoc; + + //nicht (mehr) implementiert. + SwPageDesc& operator=( const SwPageDesc& ); + + String aDescName; + SwNumType aNumType; + SwFrmFmt aMaster; + SwFrmFmt aLeft; + SwDepend aDepend; // wg. Registerhaltigkeit + SwPageDesc *pFollow; + USHORT nRegHeight; // Zeilenabstand und Fontascent der Vorlage + USHORT nRegAscent; // fuer die Registerhaltigkeit + UseOnPage eUse; + BOOL bLandscape; + + //Fussnoteninformationen + SwPageFtnInfo aFtnInfo; + + //Wird zum Spiegeln vom Chg (Doc) gerufen. + //Kein Abgleich an anderer Stelle. + void Mirror(); + + SwPageDesc(const String&, SwFrmFmt*, SwDoc *pDc ); +public: + const String &GetName() const { return aDescName; } + void SetName( const String& rNewName ) { aDescName = rNewName; } + + BOOL GetLandscape() const { return bLandscape; } + void SetLandscape( BOOL bNew ) { bLandscape = bNew; } + + const SwNumType &GetNumType() const { return aNumType; } + void SetNumType( const SwNumType& rNew ) { aNumType = rNew; } + + const SwPageFtnInfo &GetFtnInfo() const { return aFtnInfo; } + SwPageFtnInfo &GetFtnInfo() { return aFtnInfo; } + void SetFtnInfo( const SwPageFtnInfo &rNew ) { aFtnInfo = rNew; } + + inline BOOL IsHeaderShared() const; + inline BOOL IsFooterShared() const; + inline void ChgHeaderShare( BOOL bNew ); + inline void ChgFooterShare( BOOL bNew ); + + inline void SetUseOn( UseOnPage eNew ); + inline UseOnPage GetUseOn() const; + + void WriteUseOn( UseOnPage eNew ) { eUse = eNew; } + UseOnPage ReadUseOn () const { return eUse; } + + SwFrmFmt &GetMaster() { return aMaster; } + SwFrmFmt &GetLeft() { return aLeft; } + const SwFrmFmt &GetMaster() const { return aMaster; } + const SwFrmFmt &GetLeft() const { return aLeft; } + + //Mit den folgenden Methoden besorgt sich das Layout ein Format + //um eine Seite erzeugen zu koennen + inline SwFrmFmt *GetRightFmt(); + inline const SwFrmFmt *GetRightFmt() const; + inline SwFrmFmt *GetLeftFmt(); + inline const SwFrmFmt *GetLeftFmt() const; + + USHORT GetRegHeight() const { return nRegHeight; } + USHORT GetRegAscent() const { return nRegAscent; } + void SetRegHeight( USHORT nNew ){ nRegHeight = nNew; } + void SetRegAscent( USHORT nNew ){ nRegAscent = nNew; } + + inline void SetFollow( const SwPageDesc* pNew ); + const SwPageDesc* GetFollow() const { return pFollow; } + SwPageDesc* GetFollow() { return pFollow; } + + void SetRegisterFmtColl( const SwTxtFmtColl* rFmt ); + const SwTxtFmtColl* GetRegisterFmtColl() const; + virtual void Modify( SfxPoolItem *pOldValue, SfxPoolItem *pNewValue ); + void RegisterChange(); + + // erfragen und setzen der PoolFormat-Id + USHORT GetPoolFmtId() const { return aMaster.GetPoolFmtId(); } + void SetPoolFmtId( USHORT nId ) { aMaster.SetPoolFmtId( nId ); } + USHORT GetPoolHelpId() const { return aMaster.GetPoolHelpId(); } + void SetPoolHelpId( USHORT nId ) { aMaster.SetPoolHelpId( nId ); } + BYTE GetPoolHlpFileId() const { return aMaster.GetPoolHlpFileId(); } + void SetPoolHlpFileId( BYTE nId ) { aMaster.SetPoolHlpFileId( nId ); } + // erfrage die Attribut-Beschreibung, returnt den reingereichten String + void GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric, String &rText ) const; + + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + const SwFrmFmt* GetPageFmtOfNode( const SwNode& rNd, + BOOL bCheckForThisPgDc = TRUE ) const; + BOOL IsFollowNextPageOfNode( const SwNode& rNd ) const; + + SwPageDesc( const SwPageDesc& ); + ~SwPageDesc(); +}; + +inline void SwPageDesc::SetFollow( const SwPageDesc* pNew ) +{ + pFollow = pNew ? (SwPageDesc*)pNew : this; +} + +inline BOOL SwPageDesc::IsHeaderShared() const +{ + return eUse & PD_HEADERSHARE ? TRUE : FALSE; +} +inline BOOL SwPageDesc::IsFooterShared() const +{ + return eUse & PD_FOOTERSHARE ? TRUE : FALSE; +} +inline void SwPageDesc::ChgHeaderShare( BOOL bNew ) +{ + if ( bNew ) + eUse = (UseOnPage) (eUse | PD_HEADERSHARE); + // (USHORT&)eUse |= (USHORT)PD_HEADERSHARE; + else + eUse = (UseOnPage) (eUse & PD_NOHEADERSHARE); + // (USHORT&)eUse &= (USHORT)PD_NOHEADERSHARE; +} +inline void SwPageDesc::ChgFooterShare( BOOL bNew ) +{ + if ( bNew ) + eUse = (UseOnPage) (eUse | PD_FOOTERSHARE); + // (USHORT&)eUse |= (USHORT)PD_FOOTERSHARE; + else + eUse = (UseOnPage) (eUse & PD_NOFOOTERSHARE); + // (USHORT&)eUse &= (USHORT)PD_NOFOOTERSHARE; +} +inline void SwPageDesc::SetUseOn( UseOnPage eNew ) +{ + UseOnPage eTmp = PD_NONE; + if ( eUse & PD_HEADERSHARE ) + eTmp = PD_HEADERSHARE; + // (USHORT&)eTmp |= (USHORT)PD_HEADERSHARE; + if ( eUse & PD_FOOTERSHARE ) + eTmp = (UseOnPage) (eTmp | PD_FOOTERSHARE); + // (USHORT&)eTmp |= (USHORT)PD_FOOTERSHARE; + eUse = (UseOnPage) (eTmp | eNew); + // (USHORT&)eUse = eTmp | eNew; +} +inline UseOnPage SwPageDesc::GetUseOn() const +{ + UseOnPage eRet = eUse; + eRet = (UseOnPage) (eRet & PD_NOHEADERSHARE); + // (USHORT&)eRet &= (USHORT)PD_NOHEADERSHARE; + eRet = (UseOnPage) (eRet & PD_NOFOOTERSHARE); + // (USHORT&)eRet &= (USHORT)PD_NOFOOTERSHARE; + return eRet; +} + +inline SwFrmFmt *SwPageDesc::GetRightFmt() +{ + return PD_RIGHT & eUse ? &aMaster : 0; +} +inline const SwFrmFmt *SwPageDesc::GetRightFmt() const +{ + return PD_RIGHT & eUse ? &aMaster : 0; +} +inline SwFrmFmt *SwPageDesc::GetLeftFmt() +{ + return PD_LEFT & eUse ? &aLeft : 0; +} +inline const SwFrmFmt *SwPageDesc::GetLeftFmt() const +{ + return PD_LEFT & eUse ? &aLeft : 0; +} + +#endif //_PAGEDESC_HXX diff --git a/sw/inc/pageiter.hxx b/sw/inc/pageiter.hxx new file mode 100644 index 000000000000..bc6c8a57ba29 --- /dev/null +++ b/sw/inc/pageiter.hxx @@ -0,0 +1,89 @@ +/************************************************************************* + * + * $RCSfile: pageiter.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _PAGEITER_HXX +#define _PAGEITER_HXX + +#ifndef _SOLAR_H +#include +#endif + +class SwDoc; +class SwPageFrm; +struct SwPosition; +class SwPageDesc; + +class SwPageIter { + const SwDoc &rPDoc; + const SwPageFrm *pPage; + +public: + SwPageIter( const SwDoc &rDoc, const SwPosition &rStartPos ); + + BOOL IsEnd() const { return 0 == pPage; } + BOOL NextPage(); + const SwPageDesc* GetPageDesc() const; + BOOL Seek( const SwPosition &rPos ); + BOOL GetPosition( SwPosition &rPos ) const; +}; + + +#endif + diff --git a/sw/inc/pam.hxx b/sw/inc/pam.hxx new file mode 100644 index 000000000000..c0959fb3f235 --- /dev/null +++ b/sw/inc/pam.hxx @@ -0,0 +1,269 @@ +/************************************************************************* + * + * $RCSfile: pam.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _PAM_HXX +#define _PAM_HXX + +#include // fuer MemPool +#ifndef _GEN_HXX //autogen +#include +#endif +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif + +#ifndef _CSHTYP_HXX +#include // fuer die Funktions-Definitionen +#endif +#ifndef _RING_HXX +#include // Superklasse +#endif +#ifndef _INDEX_HXX +#include // fuer SwIndex +#endif +#ifndef _NDINDEX_HXX +#include // fuer SwNodeIndex +#endif + + +class SwFmt; +class SfxPoolItem; +class SfxItemSet; +class SwDoc; +class SwNode; +class SwCntntNode; +class SearchParam; +class SearchText; +class SwNodes; +class SwPaM; + + +struct SwPosition +{ + SwNodeIndex nNode; + SwIndex nContent; + + SwPosition( const SwNode& rNode ); + SwPosition( const SwNodeIndex &rNode ); + SwPosition( const SwNodeIndex &rNode, const SwIndex &rCntnt ); + SwPosition( const SwPosition & ); + + SwPosition &operator=(const SwPosition &); + + FASTBOOL operator < (const SwPosition &) const; + FASTBOOL operator > (const SwPosition &) const; + FASTBOOL operator <=(const SwPosition &) const; + FASTBOOL operator >=(const SwPosition &) const; + FASTBOOL operator ==(const SwPosition &) const; + FASTBOOL operator !=(const SwPosition &) const; +}; + + +// das Ergebnis eines Positions Vergleiches +enum SwComparePosition { + POS_BEFORE, // Pos1 liegt vor Pos2 + POS_BEHIND, // Pos1 liegt hinter Pos2 + POS_INSIDE, // Pos1 liegt vollstaendig in Pos2 + POS_OUTSIDE, // Pos2 liegt vollstaendig in Pos1 + POS_EQUAL, // Pos1 ist genauso gross wie Pos2 + POS_OVERLAP_BEFORE, // Pos1 ueberlappt Pos2 am Anfang + POS_OVERLAP_BEHIND // Pos1 ueberlappt Pos2 am Ende +}; +SwComparePosition ComparePosition( + const SwPosition& rStt1, const SwPosition& rEnd1, + const SwPosition& rStt2, const SwPosition& rEnd2 ); + + +// SwPointAndMark / SwPaM +struct SwMoveFnCollection; +typedef SwMoveFnCollection* SwMoveFn; +extern SwMoveFn fnMoveForward, fnMoveBackward; + +typedef FASTBOOL (*SwGoInDoc)( SwPaM& rPam, SwMoveFn fnMove ); +extern SwGoInDoc fnGoDoc, fnGoSection, fnGoNode, fnGoCntnt; + +void _InitPam(); + +class SwPaM : public Ring +{ + friend class SwTxtFrm; + friend FASTBOOL GoInDoc( SwPaM&, SwMoveFn ); + friend FASTBOOL GoInNode( SwPaM&, SwMoveFn ); + friend FASTBOOL GoInCntnt( SwPaM&, SwMoveFn ); + friend FASTBOOL GoPrevPara( SwPaM&, SwPosPara ); + friend FASTBOOL GoCurrPara( SwPaM&, SwPosPara ); + friend FASTBOOL GoNextPara( SwPaM&, SwPosPara ); + friend FASTBOOL GoPrevSection( SwPaM&, SwPosSection ); + friend FASTBOOL GoCurrSection( SwPaM&, SwPosSection ); + friend FASTBOOL GoNextSection( SwPaM&, SwPosSection ); + + SwPosition aBound1; + SwPosition aBound2; + SwPosition *pPoint; + SwPosition *pMark; + + SwPaM* MakeRegion( SwMoveFn fnMove, const SwPaM * pOrigRg = 0 ); + +public: + SwPaM( const SwPosition& rPos, SwPaM* pRing = 0 ); + SwPaM( const SwPosition& rMk, const SwPosition& rPt, SwPaM* pRing = 0 ); + SwPaM( SwPaM & ); + SwPaM( const SwNodeIndex& rMk, const SwNodeIndex& rPt, + long nMkOffset = 0, long nPtOffset = 0, SwPaM* pRing = 0 ); + SwPaM( const SwNode& rMk, const SwNode& rPt, + long nMkOffset = 0, long nPtOffset = 0, SwPaM* pRing = 0 ); + SwPaM( const SwNodeIndex& rMk, xub_StrLen nMkCntnt, + const SwNodeIndex& rPt, xub_StrLen nPtCntnt, SwPaM* pRing = 0 ); + SwPaM( const SwNode& rMk, xub_StrLen nMkCntnt, + const SwNode& rPt, xub_StrLen nPtCntnt, SwPaM* pRing = 0 ); + SwPaM( const SwNode& rNd, xub_StrLen nCntnt = 0, SwPaM* pRing = 0 ); + SwPaM( const SwNodeIndex& rNd, xub_StrLen nCntnt = 0, SwPaM* pRing = 0 ); + virtual ~SwPaM(); + + // Bewegen des Cursors + FASTBOOL Move( SwMoveFn fnMove = fnMoveForward, + SwGoInDoc fnGo = fnGoCntnt ); + + // Suchen + BYTE Find( const SearchParam& rParam, SearchText& rSTxt, + SwMoveFn fnMove = fnMoveForward, + const SwPaM *pPam =0, FASTBOOL bInReadOnly = FALSE); + FASTBOOL Find( const SwFmt& rFmt, + SwMoveFn fnMove = fnMoveForward, + const SwPaM *pPam =0, FASTBOOL bInReadOnly = FALSE); + FASTBOOL Find( const SfxPoolItem& rAttr, FASTBOOL bValue = TRUE, + SwMoveFn fnMove = fnMoveForward, + const SwPaM *pPam =0, FASTBOOL bInReadOnly = FALSE ); + FASTBOOL Find( const SfxItemSet& rAttr, FASTBOOL bNoColls = FALSE, + SwMoveFn fnMove = fnMoveForward, + const SwPaM *pPam =0, FASTBOOL bInReadOnly = FALSE ); + + virtual void SetMark(); + void DeleteMark() { pMark = pPoint; } +#ifdef PRODUCT + void Exchange() + { + if(pPoint != pMark) + { + SwPosition *pTmp = pPoint; + pPoint = pMark; + pMark = pTmp; + } + } +#else + void Exchange(); +#endif + /* + * Undokumented Feature: Liefert zurueck, ob das Pam ueber + * eine Selektion verfuegt oder nicht. Definition einer + * Selektion: Point und Mark zeigen auf unterschiedliche + * Puffer. + */ + FASTBOOL HasMark() const { return pPoint == pMark? FALSE : TRUE; } + + const SwPosition *GetPoint() const { return pPoint; } + SwPosition *GetPoint() { return pPoint; } + const SwPosition *GetMark() const { return pMark; } + SwPosition *GetMark() { return pMark; } + + const SwPosition *Start() const + { return (*pPoint) <= (*pMark)? pPoint: pMark; } + SwPosition *Start() + { return (*pPoint) <= (*pMark)? pPoint: pMark; } + const SwPosition *End() const + { return (*pPoint) > (*pMark)? pPoint: pMark; } + SwPosition *End() + { return (*pPoint) > (*pMark)? pPoint: pMark; } + + SwPaM& operator=( SwPaM & ); + + // erfrage vom SwPaM den aktuellen Node/ContentNode am SPoint / Mark + SwNode* GetNode( BOOL bPoint = TRUE ) const + { + return &( bPoint ? pPoint->nNode : pMark->nNode ).GetNode(); + } + SwCntntNode* GetCntntNode( BOOL bPoint = TRUE ) const + { + return ( bPoint ? pPoint->nNode : pMark->nNode ).GetNode().GetCntntNode(); + } + + // erfrage vom SwPaM das Dokument, in dem er angemeldet ist + SwDoc* GetDoc() const { return pPoint->nNode.GetNode().GetDoc(); } + SwPosition& GetBound( BOOL bOne = TRUE ) + { return bOne ? aBound1 : aBound2; } + const SwPosition& GetBound( BOOL bOne = TRUE ) const + { return bOne ? aBound1 : aBound2; } + + // erfrage die Seitennummer auf der der Cursor steht + USHORT GetPageNum( BOOL bAtPoint = TRUE, const Point* pLayPos = 0 ); + + // steht in etwas geschuetztem oder in die Selektion umspannt + // etwas geschuetztes. + FASTBOOL HasReadonlySel() const; + + DECL_FIXEDMEMPOOL_NEWDEL(SwPaM) +}; + + +FASTBOOL CheckNodesRange( const SwNodeIndex&, const SwNodeIndex&, FASTBOOL ); +FASTBOOL GoInCntnt( SwPaM & rPam, SwMoveFn fnMove ); + + +#endif // _PAM_HXX diff --git a/sw/inc/paratr.hxx b/sw/inc/paratr.hxx new file mode 100644 index 000000000000..28fd5634e148 --- /dev/null +++ b/sw/inc/paratr.hxx @@ -0,0 +1,285 @@ +/************************************************************************* + * + * $RCSfile: paratr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _PARATR_HXX +#define _PARATR_HXX + +#ifndef _SFXENUMITEM_HXX //autogen +#include +#endif +#ifndef _SFXSTRITEM_HXX //autogen +#include +#endif +#include "hintids.hxx" +#include "calbck.hxx" +#include "swatrset.hxx" +#include "format.hxx" +#include "swtypes.hxx" + +class SwCharFmt; +class International; + +/************************************************************************* +|* class SwFmtDrop +*************************************************************************/ + +#define DROP_WHOLEWORD ((USHORT)0x0001) + +//Wenn ein SwFmtDrop Client ist, so ist dies das CharFmt welches den Font fuer +//die DropCaps beschreibt. Ist es kein Client, so wird von der Formatierung +//das CharFmt des Absatzes benutzt. +//Wird das CharFmt verandert, so wird diese Aenderung ueber das Modify des +//SwFmtDrop an die Absatze propagiert. +class SwFmtDrop: public SfxPoolItem, public SwClient +{ + SwModify* pDefinedIn; // Modify-Object, in dem der DropCaps steht + // kann nur TxtFmtCollection/TxtNode sein + USHORT nDistance; // Abstand zum Textbeginn + USHORT nReadFmt; // fuer den Sw3-Reader: CharFormat-Id (Pool laden!) + BYTE nLines; // Anzahl der Zeilen + BYTE nChars; // Anzahl der Zeichen + BOOL bWholeWord; // Erstes Wort als Initialen +public: + TYPEINFO(); //Bereits in der Basisklasse SwClient + + SwFmtDrop(); + SwFmtDrop( const SwFmtDrop & ); + ~SwFmtDrop(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0) const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ); + virtual USHORT GetVersion( USHORT nFFVer ) const; + + inline BYTE GetLines() const { return nLines; } + inline BYTE &GetLines() { return nLines; } + + inline BYTE GetChars() const { return nChars; } + inline BYTE &GetChars() { return nChars; } + + inline BOOL GetWholeWord() const { return bWholeWord; } + inline BYTE &GetWholeWord() { return bWholeWord; } + + inline USHORT GetDistance() const { return nDistance; } + inline USHORT &GetDistance() { return nDistance; } + + // fuer den Sw3-Reader: CharFormat-Id (Pool laden!) + inline USHORT GetReadFmt() const { return nReadFmt; } + inline void SetReadFmt( USHORT n ) { nReadFmt = n; } + + inline const SwCharFmt *GetCharFmt() const { return (SwCharFmt*)pRegisteredIn; } + inline SwCharFmt *GetCharFmt() { return (SwCharFmt*)pRegisteredIn; } + void SetCharFmt( SwCharFmt *pNew ); + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + // erfrage und setze den Modify-Pointer + inline const SwModify* GetDefinedIn() const { return pDefinedIn; } + inline void ChgDefinedIn( const SwModify* pNew ) + { pDefinedIn = (SwModify*)pNew; } + + // this item must be ignored while comparing item sets during XML export + virtual BOOL equalsXML( const SfxPoolItem& ) const; +}; + +class SwRegisterItem : public SfxBoolItem +{ +public: + TYPEINFO(); + + inline SwRegisterItem( const BOOL bRegister = FALSE ); + inline SwRegisterItem& operator=( const SwRegisterItem& rRegister ); + + // "pure virtual Methoden" vom SfxPoolItem + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create( SvStream&, USHORT ) const; + virtual SvStream& Store( SvStream&, USHORT nIVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + virtual BOOL importXML( const NAMESPACE_RTL(OUString)& rValue,USHORT, + const SvXMLUnitConverter& rUnitConv ); + virtual BOOL exportXML( NAMESPACE_RTL(OUString)& rValue, USHORT, + const SvXMLUnitConverter& rUnitConv ) const; +}; + +inline SwRegisterItem::SwRegisterItem( const BOOL bRegister ) : + SfxBoolItem( RES_PARATR_REGISTER, bRegister ) +{} + +inline SwRegisterItem& SwRegisterItem::operator=( + const SwRegisterItem& rRegister ) +{ + SetValue( rRegister.GetValue() ); + return *this; +} + +class SwNumRuleItem : public SfxStringItem +{ + SwModify* pDefinedIn; // Modify-Object, in dem das NumRule steht + // kann nur TxtFmtCollection/TxtNode sein +public: + TYPEINFO(); + + SwNumRuleItem() + : SfxStringItem( RES_PARATR_NUMRULE, aEmptyStr ), pDefinedIn(0) {} + + SwNumRuleItem( const String& rRuleName ) + : SfxStringItem( RES_PARATR_NUMRULE, rRuleName ), pDefinedIn(0) {} + + SwNumRuleItem( const SwNumRuleItem& rCpy ) + : SfxStringItem( RES_PARATR_NUMRULE, rCpy.GetValue() ), pDefinedIn(0) {} + + + SwNumRuleItem& operator=( const SwNumRuleItem& rCpy ) + { SetValue( rCpy.GetValue() ); pDefinedIn=0; return *this; } + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const; + virtual SfxPoolItem* Create( SvStream&, USHORT ) const; + virtual SvStream& Store( SvStream&, USHORT nIVer ) const; + virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, + SfxMapUnit ePresMetric, + String &rText, + const International* pIntl = 0 ) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId ); + + // this item must be ignored while comparing item sets during XML export + virtual BOOL equalsXML( const SfxPoolItem& ) const; + + // erfrage und setze den Modify-Pointer + inline const SwModify* GetDefinedIn() const { return pDefinedIn; } + inline void ChgDefinedIn( const SwModify* pNew ) + { pDefinedIn = (SwModify*)pNew; } +}; + + + +/****************************************************************************** + * Implementierung der Paragraph-Attribut Methoden vom SwAttrSet + ******************************************************************************/ + +inline const SvxLineSpacingItem &SwAttrSet::GetLineSpacing(BOOL bInP) const + { return (const SvxLineSpacingItem&)Get( RES_PARATR_LINESPACING,bInP); } +inline const SvxAdjustItem &SwAttrSet::GetAdjust(BOOL bInP) const + { return (const SvxAdjustItem&)Get( RES_PARATR_ADJUST,bInP); } +inline const SvxFmtSplitItem &SwAttrSet::GetSplit(BOOL bInP) const + { return (const SvxFmtSplitItem&)Get( RES_PARATR_SPLIT,bInP); } +inline const SwRegisterItem &SwAttrSet::GetRegister(BOOL bInP) const + { return (const SwRegisterItem&)Get( RES_PARATR_REGISTER,bInP); } +inline const SvxWidowsItem &SwAttrSet::GetWidows(BOOL bInP) const + { return (const SvxWidowsItem&)Get( RES_PARATR_WIDOWS,bInP); } +inline const SvxOrphansItem &SwAttrSet::GetOrphans(BOOL bInP) const + { return (const SvxOrphansItem&)Get( RES_PARATR_ORPHANS,bInP); } +inline const SvxTabStopItem &SwAttrSet::GetTabStops(BOOL bInP) const + { return (const SvxTabStopItem&)Get( RES_PARATR_TABSTOP,bInP); } +inline const SvxHyphenZoneItem &SwAttrSet::GetHyphenZone(BOOL bInP) const + { return (const SvxHyphenZoneItem&)Get(RES_PARATR_HYPHENZONE,bInP); } +inline const SwFmtDrop &SwAttrSet::GetDrop(BOOL bInP) const + { return (const SwFmtDrop&)Get(RES_PARATR_DROP,bInP); } +inline const SwNumRuleItem &SwAttrSet::GetNumRule(BOOL bInP) const + { return (const SwNumRuleItem&)Get(RES_PARATR_NUMRULE,bInP); } + +/****************************************************************************** + * Implementierung der Paragraph-Attribut Methoden vom SwFmt + ******************************************************************************/ + +inline const SvxLineSpacingItem &SwFmt::GetLineSpacing(BOOL bInP) const + { return aSet.GetLineSpacing(bInP); } +inline const SvxAdjustItem &SwFmt::GetAdjust(BOOL bInP) const + { return aSet.GetAdjust(bInP); } +inline const SvxFmtSplitItem &SwFmt::GetSplit(BOOL bInP) const + { return aSet.GetSplit(bInP); } +inline const SwRegisterItem &SwFmt::GetRegister(BOOL bInP) const + { return aSet.GetRegister(bInP); } +inline const SvxWidowsItem &SwFmt::GetWidows(BOOL bInP) const + { return aSet.GetWidows(bInP); } +inline const SvxOrphansItem &SwFmt::GetOrphans(BOOL bInP) const + { return aSet.GetOrphans(bInP); } +inline const SvxTabStopItem &SwFmt::GetTabStops(BOOL bInP) const + { return aSet.GetTabStops(bInP); } +inline const SvxHyphenZoneItem &SwFmt::GetHyphenZone(BOOL bInP) const + { return aSet.GetHyphenZone(bInP); } +inline const SwFmtDrop &SwFmt::GetDrop(BOOL bInP) const + { return aSet.GetDrop(bInP); } +inline const SwNumRuleItem &SwFmt::GetNumRule(BOOL bInP) const + { return aSet.GetNumRule(bInP); } + + +#endif diff --git a/sw/inc/poolfmt.awk b/sw/inc/poolfmt.awk new file mode 100644 index 000000000000..810d714dff95 --- /dev/null +++ b/sw/inc/poolfmt.awk @@ -0,0 +1,73 @@ +#************************************************************************* +#* +#* $Workfile: dbgxtor.awk +#* +#* Ersterstellung JP 05.10.95 +#* Letzte Aenderung $Author: hr $ $Date: 2000-09-18 17:14:27 $ +#* $Revision: 1.1.1.1 $ +#* +#* $Logfile: T:/sw/inc/poolfmt.awv $ +#* +#* Copyright (c) 1990-1996, STAR DIVISION +#* +#************************************************************************* + +# +# Dieses awk-script generiert ein cxx-file, das alle PoolIds der Vorlage dumpt. +# wird fuer den HelpPI gebraucht. +# Aufruf: awk -f poolid.awk poolfmt.hxx > poolid.cxx +# cl poolid.cxx +# poolid.exe > ???.hrc +# + +function Header() { + print "// This is an outputfile of an awk-script: $Workfile: poolfmt.awk $" + print "#include " + print + print "#include " + print "#include " + print + print "#pragma hdrstop" + print + print "#include " + print "#include \"poolfmt.hxx\"" + print +} + +function Main() { + print + print "void main( int , char *[] ) {" + sStr = "#define" + print " int nSize = (sizeof(ppPoolIds) / sizeof(PoolFmtIds)) - 1;" + print " for( int n = 0; n < nSize; n++ )" + print " printf( \"" sStr " %s\\t%8d\\n\", ppPoolIds[ n ].pStr, ppPoolIds[ n ].nId );" + print "}" +} + +function TableHead() { + print + print "struct PoolFmtIds { int nId; const char* pStr; };" + print "static PoolFmtIds ppPoolIds[] = {" +} + +function TableTail() { + print " 0, \"\" };" + print +} + +BEGIN { + Header(); + TableHead(); +} + +/^[ \t]*RES_/ && !index( $1, "_BEGIN" ) && !index( $1, "_END" ) && !index( $1, "_POOL_" ) { + sStr = $1; + split( $1, sStr, "," ); + print " " sStr[1] ", \"" sStr[1] "\"," +} + +END { + TableTail(); + Main(); +} + diff --git a/sw/inc/poolfmt.hrc b/sw/inc/poolfmt.hrc new file mode 100644 index 000000000000..285f40e32989 --- /dev/null +++ b/sw/inc/poolfmt.hrc @@ -0,0 +1,533 @@ +/************************************************************************* + * + * $RCSfile: poolfmt.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _POOLFMT_HRC +#define _POOLFMT_HRC + +#include "rcid.hrc" + +// --------------- +// die Formate +// --------------- + +// Zeichenvorlagen: +#define STR_POOLCHR_FOOTNOTE (RC_POOLCHRFMT_BEGIN+ 0) +#define STR_POOLCHR_PAGENO (RC_POOLCHRFMT_BEGIN+ 1) +#define STR_POOLCHR_LABEL (RC_POOLCHRFMT_BEGIN+ 2) +#define STR_POOLCHR_DROPCAPS (RC_POOLCHRFMT_BEGIN+ 3) +#define STR_POOLCHR_NUM_LEVEL (RC_POOLCHRFMT_BEGIN+ 4) +#define STR_POOLCHR_BUL_LEVEL (RC_POOLCHRFMT_BEGIN+ 5) +#define STR_POOLCHR_INET_NORMAL (RC_POOLCHRFMT_BEGIN+ 6) +#define STR_POOLCHR_INET_VISIT (RC_POOLCHRFMT_BEGIN+ 7) +#define STR_POOLCHR_JUMPEDIT (RC_POOLCHRFMT_BEGIN+ 8) +#define STR_POOLCHR_TOXJUMP (RC_POOLCHRFMT_BEGIN+ 9) +#define STR_POOLCHR_ENDNOTE (RC_POOLCHRFMT_BEGIN+ 10) +#define STR_POOLCHR_LINENUM (RC_POOLCHRFMT_BEGIN+ 11) +#define STR_POOLCHR_IDX_MAIN_ENTRY (RC_POOLCHRFMT_BEGIN+ 12) +#define STR_POOLCHR_FOOTNOTE_ANCHOR (RC_POOLCHRFMT_BEGIN+ 13) +#define STR_POOLCHR_ENDNOTE_ANCHOR (RC_POOLCHRFMT_BEGIN+ 14) + +#define STR_POOLCHR_HTML_EMPHASIS (RC_POOLCHRFMT_HTML_BEGIN+ 0) +#define STR_POOLCHR_HTML_CITIATION (RC_POOLCHRFMT_HTML_BEGIN+ 1) +#define STR_POOLCHR_HTML_STRONG (RC_POOLCHRFMT_HTML_BEGIN+ 2) +#define STR_POOLCHR_HTML_CODE (RC_POOLCHRFMT_HTML_BEGIN+ 3) +#define STR_POOLCHR_HTML_SAMPLE (RC_POOLCHRFMT_HTML_BEGIN+ 4) +#define STR_POOLCHR_HTML_KEYBOARD (RC_POOLCHRFMT_HTML_BEGIN+ 5) +#define STR_POOLCHR_HTML_VARIABLE (RC_POOLCHRFMT_HTML_BEGIN+ 6) +#define STR_POOLCHR_HTML_DEFINSTANCE (RC_POOLCHRFMT_HTML_BEGIN+ 7) +#define STR_POOLCHR_HTML_TELETYPE (RC_POOLCHRFMT_HTML_BEGIN+ 8) + +#define STR_POOLCHR_PRGM_FOOTNOTE (RC_POOLCHRFMT_PRGM_BEGIN + 0) +#define STR_POOLCHR_PRGM_PAGENO (RC_POOLCHRFMT_PRGM_BEGIN + 1) +#define STR_POOLCHR_PRGM_LABEL (RC_POOLCHRFMT_PRGM_BEGIN + 2) +#define STR_POOLCHR_PRGM_DROPCAPS (RC_POOLCHRFMT_PRGM_BEGIN + 3) +#define STR_POOLCHR_PRGM_NUM_LEVEL (RC_POOLCHRFMT_PRGM_BEGIN + 4) +#define STR_POOLCHR_PRGM_BUL_LEVEL (RC_POOLCHRFMT_PRGM_BEGIN + 5) +#define STR_POOLCHR_PRGM_INET_NORMAL (RC_POOLCHRFMT_PRGM_BEGIN + 6) +#define STR_POOLCHR_PRGM_INET_VISIT (RC_POOLCHRFMT_PRGM_BEGIN + 7) +#define STR_POOLCHR_PRGM_JUMPEDIT (RC_POOLCHRFMT_PRGM_BEGIN + 8) +#define STR_POOLCHR_PRGM_TOXJUMP (RC_POOLCHRFMT_PRGM_BEGIN + 9) +#define STR_POOLCHR_PRGM_ENDNOTE (RC_POOLCHRFMT_PRGM_BEGIN + 10) +#define STR_POOLCHR_PRGM_LINENUM (RC_POOLCHRFMT_PRGM_BEGIN + 11) +#define STR_POOLCHR_PRGM_IDX_MAIN_ENTRY (RC_POOLCHRFMT_PRGM_BEGIN + 12) +#define STR_POOLCHR_PRGM_FOOTNOTE_ANCHOR (RC_POOLCHRFMT_PRGM_BEGIN + 13) +#define STR_POOLCHR_PRGM_ENDNOTE_ANCHOR (RC_POOLCHRFMT_PRGM_BEGIN + 14) + +#define STR_POOLCHR_PRGM_CURRENT_END STR_POOLCHR_PRGM_ENDNOTE_ANCHOR + + +#define STR_POOLCHR_PRGM_HTML_EMPHASIS (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 0) +#define STR_POOLCHR_PRGM_HTML_CITIATION (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 1) +#define STR_POOLCHR_PRGM_HTML_STRONG (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 2) +#define STR_POOLCHR_PRGM_HTML_CODE (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 3) +#define STR_POOLCHR_PRGM_HTML_SAMPLE (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 4) +#define STR_POOLCHR_PRGM_HTML_KEYBOARD (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 5) +#define STR_POOLCHR_PRGM_HTML_VARIABLE (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 6) +#define STR_POOLCHR_PRGM_HTML_DEFINSTANCE (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 7) +#define STR_POOLCHR_PRGM_HTML_TELETYPE (RC_POOLCHRFMT_PRGM_HTML_BEGIN + 8) + +#define STR_POOLCHR_PRGM_HTML_CURRENT_END STR_POOLCHR_PRGM_HTML_TELETYPE + +// Rahmen-Vorlagen: +#define STR_POOLFRM_FRAME (RC_POOLFRMFMT_BEGIN+ 0) +#define STR_POOLFRM_GRAPHIC (RC_POOLFRMFMT_BEGIN+ 1) +#define STR_POOLFRM_OLE (RC_POOLFRMFMT_BEGIN+ 2) +#define STR_POOLFRM_FORMEL (RC_POOLFRMFMT_BEGIN+ 3) +#define STR_POOLFRM_MARGINAL (RC_POOLFRMFMT_BEGIN+ 4) +#define STR_POOLFRM_WATERSIGN (RC_POOLFRMFMT_BEGIN+ 5) +#define STR_POOLFRM_LABEL (RC_POOLFRMFMT_BEGIN+ 6) + +#define STR_POOLFRM_PRGM_FRAME (RC_POOLFRMFMT_PRGM_BEGIN+ 0) +#define STR_POOLFRM_PRGM_GRAPHIC (RC_POOLFRMFMT_PRGM_BEGIN+ 1) +#define STR_POOLFRM_PRGM_OLE (RC_POOLFRMFMT_PRGM_BEGIN+ 2) +#define STR_POOLFRM_PRGM_FORMEL (RC_POOLFRMFMT_PRGM_BEGIN+ 3) +#define STR_POOLFRM_PRGM_MARGINAL (RC_POOLFRMFMT_PRGM_BEGIN+ 4) +#define STR_POOLFRM_PRGM_WATERSIGN (RC_POOLFRMFMT_PRGM_BEGIN+ 5) +#define STR_POOLFRM_PRGM_LABEL (RC_POOLFRMFMT_PRGM_BEGIN+ 6) + +// --------------- +// die Vorlagen +// --------------- +// Gruppe Text +#define STR_POOLCOLL_STANDARD (RC_POOLCOLL_TEXT_BEGIN+ 0) +#define STR_POOLCOLL_TEXT (RC_POOLCOLL_TEXT_BEGIN+ 1) +#define STR_POOLCOLL_TEXT_IDENT (RC_POOLCOLL_TEXT_BEGIN+ 2) +#define STR_POOLCOLL_TEXT_NEGIDENT (RC_POOLCOLL_TEXT_BEGIN+ 3) +#define STR_POOLCOLL_TEXT_MOVE (RC_POOLCOLL_TEXT_BEGIN+ 4) +#define STR_POOLCOLL_GREETING (RC_POOLCOLL_TEXT_BEGIN+ 5) +#define STR_POOLCOLL_SIGNATURE (RC_POOLCOLL_TEXT_BEGIN+ 6) +#define STR_POOLCOLL_CONFRONTATION (RC_POOLCOLL_TEXT_BEGIN+ 7) +#define STR_POOLCOLL_MARGINAL (RC_POOLCOLL_TEXT_BEGIN+ 8) + + // Untergruppierung Ueberschriften +#define STR_POOLCOLL_HEADLINE_BASE (RC_POOLCOLL_TEXT_BEGIN+ 9) +#define STR_POOLCOLL_HEADLINE1 (RC_POOLCOLL_TEXT_BEGIN+ 10) +#define STR_POOLCOLL_HEADLINE2 (RC_POOLCOLL_TEXT_BEGIN+ 11) +#define STR_POOLCOLL_HEADLINE3 (RC_POOLCOLL_TEXT_BEGIN+ 12) +#define STR_POOLCOLL_HEADLINE4 (RC_POOLCOLL_TEXT_BEGIN+ 13) +#define STR_POOLCOLL_HEADLINE5 (RC_POOLCOLL_TEXT_BEGIN+ 14) +#define STR_POOLCOLL_HEADLINE6 (RC_POOLCOLL_TEXT_BEGIN+ 15) +#define STR_POOLCOLL_HEADLINE7 (RC_POOLCOLL_TEXT_BEGIN+ 16) +#define STR_POOLCOLL_HEADLINE8 (RC_POOLCOLL_TEXT_BEGIN+ 17) +#define STR_POOLCOLL_HEADLINE9 (RC_POOLCOLL_TEXT_BEGIN+ 18) +#define STR_POOLCOLL_HEADLINE10 (RC_POOLCOLL_TEXT_BEGIN+ 19) + +// Gruppe Listen +#define STR_POOLCOLL_NUMBUL_BASE (RC_POOLCOLL_LISTS_BEGIN+ 0) + // Untergruppe Nummerierung +#define STR_POOLCOLL_NUM_LEVEL1S (RC_POOLCOLL_LISTS_BEGIN+ 1) +#define STR_POOLCOLL_NUM_LEVEL1 (RC_POOLCOLL_LISTS_BEGIN+ 2) +#define STR_POOLCOLL_NUM_LEVEL1E (RC_POOLCOLL_LISTS_BEGIN+ 3) +#define STR_POOLCOLL_NUM_NONUM1 (RC_POOLCOLL_LISTS_BEGIN+ 4) +#define STR_POOLCOLL_NUM_LEVEL2S (RC_POOLCOLL_LISTS_BEGIN+ 5) +#define STR_POOLCOLL_NUM_LEVEL2 (RC_POOLCOLL_LISTS_BEGIN+ 6) +#define STR_POOLCOLL_NUM_LEVEL2E (RC_POOLCOLL_LISTS_BEGIN+ 7) +#define STR_POOLCOLL_NUM_NONUM2 (RC_POOLCOLL_LISTS_BEGIN+ 8) +#define STR_POOLCOLL_NUM_LEVEL3S (RC_POOLCOLL_LISTS_BEGIN+ 9) +#define STR_POOLCOLL_NUM_LEVEL3 (RC_POOLCOLL_LISTS_BEGIN+ 10) +#define STR_POOLCOLL_NUM_LEVEL3E (RC_POOLCOLL_LISTS_BEGIN+ 11) +#define STR_POOLCOLL_NUM_NONUM3 (RC_POOLCOLL_LISTS_BEGIN+ 12) +#define STR_POOLCOLL_NUM_LEVEL4S (RC_POOLCOLL_LISTS_BEGIN+ 13) +#define STR_POOLCOLL_NUM_LEVEL4 (RC_POOLCOLL_LISTS_BEGIN+ 14) +#define STR_POOLCOLL_NUM_LEVEL4E (RC_POOLCOLL_LISTS_BEGIN+ 15) +#define STR_POOLCOLL_NUM_NONUM4 (RC_POOLCOLL_LISTS_BEGIN+ 16) +#define STR_POOLCOLL_NUM_LEVEL5S (RC_POOLCOLL_LISTS_BEGIN+ 17) +#define STR_POOLCOLL_NUM_LEVEL5 (RC_POOLCOLL_LISTS_BEGIN+ 18) +#define STR_POOLCOLL_NUM_LEVEL5E (RC_POOLCOLL_LISTS_BEGIN+ 19) +#define STR_POOLCOLL_NUM_NONUM5 (RC_POOLCOLL_LISTS_BEGIN+ 20) + + // Untergruppe Aufzaehlung +#define STR_POOLCOLL_BUL_LEVEL1S (RC_POOLCOLL_LISTS_BEGIN+ 21) +#define STR_POOLCOLL_BUL_LEVEL1 (RC_POOLCOLL_LISTS_BEGIN+ 22) +#define STR_POOLCOLL_BUL_LEVEL1E (RC_POOLCOLL_LISTS_BEGIN+ 23) +#define STR_POOLCOLL_BUL_NONUM1 (RC_POOLCOLL_LISTS_BEGIN+ 24) +#define STR_POOLCOLL_BUL_LEVEL2S (RC_POOLCOLL_LISTS_BEGIN+ 25) +#define STR_POOLCOLL_BUL_LEVEL2 (RC_POOLCOLL_LISTS_BEGIN+ 26) +#define STR_POOLCOLL_BUL_LEVEL2E (RC_POOLCOLL_LISTS_BEGIN+ 27) +#define STR_POOLCOLL_BUL_NONUM2 (RC_POOLCOLL_LISTS_BEGIN+ 28) +#define STR_POOLCOLL_BUL_LEVEL3S (RC_POOLCOLL_LISTS_BEGIN+ 29) +#define STR_POOLCOLL_BUL_LEVEL3 (RC_POOLCOLL_LISTS_BEGIN+ 30) +#define STR_POOLCOLL_BUL_LEVEL3E (RC_POOLCOLL_LISTS_BEGIN+ 31) +#define STR_POOLCOLL_BUL_NONUM3 (RC_POOLCOLL_LISTS_BEGIN+ 32) +#define STR_POOLCOLL_BUL_LEVEL4S (RC_POOLCOLL_LISTS_BEGIN+ 33) +#define STR_POOLCOLL_BUL_LEVEL4 (RC_POOLCOLL_LISTS_BEGIN+ 34) +#define STR_POOLCOLL_BUL_LEVEL4E (RC_POOLCOLL_LISTS_BEGIN+ 35) +#define STR_POOLCOLL_BUL_NONUM4 (RC_POOLCOLL_LISTS_BEGIN+ 36) +#define STR_POOLCOLL_BUL_LEVEL5S (RC_POOLCOLL_LISTS_BEGIN+ 37) +#define STR_POOLCOLL_BUL_LEVEL5 (RC_POOLCOLL_LISTS_BEGIN+ 38) +#define STR_POOLCOLL_BUL_LEVEL5E (RC_POOLCOLL_LISTS_BEGIN+ 39) +#define STR_POOLCOLL_BUL_NONUM5 (RC_POOLCOLL_LISTS_BEGIN+ 40) + +// Sonderbereiche + // Untergruppe Header +#define STR_POOLCOLL_HEADER (RC_POOLCOLL_EXTRA_BEGIN+ 0) +#define STR_POOLCOLL_HEADERL (RC_POOLCOLL_EXTRA_BEGIN+ 1) +#define STR_POOLCOLL_HEADERR (RC_POOLCOLL_EXTRA_BEGIN+ 2) + + // Untergruppe Footer +#define STR_POOLCOLL_FOOTER (RC_POOLCOLL_EXTRA_BEGIN+ 3) +#define STR_POOLCOLL_FOOTERL (RC_POOLCOLL_EXTRA_BEGIN+ 4) +#define STR_POOLCOLL_FOOTERR (RC_POOLCOLL_EXTRA_BEGIN+ 5) + + // Untergruppe Tabelle +#define STR_POOLCOLL_TABLE (RC_POOLCOLL_EXTRA_BEGIN+ 6) +#define STR_POOLCOLL_TABLE_HDLN (RC_POOLCOLL_EXTRA_BEGIN+ 7) + + // Untergruppe Labels +#define STR_POOLCOLL_LABEL (RC_POOLCOLL_EXTRA_BEGIN+ 8) +#define STR_POOLCOLL_LABEL_ABB (RC_POOLCOLL_EXTRA_BEGIN+ 9) +#define STR_POOLCOLL_LABEL_TABLE (RC_POOLCOLL_EXTRA_BEGIN+ 10) +#define STR_POOLCOLL_LABEL_FRAME (RC_POOLCOLL_EXTRA_BEGIN+ 11) + + // sonstiges +#define STR_POOLCOLL_FRAME (RC_POOLCOLL_EXTRA_BEGIN+ 12) +#define STR_POOLCOLL_FOOTNOTE (RC_POOLCOLL_EXTRA_BEGIN+ 13) +#define STR_POOLCOLL_JAKETADRESS (RC_POOLCOLL_EXTRA_BEGIN+ 14) +#define STR_POOLCOLL_SENDADRESS (RC_POOLCOLL_EXTRA_BEGIN+ 15) +#define STR_POOLCOLL_ENDNOTE (RC_POOLCOLL_EXTRA_BEGIN+ 16) + +#define STR_POOLCOLL_LABEL_DRAWING (RC_POOLCOLL_EXTRA_BEGIN+ 17) + +// Gruppe Verzeichnisse +#define STR_POOLCOLL_REGISTER_BASE (RC_POOLCOLL_REGISTER_BEGIN+ 0) + // Untergruppe Index-Verzeichnisse +#define STR_POOLCOLL_TOX_IDXH (RC_POOLCOLL_REGISTER_BEGIN+ 1) +#define STR_POOLCOLL_TOX_IDX1 (RC_POOLCOLL_REGISTER_BEGIN+ 2) +#define STR_POOLCOLL_TOX_IDX2 (RC_POOLCOLL_REGISTER_BEGIN+ 3) +#define STR_POOLCOLL_TOX_IDX3 (RC_POOLCOLL_REGISTER_BEGIN+ 4) +#define STR_POOLCOLL_TOX_IDXBREAK (RC_POOLCOLL_REGISTER_BEGIN+ 5) + + // Untergruppe Inhalts-Verzeichnisse +#define STR_POOLCOLL_TOX_CNTNTH (RC_POOLCOLL_REGISTER_BEGIN+ 6) +#define STR_POOLCOLL_TOX_CNTNT1 (RC_POOLCOLL_REGISTER_BEGIN+ 7) +#define STR_POOLCOLL_TOX_CNTNT2 (RC_POOLCOLL_REGISTER_BEGIN+ 8) +#define STR_POOLCOLL_TOX_CNTNT3 (RC_POOLCOLL_REGISTER_BEGIN+ 9) +#define STR_POOLCOLL_TOX_CNTNT4 (RC_POOLCOLL_REGISTER_BEGIN+ 10) +#define STR_POOLCOLL_TOX_CNTNT5 (RC_POOLCOLL_REGISTER_BEGIN+ 11) + + // Untergruppe Benutzer-Verzeichnisse: +#define STR_POOLCOLL_TOX_USERH (RC_POOLCOLL_REGISTER_BEGIN+ 12) +#define STR_POOLCOLL_TOX_USER1 (RC_POOLCOLL_REGISTER_BEGIN+ 13) +#define STR_POOLCOLL_TOX_USER2 (RC_POOLCOLL_REGISTER_BEGIN+ 14) +#define STR_POOLCOLL_TOX_USER3 (RC_POOLCOLL_REGISTER_BEGIN+ 15) +#define STR_POOLCOLL_TOX_USER4 (RC_POOLCOLL_REGISTER_BEGIN+ 16) +#define STR_POOLCOLL_TOX_USER5 (RC_POOLCOLL_REGISTER_BEGIN+ 17) + + // Untergruppe Inhalts-Verzeichnisse mehr Ebenen 5 - 10 +#define STR_POOLCOLL_TOX_CNTNT6 (RC_POOLCOLL_REGISTER_BEGIN+ 18) +#define STR_POOLCOLL_TOX_CNTNT7 (RC_POOLCOLL_REGISTER_BEGIN+ 19) +#define STR_POOLCOLL_TOX_CNTNT8 (RC_POOLCOLL_REGISTER_BEGIN+ 20) +#define STR_POOLCOLL_TOX_CNTNT9 (RC_POOLCOLL_REGISTER_BEGIN+ 21) +#define STR_POOLCOLL_TOX_CNTNT10 (RC_POOLCOLL_REGISTER_BEGIN+ 22) + +// illustrations index +#define STR_POOLCOLL_TOX_ILLUSH (RC_POOLCOLL_REGISTER_BEGIN+ 23) +#define STR_POOLCOLL_TOX_ILLUS1 (RC_POOLCOLL_REGISTER_BEGIN+ 24) + +// object index +#define STR_POOLCOLL_TOX_OBJECTH (RC_POOLCOLL_REGISTER_BEGIN+ 25) +#define STR_POOLCOLL_TOX_OBJECT1 (RC_POOLCOLL_REGISTER_BEGIN+ 26) + +// tables index +#define STR_POOLCOLL_TOX_TABLESH (RC_POOLCOLL_REGISTER_BEGIN+ 27) +#define STR_POOLCOLL_TOX_TABLES1 (RC_POOLCOLL_REGISTER_BEGIN+ 28) + +// index of authorities +#define STR_POOLCOLL_TOX_AUTHORITIESH (RC_POOLCOLL_REGISTER_BEGIN+ 29) +#define STR_POOLCOLL_TOX_AUTHORITIES1 (RC_POOLCOLL_REGISTER_BEGIN+ 30) + + // Untergruppe Benutzer-Verzeichnisse mehr Ebenen 5 - 10 +#define STR_POOLCOLL_TOX_USER6 (RC_POOLCOLL_REGISTER_BEGIN+ 31) +#define STR_POOLCOLL_TOX_USER7 (RC_POOLCOLL_REGISTER_BEGIN+ 32) +#define STR_POOLCOLL_TOX_USER8 (RC_POOLCOLL_REGISTER_BEGIN+ 33) +#define STR_POOLCOLL_TOX_USER9 (RC_POOLCOLL_REGISTER_BEGIN+ 34) +#define STR_POOLCOLL_TOX_USER10 (RC_POOLCOLL_REGISTER_BEGIN+ 35) + + +// Gruppe Kapitel/Dokument +#define STR_POOLCOLL_DOC_TITEL (RC_POOLCOLL_DOC_BEGIN+ 0) +#define STR_POOLCOLL_DOC_SUBTITEL (RC_POOLCOLL_DOC_BEGIN+ 1) + +// Gruppe HTML-Vorlagen +#define STR_POOLCOLL_HTML_BLOCKQUOTE (RC_POOLCOLL_HTML_BEGIN+ 0) +#define STR_POOLCOLL_HTML_PRE (RC_POOLCOLL_HTML_BEGIN+ 1) +#define STR_POOLCOLL_HTML_HR (RC_POOLCOLL_HTML_BEGIN+ 2) +#define STR_POOLCOLL_HTML_DD (RC_POOLCOLL_HTML_BEGIN+ 3) +#define STR_POOLCOLL_HTML_DT (RC_POOLCOLL_HTML_BEGIN+ 4) + +// programmatic names of para styles + +// Gruppe Text +#define STR_POCO_PRGM_STANDARD (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 0) +#define STR_POCO_PRGM_TEXT (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 1) +#define STR_POCO_PRGM_TEXT_IDENT (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 2) +#define STR_POCO_PRGM_TEXT_NEGIDENT (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 3) +#define STR_POCO_PRGM_TEXT_MOVE (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 4) +#define STR_POCO_PRGM_GREETING (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 5) +#define STR_POCO_PRGM_SIGNATURE (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 6) +#define STR_POCO_PRGM_CONFRONTATION (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 7) +#define STR_POCO_PRGM_MARGINAL (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 8) + + // Untergruppierung Ueberschriften +#define STR_POCO_PRGM_HEADLINE_BASE (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 9) +#define STR_POCO_PRGM_HEADLINE1 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 10) +#define STR_POCO_PRGM_HEADLINE2 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 11) +#define STR_POCO_PRGM_HEADLINE3 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 12) +#define STR_POCO_PRGM_HEADLINE4 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 13) +#define STR_POCO_PRGM_HEADLINE5 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 14) +#define STR_POCO_PRGM_HEADLINE6 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 15) +#define STR_POCO_PRGM_HEADLINE7 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 16) +#define STR_POCO_PRGM_HEADLINE8 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 17) +#define STR_POCO_PRGM_HEADLINE9 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 18) +#define STR_POCO_PRGM_HEADLINE10 (RC_POOLCOLL_PRGM_TEXT_BEGIN+ 19) + +// Gruppe Listen +#define STR_POCO_PRGM_NUMBUL_BASE (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 0) + // Untergruppe Nummerierung +#define STR_POCO_PRGM_NUM_LEVEL1S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 1) +#define STR_POCO_PRGM_NUM_LEVEL1 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 2) +#define STR_POCO_PRGM_NUM_LEVEL1E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 3) +#define STR_POCO_PRGM_NUM_NONUM1 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 4) +#define STR_POCO_PRGM_NUM_LEVEL2S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 5) +#define STR_POCO_PRGM_NUM_LEVEL2 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 6) +#define STR_POCO_PRGM_NUM_LEVEL2E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 7) +#define STR_POCO_PRGM_NUM_NONUM2 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 8) +#define STR_POCO_PRGM_NUM_LEVEL3S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 9) +#define STR_POCO_PRGM_NUM_LEVEL3 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 10) +#define STR_POCO_PRGM_NUM_LEVEL3E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 11) +#define STR_POCO_PRGM_NUM_NONUM3 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 12) +#define STR_POCO_PRGM_NUM_LEVEL4S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 13) +#define STR_POCO_PRGM_NUM_LEVEL4 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 14) +#define STR_POCO_PRGM_NUM_LEVEL4E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 15) +#define STR_POCO_PRGM_NUM_NONUM4 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 16) +#define STR_POCO_PRGM_NUM_LEVEL5S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 17) +#define STR_POCO_PRGM_NUM_LEVEL5 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 18) +#define STR_POCO_PRGM_NUM_LEVEL5E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 19) +#define STR_POCO_PRGM_NUM_NONUM5 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 20) + + // Untergruppe Aufzaehlung +#define STR_POCO_PRGM_BUL_LEVEL1S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 21) +#define STR_POCO_PRGM_BUL_LEVEL1 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 22) +#define STR_POCO_PRGM_BUL_LEVEL1E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 23) +#define STR_POCO_PRGM_BUL_NONUM1 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 24) +#define STR_POCO_PRGM_BUL_LEVEL2S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 25) +#define STR_POCO_PRGM_BUL_LEVEL2 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 26) +#define STR_POCO_PRGM_BUL_LEVEL2E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 27) +#define STR_POCO_PRGM_BUL_NONUM2 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 28) +#define STR_POCO_PRGM_BUL_LEVEL3S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 29) +#define STR_POCO_PRGM_BUL_LEVEL3 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 30) +#define STR_POCO_PRGM_BUL_LEVEL3E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 31) +#define STR_POCO_PRGM_BUL_NONUM3 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 32) +#define STR_POCO_PRGM_BUL_LEVEL4S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 33) +#define STR_POCO_PRGM_BUL_LEVEL4 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 34) +#define STR_POCO_PRGM_BUL_LEVEL4E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 35) +#define STR_POCO_PRGM_BUL_NONUM4 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 36) +#define STR_POCO_PRGM_BUL_LEVEL5S (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 37) +#define STR_POCO_PRGM_BUL_LEVEL5 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 38) +#define STR_POCO_PRGM_BUL_LEVEL5E (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 39) +#define STR_POCO_PRGM_BUL_NONUM5 (RC_POOLCOLL_PRGM_LISTS_BEGIN+ 40) + +// Sonderbereiche + // Untergruppe Header +#define STR_POCO_PRGM_HEADER (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 0) +#define STR_POCO_PRGM_HEADERL (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 1) +#define STR_POCO_PRGM_HEADERR (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 2) + + // Untergruppe Footer +#define STR_POCO_PRGM_FOOTER (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 3) +#define STR_POCO_PRGM_FOOTERL (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 4) +#define STR_POCO_PRGM_FOOTERR (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 5) + + // Untergruppe Tabelle +#define STR_POCO_PRGM_TABLE (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 6) +#define STR_POCO_PRGM_TABLE_HDLN (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 7) + + // Untergruppe Labels +#define STR_POCO_PRGM_LABEL (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 8) +#define STR_POCO_PRGM_LABEL_ABB (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 9) +#define STR_POCO_PRGM_LABEL_TABLE (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 10) +#define STR_POCO_PRGM_LABEL_FRAME (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 11) + + // sonstiges +#define STR_POCO_PRGM_FRAME (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 12) +#define STR_POCO_PRGM_FOOTNOTE (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 13) +#define STR_POCO_PRGM_JAKETADRESS (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 14) +#define STR_POCO_PRGM_SENDADRESS (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 15) +#define STR_POCO_PRGM_ENDNOTE (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 16) + +#define STR_POCO_PRGM_LABEL_DRAWING (RC_POOLCOLL_PRGM_EXTRA_BEGIN+ 17) + +// Gruppe Verzeichnisse +#define STR_POCO_PRGM_REGISTER_BASE (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 0) + // Untergruppe Index-Verzeichnisse +#define STR_POCO_PRGM_TOX_IDXH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 1) +#define STR_POCO_PRGM_TOX_IDX1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 2) +#define STR_POCO_PRGM_TOX_IDX2 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 3) +#define STR_POCO_PRGM_TOX_IDX3 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 4) +#define STR_POCO_PRGM_TOX_IDXBREAK (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 5) + + // Untergruppe Inhalts-Verzeichnisse +#define STR_POCO_PRGM_TOX_CNTNTH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 6) +#define STR_POCO_PRGM_TOX_CNTNT1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 7) +#define STR_POCO_PRGM_TOX_CNTNT2 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 8) +#define STR_POCO_PRGM_TOX_CNTNT3 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 9) +#define STR_POCO_PRGM_TOX_CNTNT4 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 10) +#define STR_POCO_PRGM_TOX_CNTNT5 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 11) + + // Untergruppe Benutzer-Verzeichnisse: +#define STR_POCO_PRGM_TOX_USERH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 12) +#define STR_POCO_PRGM_TOX_USER1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 13) +#define STR_POCO_PRGM_TOX_USER2 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 14) +#define STR_POCO_PRGM_TOX_USER3 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 15) +#define STR_POCO_PRGM_TOX_USER4 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 16) +#define STR_POCO_PRGM_TOX_USER5 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 17) + + // Untergruppe Inhalts-Verzeichnisse mehr Ebenen 5 - 10 +#define STR_POCO_PRGM_TOX_CNTNT6 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 18) +#define STR_POCO_PRGM_TOX_CNTNT7 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 19) +#define STR_POCO_PRGM_TOX_CNTNT8 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 20) +#define STR_POCO_PRGM_TOX_CNTNT9 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 21) +#define STR_POCO_PRGM_TOX_CNTNT10 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 22) + +// illustrations index +#define STR_POCO_PRGM_TOX_ILLUSH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 23) +#define STR_POCO_PRGM_TOX_ILLUS1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 24) + +// object index +#define STR_POCO_PRGM_TOX_OBJECTH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 25) +#define STR_POCO_PRGM_TOX_OBJECT1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 26) + +// tables index +#define STR_POCO_PRGM_TOX_TABLESH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 27) +#define STR_POCO_PRGM_TOX_TABLES1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 28) + +// index of authorities +#define STR_POCO_PRGM_TOX_AUTHORITIESH (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 29) +#define STR_POCO_PRGM_TOX_AUTHORITIES1 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 30) + + // Untergruppe Benutzer-Verzeichnisse mehr Ebenen 5 - 10 +#define STR_POCO_PRGM_TOX_USER6 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 31) +#define STR_POCO_PRGM_TOX_USER7 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 32) +#define STR_POCO_PRGM_TOX_USER8 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 33) +#define STR_POCO_PRGM_TOX_USER9 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 34) +#define STR_POCO_PRGM_TOX_USER10 (RC_POOLCOLL_PRGM_REGISTER_BEGIN+ 35) + + +// Gruppe Kapitel/Dokument +#define STR_POCO_PRGM_DOC_TITEL (RC_POOLCOLL_PRGM_DOC_BEGIN+ 0) +#define STR_POCO_PRGM_DOC_SUBTITEL (RC_POOLCOLL_PRGM_DOC_BEGIN+ 1) + +// Gruppe HTML-Vorlagen +#define STR_POCO_PRGM_HTML_BLOCKQUOTE (RC_POOLCOLL_PRGM_HTML_BEGIN+ 0) +#define STR_POCO_PRGM_HTML_PRE (RC_POOLCOLL_PRGM_HTML_BEGIN+ 1) +#define STR_POCO_PRGM_HTML_HR (RC_POOLCOLL_PRGM_HTML_BEGIN+ 2) +#define STR_POCO_PRGM_HTML_DD (RC_POOLCOLL_PRGM_HTML_BEGIN+ 3) +#define STR_POCO_PRGM_HTML_DT (RC_POOLCOLL_PRGM_HTML_BEGIN+ 4) + + +//----------------- +// Page styles +//----------------- +#define STR_POOLPAGE_STANDARD (RC_POOLPAGEDESC_BEGIN+ 0) +#define STR_POOLPAGE_FIRST (RC_POOLPAGEDESC_BEGIN+ 1) +#define STR_POOLPAGE_LEFT (RC_POOLPAGEDESC_BEGIN+ 2) +#define STR_POOLPAGE_RIGHT (RC_POOLPAGEDESC_BEGIN+ 3) +#define STR_POOLPAGE_JAKET (RC_POOLPAGEDESC_BEGIN+ 4) +#define STR_POOLPAGE_REGISTER (RC_POOLPAGEDESC_BEGIN+ 5) +#define STR_POOLPAGE_HTML (RC_POOLPAGEDESC_BEGIN+ 6) +#define STR_POOLPAGE_FOOTNOTE (RC_POOLPAGEDESC_BEGIN+ 7) +#define STR_POOLPAGE_ENDNOTE (RC_POOLPAGEDESC_BEGIN+ 8) + +#define STR_POOLPAGE_PRGM_STANDARD (RC_POOLPAGEDESC_PRGM_BEGIN+ 0) +#define STR_POOLPAGE_PRGM_FIRST (RC_POOLPAGEDESC_PRGM_BEGIN+ 1) +#define STR_POOLPAGE_PRGM_LEFT (RC_POOLPAGEDESC_PRGM_BEGIN+ 2) +#define STR_POOLPAGE_PRGM_RIGHT (RC_POOLPAGEDESC_PRGM_BEGIN+ 3) +#define STR_POOLPAGE_PRGM_JAKET (RC_POOLPAGEDESC_PRGM_BEGIN+ 4) +#define STR_POOLPAGE_PRGM_REGISTER (RC_POOLPAGEDESC_PRGM_BEGIN+ 5) +#define STR_POOLPAGE_PRGM_HTML (RC_POOLPAGEDESC_PRGM_BEGIN+ 6) +#define STR_POOLPAGE_PRGM_FOOTNOTE (RC_POOLPAGEDESC_PRGM_BEGIN+ 7) +#define STR_POOLPAGE_PRGM_ENDNOTE (RC_POOLPAGEDESC_PRGM_BEGIN+ 8) + +//----------------- +// Numbering styles +//----------------- +#define STR_POOLNUMRULE_NUM1 (RC_POOLNUMRULE_BEGIN+ 0) +#define STR_POOLNUMRULE_NUM2 (RC_POOLNUMRULE_BEGIN+ 1) +#define STR_POOLNUMRULE_NUM3 (RC_POOLNUMRULE_BEGIN+ 2) +#define STR_POOLNUMRULE_NUM4 (RC_POOLNUMRULE_BEGIN+ 3) +#define STR_POOLNUMRULE_NUM5 (RC_POOLNUMRULE_BEGIN+ 4) +#define STR_POOLNUMRULE_BUL1 (RC_POOLNUMRULE_BEGIN+ 5) +#define STR_POOLNUMRULE_BUL2 (RC_POOLNUMRULE_BEGIN+ 6) +#define STR_POOLNUMRULE_BUL3 (RC_POOLNUMRULE_BEGIN+ 7) +#define STR_POOLNUMRULE_BUL4 (RC_POOLNUMRULE_BEGIN+ 8) +#define STR_POOLNUMRULE_BUL5 (RC_POOLNUMRULE_BEGIN+ 9) + +#define STR_POOLNUMRULE_PRGM_NUM1 (RC_POOLNUMRULE_PRGM_BEGIN+ 0) +#define STR_POOLNUMRULE_PRGM_NUM2 (RC_POOLNUMRULE_PRGM_BEGIN+ 1) +#define STR_POOLNUMRULE_PRGM_NUM3 (RC_POOLNUMRULE_PRGM_BEGIN+ 2) +#define STR_POOLNUMRULE_PRGM_NUM4 (RC_POOLNUMRULE_PRGM_BEGIN+ 3) +#define STR_POOLNUMRULE_PRGM_NUM5 (RC_POOLNUMRULE_PRGM_BEGIN+ 4) +#define STR_POOLNUMRULE_PRGM_BUL1 (RC_POOLNUMRULE_PRGM_BEGIN+ 5) +#define STR_POOLNUMRULE_PRGM_BUL2 (RC_POOLNUMRULE_PRGM_BEGIN+ 6) +#define STR_POOLNUMRULE_PRGM_BUL3 (RC_POOLNUMRULE_PRGM_BEGIN+ 7) +#define STR_POOLNUMRULE_PRGM_BUL4 (RC_POOLNUMRULE_PRGM_BEGIN+ 8) +#define STR_POOLNUMRULE_PRGM_BUL5 (RC_POOLNUMRULE_PRGM_BEGIN+ 9) + +#endif diff --git a/sw/inc/poolfmt.hxx b/sw/inc/poolfmt.hxx new file mode 100644 index 000000000000..a4b31cf51825 --- /dev/null +++ b/sw/inc/poolfmt.hxx @@ -0,0 +1,478 @@ +/************************************************************************* + * + * $RCSfile: poolfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _POOLFMT_HXX +#define _POOLFMT_HXX + +#include + +#ifndef _SOLAR_H +#include +#endif + +// POOLCOLL-IDs: +// +----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +// !User! Bereich ! 0 ! Offset ! +// +----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +// +// Bereich: 1 - Text +// 2 - Listen +// 3 - Sonderbereiche +// 4 - Verzeichnisse +// 5 - Kapitel / Dokument +// 6 - HTML-Vorlagen + +// Andere IDs: +// +----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +// !User! Bereich ! 1 ! Offset ! +// +----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ +// Bereich: 0 - Zeichenvorlagen +// 1 - Frame-Vorlagen +// 2 - Seitenvorlagen +// 3 - Absatzformate (?) +// 4 - Grafikformate (?) + +// F�r alle IDs gilt: +// Herkunft: 0 -Pool +// 1 -Benutzer +// Offset: innerhalb der Gruppe + + +// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +// +// ACHTUNG: neue ID's koennen nur noch am Ende der jeweiligen Gruppe +// zugefuegt werden. Diese Id's werden vom Reader/Writer ge- +// lesen und geschrieben. Diese kennen nur den Offset zum Start +// +// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +// Maske fuer Erkennung von COLLPOOL-Ids: + +const USHORT POOLGRP_NOCOLLID = (1 << 10); + +// POLLCOLL-Gruppen: + +const USHORT USER_FMT = (1 << 15); +const USHORT POOL_FMT = (0 << 15); + +const USHORT COLL_TEXT_BITS = (1 << 11); +const USHORT COLL_LISTS_BITS = (2 << 11); +const USHORT COLL_EXTRA_BITS = (3 << 11); +const USHORT COLL_REGISTER_BITS = (4 << 11); +const USHORT COLL_DOC_BITS = (5 << 11); +const USHORT COLL_HTML_BITS = (6 << 11); +const USHORT COLL_GET_RANGE_BITS = (15 << 11); + +// Sonstige Gruppen: + +const USHORT POOLGRP_CHARFMT = (0 << 11) + POOLGRP_NOCOLLID; +const USHORT POOLGRP_FRAMEFMT = (1 << 11) + POOLGRP_NOCOLLID; +const USHORT POOLGRP_PAGEDESC = (2 << 11) + POOLGRP_NOCOLLID; +const USHORT POOLGRP_NUMRULE = (3 << 11) + POOLGRP_NOCOLLID; +//const USHORT POOLGRP_GRFFMT = (4 << 11) + POOLGRP_NOCOLLID; // ? + +// fuer Erkennung ob Benutzer-Vorlage oder nicht: +const USHORT POOL_IDUSER_FMT = + USHRT_MAX & ~(COLL_GET_RANGE_BITS + POOLGRP_NOCOLLID); + +inline BOOL IsPoolUserFmt( USHORT nId ) +{ + return POOL_IDUSER_FMT == + (nId & ~(COLL_GET_RANGE_BITS + POOLGRP_NOCOLLID)) + ? TRUE : FALSE; +} + + +// ID-s fuer die Bereiche +enum RES_POOLFMT +{ +RES_POOLFMT_BEGIN = 1, // HIER GEHT'S LOS !!! +RES_POOL_CHRFMT = RES_POOLFMT_BEGIN, +RES_POOL_FRMFMT, +RES_POOL_TXTCOLL, +RES_POOL_PAGEFMT, + +RES_POOL_PARFMT, // ??? +RES_POOL_GRFFMT, // ??? +RES_POOLFMT_END +}; + +// Bereiche fuer die Id's der einzelnen Formate + +// die Id's fuer die Zeichen-Vorlagen +enum RES_POOL_CHRFMT_TYPE +{ +RES_POOLCHR_BEGIN = POOLGRP_CHARFMT, +RES_POOLCHR_NORMAL_BEGIN = POOLGRP_CHARFMT, + +RES_POOLCHR_FOOTNOTE = RES_POOLCHR_NORMAL_BEGIN, // Fussnote +RES_POOLCHR_PAGENO, // Seiten/Feld +RES_POOLCHR_LABEL, // Beschriftung +RES_POOLCHR_DROPCAPS, // Initialienzeichen +RES_POOLCHR_NUM_LEVEL, // Nummerierungszeichen +RES_POOLCHR_BUL_LEVEL, // Aufzaehlungszeichen + +RES_POOLCHR_INET_NORMAL, // Internet normal +RES_POOLCHR_INET_VISIT, // Internet besucht +RES_POOLCHR_JUMPEDIT, // Platzhalter +RES_POOLCHR_TOXJUMP, // Sprung aus Verzeichnis +RES_POOLCHR_ENDNOTE, // Endnote +RES_POOLCHR_LINENUM, // Zeilennummerierung +RES_POOLCHR_IDX_MAIN_ENTRY, // main entry in indexes +RES_POOLCHR_FOOTNOTE_ANCHOR, // Fussnotenanker +RES_POOLCHR_ENDNOTE_ANCHOR, // Endnotenanker + +RES_POOLCHR_NORMAL_END, + +RES_POOLCHR_HTML_BEGIN = RES_POOLCHR_BEGIN + 50, // HTML-Vorlagen +RES_POOLCHR_HTML_EMPHASIS= RES_POOLCHR_HTML_BEGIN, +RES_POOLCHR_HTML_CITIATION, +RES_POOLCHR_HTML_STRONG, +RES_POOLCHR_HTML_CODE, +RES_POOLCHR_HTML_SAMPLE, +RES_POOLCHR_HTML_KEYBOARD, +RES_POOLCHR_HTML_VARIABLE, +RES_POOLCHR_HTML_DEFINSTANCE, +RES_POOLCHR_HTML_TELETYPE, +RES_POOLCHR_HTML_END, + +RES_POOLCHR_END = RES_POOLCHR_HTML_END +}; + + +// die Id's fuer die Rahmen-Vorlagen +enum RES_POOL_FRMFMT_TYPE +{ +RES_POOLFRM_BEGIN = POOLGRP_FRAMEFMT, + +RES_POOLFRM_FRAME = RES_POOLFRM_BEGIN, // Rahmen +RES_POOLFRM_GRAPHIC, // Graphic +RES_POOLFRM_OLE, // OLE +RES_POOLFRM_FORMEL, // Formeln +RES_POOLFRM_MARGINAL, // Marginalen +RES_POOLFRM_WATERSIGN, // Wasserzeichen +RES_POOLFRM_LABEL, // Etikette + +RES_POOLFRM_END +}; + +// die Id's fuer die Seiten-Vorlagen +enum RES_POOL_PAGEFMT_TYPE +{ +RES_POOLPAGE_BEGIN = POOLGRP_PAGEDESC, + +RES_POOLPAGE_STANDARD = RES_POOLPAGE_BEGIN, // Standard-Seite +RES_POOLPAGE_FIRST, // Erste Seite +RES_POOLPAGE_LEFT, // Linke Seite +RES_POOLPAGE_RIGHT, // Rechte Seite +RES_POOLPAGE_JAKET, // Umschlag +RES_POOLPAGE_REGISTER, // Verzeichnis +RES_POOLPAGE_HTML, // HTML +RES_POOLPAGE_FOOTNOTE, // Fussnote bei Dokumentende +RES_POOLPAGE_ENDNOTE, // Endnotensseite + +RES_POOLPAGE_END +}; + +// die Id's fuer die NumRule-Vorlagen +enum RES_POOL_NUMRULE_TYPE +{ +RES_POOLNUMRULE_BEGIN = POOLGRP_NUMRULE, +RES_POOLNUMRULE_NUM1 = RES_POOLNUMRULE_BEGIN, // NumRule Numerierung 1 +RES_POOLNUMRULE_NUM2, // NumRule Numerierung 2 +RES_POOLNUMRULE_NUM3, // NumRule Numerierung 3 +RES_POOLNUMRULE_NUM4, // NumRule Numerierung 4 +RES_POOLNUMRULE_NUM5, // NumRule Numerierung 5 +RES_POOLNUMRULE_BUL1, // NumRule Bullets 1 +RES_POOLNUMRULE_BUL2, // NumRule Bullets 2 +RES_POOLNUMRULE_BUL3, // NumRule Bullets 3 +RES_POOLNUMRULE_BUL4, // NumRule Bullets 4 +RES_POOLNUMRULE_BUL5, // NumRule Bullets 5 +RES_POOLNUMRULE_END +}; + +// die Id's fuer die Absatz-Vorlagen +enum RES_POOL_COLLFMT_TYPE +{ +// Gruppe Text +RES_POOLCOLL_TEXT_BEGIN = COLL_TEXT_BITS, + +RES_POOLCOLL_STANDARD = RES_POOLCOLL_TEXT_BEGIN, // Standard +RES_POOLCOLL_TEXT, // Textkoerper +RES_POOLCOLL_TEXT_IDENT, // Textkoerper Einzug +RES_POOLCOLL_TEXT_NEGIDENT, // Textkoerper neg. Einzug +RES_POOLCOLL_TEXT_MOVE, // Textkoerper Einrueckung +RES_POOLCOLL_GREETING, // Grussformel +RES_POOLCOLL_SIGNATURE, // Unterschrift +RES_POOLCOLL_CONFRONTATION, // Gegenueberstellung +RES_POOLCOLL_MARGINAL, // Marginalie + + // Untergruppierung Ueberschriften +RES_POOLCOLL_HEADLINE_BASE, // Basis-Ueberschrift +RES_POOLCOLL_HEADLINE1, // Ueberschrift 1 +RES_POOLCOLL_HEADLINE2, // Ueberschrift 2 +RES_POOLCOLL_HEADLINE3, // Ueberschrift 3 +RES_POOLCOLL_HEADLINE4, // Ueberschrift 4 +RES_POOLCOLL_HEADLINE5, // Ueberschrift 5 +RES_POOLCOLL_HEADLINE6, // Ueberschrift 6 +RES_POOLCOLL_HEADLINE7, // Ueberschrift 7 +RES_POOLCOLL_HEADLINE8, // Ueberschrift 8 +RES_POOLCOLL_HEADLINE9, // Ueberschrift 9 +RES_POOLCOLL_HEADLINE10, // Ueberschrift 10 + +RES_POOLCOLL_TEXT_END, + + +// Gruppe Listen +RES_POOLCOLL_LISTS_BEGIN = COLL_LISTS_BITS, + +RES_POOLCOLL_NUMBUL_BASE = RES_POOLCOLL_LISTS_BEGIN, // Basis-Liste + + // Untergruppe Nummerierung +RES_POOLCOLL_NUM_LEVEL1S, // Start Level1 +RES_POOLCOLL_NUM_LEVEL1, // 1. Level +RES_POOLCOLL_NUM_LEVEL1E, // Ende Level1 +RES_POOLCOLL_NUM_NONUM1, // keine Nummerierung +RES_POOLCOLL_NUM_LEVEL2S, // Start 2. Level +RES_POOLCOLL_NUM_LEVEL2, // 2. Level +RES_POOLCOLL_NUM_LEVEL2E, // Ende 2. Level +RES_POOLCOLL_NUM_NONUM2, // keine Nummerierung +RES_POOLCOLL_NUM_LEVEL3S, // Start 3. Level +RES_POOLCOLL_NUM_LEVEL3, // 3. Level +RES_POOLCOLL_NUM_LEVEL3E, // Ende 3. Level +RES_POOLCOLL_NUM_NONUM3, // keine Nummerierung +RES_POOLCOLL_NUM_LEVEL4S, // Start 4. Level +RES_POOLCOLL_NUM_LEVEL4, // 4. Level +RES_POOLCOLL_NUM_LEVEL4E, // Ende 4. Level +RES_POOLCOLL_NUM_NONUM4, // keine Nummerierung +RES_POOLCOLL_NUM_LEVEL5S, // Start 5. Level +RES_POOLCOLL_NUM_LEVEL5, // 5. Level +RES_POOLCOLL_NUM_LEVEL5E, // Ende 5. Level +RES_POOLCOLL_NUM_NONUM5, // keine Nummerierung + + // Untergruppe Aufzaehlung +RES_POOLCOLL_BUL_LEVEL1S, // Start Level1 +RES_POOLCOLL_BUL_LEVEL1, // 1. Level +RES_POOLCOLL_BUL_LEVEL1E, // Ende Level1 +RES_POOLCOLL_BUL_NONUM1, // keine Nummerierung +RES_POOLCOLL_BUL_LEVEL2S, // Start 2. Level +RES_POOLCOLL_BUL_LEVEL2, // 2. Level +RES_POOLCOLL_BUL_LEVEL2E, // Ende 2. Level +RES_POOLCOLL_BUL_NONUM2, // keine Nummerierung +RES_POOLCOLL_BUL_LEVEL3S, // Start 3. Level +RES_POOLCOLL_BUL_LEVEL3, // 3. Level +RES_POOLCOLL_BUL_LEVEL3E, // Ende 3. Level +RES_POOLCOLL_BUL_NONUM3, // keine Nummerierung +RES_POOLCOLL_BUL_LEVEL4S, // Start 4. Level +RES_POOLCOLL_BUL_LEVEL4, // 4. Level +RES_POOLCOLL_BUL_LEVEL4E, // Ende 4. Level +RES_POOLCOLL_BUL_NONUM4, // keine Nummerierung +RES_POOLCOLL_BUL_LEVEL5S, // Start 5. Level +RES_POOLCOLL_BUL_LEVEL5, // 5. Level +RES_POOLCOLL_BUL_LEVEL5E, // Ende 5. Level +RES_POOLCOLL_BUL_NONUM5, // keine Nummerierung + +RES_POOLCOLL_LISTS_END, + + +// Sonderbereiche +RES_POOLCOLL_EXTRA_BEGIN = COLL_EXTRA_BITS, + + // Untergruppe Header +RES_POOLCOLL_HEADER = RES_POOLCOLL_EXTRA_BEGIN, // Header Left&Right +RES_POOLCOLL_HEADERL, // Header Left +RES_POOLCOLL_HEADERR, // Header Right + + // Untergruppe Footer +RES_POOLCOLL_FOOTER, // Footer Left&Right +RES_POOLCOLL_FOOTERL, // Footer Left +RES_POOLCOLL_FOOTERR, // Footer Right + + // Untergruppe Tabelle +RES_POOLCOLL_TABLE, // Tabelle "Inhalt" +RES_POOLCOLL_TABLE_HDLN, // Tabellen-Headline + + + // Untergruppe Beschriftung +RES_POOLCOLL_LABEL, // Beschriftung-Basis +RES_POOLCOLL_LABEL_ABB, // Beschriftung-Abbildung +RES_POOLCOLL_LABEL_TABLE, // Beschriftung-Tabelle +RES_POOLCOLL_LABEL_FRAME, // Beschriftung-Rahmen + + // sonstiges +RES_POOLCOLL_FRAME, // Rahmen +RES_POOLCOLL_FOOTNOTE, // Fussnoten +RES_POOLCOLL_JAKETADRESS, // UmschlagAdresse +RES_POOLCOLL_SENDADRESS, // AbsenderAdresse +RES_POOLCOLL_ENDNOTE, // Endnoten + +RES_POOLCOLL_LABEL_DRAWING, // Beschriftung-Zeichen-Objekte +RES_POOLCOLL_EXTRA_END, + + +// Gruppe Verzeichnisse +RES_POOLCOLL_REGISTER_BEGIN = COLL_REGISTER_BITS, + +RES_POOLCOLL_REGISTER_BASE = RES_POOLCOLL_REGISTER_BEGIN, // Basis-Verzeichnis + + // Untergruppe Index-Verzeichnisse +RES_POOLCOLL_TOX_IDXH, // Header +RES_POOLCOLL_TOX_IDX1, // 1. Ebene +RES_POOLCOLL_TOX_IDX2, // 2. Ebene +RES_POOLCOLL_TOX_IDX3, // 3. Ebene +RES_POOLCOLL_TOX_IDXBREAK, // Trenner + + // Untergruppe Inhalts-Verzeichnisse +RES_POOLCOLL_TOX_CNTNTH, // Header +RES_POOLCOLL_TOX_CNTNT1, // 1. Ebene +RES_POOLCOLL_TOX_CNTNT2, // 2. Ebene +RES_POOLCOLL_TOX_CNTNT3, // 3. Ebene +RES_POOLCOLL_TOX_CNTNT4, // 4. Ebene +RES_POOLCOLL_TOX_CNTNT5, // 5. Ebene + + // Untergruppe Benutzer-Verzeichnisse: +RES_POOLCOLL_TOX_USERH, // Header +RES_POOLCOLL_TOX_USER1, // 1. Ebene +RES_POOLCOLL_TOX_USER2, // 2. Ebene +RES_POOLCOLL_TOX_USER3, // 3. Ebene +RES_POOLCOLL_TOX_USER4, // 4. Ebene +RES_POOLCOLL_TOX_USER5, // 5. Ebene + + +RES_POOLCOLL_TOX_CNTNT6, // Inhalt 6. Ebene +RES_POOLCOLL_TOX_CNTNT7, // Inhalt 7. Ebene +RES_POOLCOLL_TOX_CNTNT8, // Inhalt 8. Ebene +RES_POOLCOLL_TOX_CNTNT9, // Inhalt 9. Ebene +RES_POOLCOLL_TOX_CNTNT10, // Inhalt 10. Ebene + +// illustrations index +RES_POOLCOLL_TOX_ILLUSH, // illustrations header +RES_POOLCOLL_TOX_ILLUS1, // illustrations all levels + +// object index +RES_POOLCOLL_TOX_OBJECTH, // objects header +RES_POOLCOLL_TOX_OBJECT1, // objects all levels + +// tables index +RES_POOLCOLL_TOX_TABLESH, // tables header +RES_POOLCOLL_TOX_TABLES1, // tables all levels + +// index of authorities +RES_POOLCOLL_TOX_AUTHORITIESH, // authorities header +RES_POOLCOLL_TOX_AUTHORITIES1, // authorities all levels + +// user index 6..10 +RES_POOLCOLL_TOX_USER6, // level 6 +RES_POOLCOLL_TOX_USER7, // level 7 +RES_POOLCOLL_TOX_USER8, // level 8 +RES_POOLCOLL_TOX_USER9, // level 9 +RES_POOLCOLL_TOX_USER10, // level 10 + +RES_POOLCOLL_REGISTER_END, + + +// Gruppe Kapitel/Dokument +RES_POOLCOLL_DOC_BEGIN = COLL_DOC_BITS, + +RES_POOLCOLL_DOC_TITEL = RES_POOLCOLL_DOC_BEGIN, // Doc. Titel +RES_POOLCOLL_DOC_SUBTITEL, // Doc. UnterTitel + +RES_POOLCOLL_DOC_END, + +// Gruppe HTML-Vorlagen +RES_POOLCOLL_HTML_BEGIN = COLL_HTML_BITS, + +RES_POOLCOLL_HTML_BLOCKQUOTE = RES_POOLCOLL_HTML_BEGIN, +RES_POOLCOLL_HTML_PRE, +RES_POOLCOLL_HTML_HR, +RES_POOLCOLL_HTML_DD, +RES_POOLCOLL_HTML_DT, + +RES_POOLCOLL_HTML_END + +// Ende der Textformat-Vorlagen Sammlung +}; + + + +// erfrage den definierten Parent zu einer POOL-Id +// returnt: 0 -> Standard +// USHRT_MAX -> kein Parent +// sonst -> den Parent +USHORT GetPoolParent( USHORT nId ); + +// erfrage zu einer PoolId den Namen (steht im poolfmt.cxx) +class String; +String& GetDocPoolNm( USHORT nId, String& rFillNm ); + +inline BOOL IsConditionalByPoolId(USHORT nId) + { + return RES_POOLCOLL_TEXT == nId; + } +// die Id's fuer die Grafik-Formate +/*enum RES_POOL_GRFFMT_TYPE +{ +RES_POOLGRF_BEGIN = RES_POOLPAR_END, +RES_POOLGRF_1 = RES_POOLGRF_BEGIN, +RES_POOLGRF_END +}; +*/ + +#endif diff --git a/sw/inc/pvprtdat.hxx b/sw/inc/pvprtdat.hxx new file mode 100644 index 000000000000..91f784a3ee7d --- /dev/null +++ b/sw/inc/pvprtdat.hxx @@ -0,0 +1,120 @@ +/************************************************************************* + * + * $RCSfile: pvprtdat.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _PVPRTDAT_HXX +#define _PVPRTDAT_HXX + + +#ifndef _SOLAR_H +#include +#endif + +class SwPagePreViewPrtData +{ + ULONG nLeftSpace, nRightSpace, nTopSpace, nBottomSpace, + nHorzSpace, nVertSpace; + BYTE nRow, nCol; + BOOL bLandscape : 1; + BOOL bStretch : 1; +public: + SwPagePreViewPrtData() + : nLeftSpace(0), nRightSpace(0), nTopSpace(0), nBottomSpace(0), + nHorzSpace(0), nVertSpace(0), nRow(1), nCol(1), + bLandscape(0),bStretch(0) + {} + + ULONG GetLeftSpace() const { return nLeftSpace; } + void SetLeftSpace( ULONG n ) { nLeftSpace = n; } + + ULONG GetRightSpace() const { return nRightSpace; } + void SetRightSpace( ULONG n ) { nRightSpace = n; } + + ULONG GetTopSpace() const { return nTopSpace; } + void SetTopSpace( ULONG n ) { nTopSpace = n; } + + ULONG GetBottomSpace() const { return nBottomSpace; } + void SetBottomSpace( ULONG n ) { nBottomSpace = n; } + + ULONG GetHorzSpace() const { return nHorzSpace; } + void SetHorzSpace( ULONG n ) { nHorzSpace = n; } + + ULONG GetVertSpace() const { return nVertSpace; } + void SetVertSpace( ULONG n ) { nVertSpace = n; } + + BYTE GetRow() const { return nRow; } + void SetRow(BYTE n ) { nRow = n; } + + BYTE GetCol() const { return nCol; } + void SetCol( BYTE n ) { nCol = n; } + + BOOL GetLandscape() const { return bLandscape; } + void SetLandscape( BOOL b ) { bLandscape = b; } + + // JP 19.08.98: wird zur Zeit nicht ausgewertet, weil der Font sich + // nicht enstprechend stretch laesst. + BOOL GetStretch() const { return bStretch; } + void SetStretch( BOOL b ) { bStretch = b; } +}; + + +#endif + + diff --git a/sw/inc/rcid.hrc b/sw/inc/rcid.hrc new file mode 100644 index 000000000000..11faf7eb934e --- /dev/null +++ b/sw/inc/rcid.hrc @@ -0,0 +1,316 @@ +/************************************************************************* + * + * $RCSfile: rcid.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _RDIC_HRC +#define _RDIC_HRC + +#ifndef _SFXSIDS_HRC //autogen +#include +#endif + +// ---------------------------------------------------------------- +// Bereiche fuer die UI-Verzeichnisse +// ---------------------------------------------------------------- + +#define RC_BASE RID_SW_START // aus solar.hrc + +#define RC_APP RC_BASE +#define RC_DIALOG (RC_BASE + 200) +#define RC_DOCVW (RC_BASE + 300) +#define RC_WEB (RC_BASE + 400) +#define RC_GLOBDOC (RC_BASE + 500) +#define RC_VIEW (RC_BASE + 600) +#define RC_CHRDLG (RC_BASE + 700) +#define RC_RIBBAR (RC_BASE + 720) +#define RC_GLOBALS (RC_BASE + 820) +#define RC_FMTUI (RC_BASE + 920) +#define RC_FRMDLG (RC_BASE + 1000) +#define RC_FLDDLG (RC_BASE + 1100) +#define RC_UTLUI (RC_BASE + 1250) +#define RC_ATTR (RC_BASE + 1350) +#define RC_TABLE (RC_BASE + 1450) +#define RC_CONFIG (RC_BASE + 1550) +#define RC_MISC (RC_BASE + 1650) +#define RC_WRTSH (RC_BASE + 1750) +#define RC_INDEX (RC_BASE + 1950) +#define RC_DBUI (RC_BASE + 2050) +#define RC_DOCHDL (RC_BASE + 2150) +#define RC_POOLCHRFMT (RC_BASE + 2250) +#define RC_POOLHTMLCHRFMT (RC_BASE + 2290) +#define RC_POOLFRMFMT (RC_BASE + 2330) +#define RC_POOLTXTCOLL (RC_BASE + 2360) +#define RC_POOLPAGEDESC (RC_BASE + 2550) +#define RC_POOLNUMRULE (RC_BASE + 2650) +#define RC_ENVELP (RC_BASE + 2750) +#define RC_STATLIN_STR (RC_BASE + 2850) +#define RC_COMMON_CORE (RC_BASE + 2950) +#define RC_WIZARD (RC_BASE + 3050) +#define RC_POPUPS (RC_BASE + 3150) +#define RC_SHELLS (RC_BASE + 3250) +#define RC_CFGITEMS (RC_BASE + 3350) +#define RC_LINGU (RC_BASE + 3450) +#define RC_POOLCHRFMT_PRGM (RC_BASE + 3550) +#define RC_POOLHTMLCHRFMT_PRGM (RC_BASE + 3590) +#define RC_POOLFRMFMT_PRGM (RC_BASE + 3630) +#define RC_POOLTXTCOLL_PRGM (RC_BASE + 3660) +#define RC_POOLPAGEDESC_PRGM (RC_BASE + 3850) +#define RC_POOLNUMRULE_PRGM (RC_BASE + 3900) + +/*-------------------------------------------------------------------- + Beschreibung: Bereiche ausspannen + --------------------------------------------------------------------*/ + +// App-Verzeichnis +#define RC_APP_BEGIN RC_APP +#define RC_APP_END (RC_APP_BEGIN + 199) + + + +// Dialog-Verzeichnis +#define RC_DIALOG_BEGIN RC_DIALOG +#define RC_DIALOG_END (RC_DIALOG_BEGIN + 99) + +// Editwin & Co +#define RC_DOCVW_BEGIN RC_DOCVW +#define RC_DOCVW_END (RC_DOCVW_BEGIN + 99) + +// SW/Web +#define RC_WEB_BEGIN RC_WEB +#define RC_WEB_END (RC_WEB_BEGIN + 199) + +//Globaldocument +#define RC_GLOBDOC_BEGIN RC_GLOBDOC +#define RC_GLOBDOC_END (RC_GLOBDOC_BEGIN + 99) + +// UI-View +#define RC_VIEW_BEGIN RC_VIEW +#define RC_VIEW_END (RC_VIEW_BEGIN + 99) + +// Zeichen Absatz Tab-Dialog +#define RC_CHRDLG_BEGIN RC_CHRDLG +#define RC_CHRDLG_END (RC_CHRDLG_BEGIN + 9) + +// Unsere Shell +#define RC_WRTSH_BEGIN RC_WRTSH +#define RC_WRTSH_END (RC_WRTSH_BEGIN + 199) + +// Verzeichnisse +#define RC_INDEX_BEGIN RC_INDEX +#define RC_INDEX_END (RC_INDEX + 99) + +// +#define RC_RIBBAR_BEGIN RC_RIBBAR +#define RC_RIBBAR_END (RC_RIBBAR_BEGIN + 99) + +// globale Ressourcen +#define RC_GLOBALS_BEGIN RC_GLOBALS +#define RC_GLOBALS_END (RC_GLOBALS_BEGIN + 99) + +// Format-Vorlagen +#define RC_FMTUI_BEGIN RC_FMTUI +#define RC_FMTUI_END (RC_FMTUI_BEGIN + 69) + + +// Grafik Dialoge +#define RC_GRFDLG_BEGIN RC_GRFDLG +#define RC_GRFDLG_END (RC_GRFDLG_BEGIN + 99) + +// ???? +#define RC_FSTDLG_BEGIN RC_FSTDLG +#define RC_FSTDLG_END (RC_FSTDLG_BEGIN + 99) + +// Rahmen Dialoge +#define RC_FRMDLG_BEGIN RC_FRMDLG +#define RC_FRMDLG_END (RC_FRMDLG_BEGIN + 99) + +// Feld Dialoge +#define RC_FLDDLG_BEGIN RC_FLDDLG +#define RC_FLDDLG_END (RC_FLDDLG_BEGIN + 149) + +// Utilities UI +#define RC_UTLUI_BEGIN RC_UTLUI +#define RC_UTLUI_END (RC_UTLUI + 99) + +// Utilities UI-Attribute +#define RC_ATTR_BEGIN RC_ATTR +#define RC_ATTR_END (RC_ATTR + 99) + +// Tabellen +#define RC_TABLE_BEGIN RC_TABLE +#define RC_TABLE_END (RC_TABLE + 99) + +// Konfiguration +#define RC_CONFIG_BEGIN RC_CONFIG +#define RC_CONFIG_END (RC_CONFIG + 99) + + +// Verschiedenes +#define RC_MISC_BEGIN RC_MISC +#define RC_MISC_END (RC_MISC + 99) + +// DBMgr +#define RC_DBUI_BEGIN RC_DBUI +#define RC_DBUI_END (RC_DBUI + 99) + +// Der Rest der Imp-Klassen +#define RC_DOCHDL_BEGIN RC_DOCHDL +#define RC_DOCHDL_END (RC_DOCHDL + 99) + +// Zeichenvorlagen +#define RC_POOLCHRFMT_BEGIN RC_POOLCHRFMT +#define RC_POOLCHRFMT_END (RC_POOLCHRFMT + 29) +#define RC_POOLCHRFMT_HTML_BEGIN RC_POOLHTMLCHRFMT +#define RC_POOLCHRFMT_HTML_END (RC_POOLHTMLCHRFMT+ 30) + +#define RC_POOLCHRFMT_PRGM_BEGIN RC_POOLCHRFMT_PRGM +#define RC_POOLCHRFMT_PRGM_END (RC_POOLCHRFMT_PRGM + 29) +#define RC_POOLCHRFMT_PRGM_HTML_BEGIN RC_POOLHTMLCHRFMT_PRGM +#define RC_POOLCHRFMT_PRGM_HTML_END (RC_POOLHTMLCHRFMT_PRGM+ 30) + +// Rahmenvorlagen +#define RC_POOLFRMFMT_BEGIN RC_POOLFRMFMT +#define RC_POOLFRMFMT_END (RC_POOLFRMFMT + 20) + +#define RC_POOLFRMFMT_PRGM_BEGIN RC_POOLFRMFMT_PRGM +#define RC_POOLFRMFMT_PRGM_END (RC_POOLFRMFMT_PRGM + 20) + +// Collections +#define RC_POOLTXTCOLL_BEGIN RC_POOLTXTCOLL + +#define RC_POOLCOLL_TEXT_BEGIN RC_POOLTXTCOLL +#define RC_POOLCOLL_TEXT_END (RC_POOLTXTCOLL + 19) +#define RC_POOLCOLL_LISTS_BEGIN (RC_POOLTXTCOLL + 20) +#define RC_POOLCOLL_LISTS_END (RC_POOLTXTCOLL + 69) +#define RC_POOLCOLL_EXTRA_BEGIN (RC_POOLTXTCOLL + 70) +#define RC_POOLCOLL_EXTRA_END (RC_POOLTXTCOLL + 89) +#define RC_POOLCOLL_REGISTER_BEGIN (RC_POOLTXTCOLL + 90) +#define RC_POOLCOLL_REGISTER_END (RC_POOLTXTCOLL + 119) +#define RC_POOLCOLL_DOC_BEGIN (RC_POOLTXTCOLL + 130) +#define RC_POOLCOLL_DOC_END (RC_POOLTXTCOLL + 139) +#define RC_POOLCOLL_HTML_BEGIN (RC_POOLTXTCOLL + 140) +#define RC_POOLCOLL_HTML_END (RC_POOLTXTCOLL + 169) + +#define RC_POOLTXTCOLL_END RC_POOLCOLL_HTML_END + +#define RC_POOLCOLL_PRGM_PRGM__BEGIN RC_POOLTXTCOLL_PRGM + +#define RC_POOLCOLL_PRGM_TEXT_BEGIN RC_POOLTXTCOLL_PRGM +#define RC_POOLCOLL_PRGM_TEXT_END (RC_POOLTXTCOLL_PRGM + 19) +#define RC_POOLCOLL_PRGM_LISTS_BEGIN (RC_POOLTXTCOLL_PRGM + 20) +#define RC_POOLCOLL_PRGM_LISTS_END (RC_POOLTXTCOLL_PRGM + 69) +#define RC_POOLCOLL_PRGM_EXTRA_BEGIN (RC_POOLTXTCOLL_PRGM + 70) +#define RC_POOLCOLL_PRGM_EXTRA_END (RC_POOLTXTCOLL_PRGM + 89) +#define RC_POOLCOLL_PRGM_REGISTER_BEGIN (RC_POOLTXTCOLL_PRGM + 90) +#define RC_POOLCOLL_PRGM_REGISTER_END (RC_POOLTXTCOLL_PRGM + 119) +#define RC_POOLCOLL_PRGM_DOC_BEGIN (RC_POOLTXTCOLL_PRGM + 130) +#define RC_POOLCOLL_PRGM_DOC_END (RC_POOLTXTCOLL_PRGM + 139) +#define RC_POOLCOLL_PRGM_HTML_BEGIN (RC_POOLTXTCOLL_PRGM + 140) +#define RC_POOLCOLL_PRGM_HTML_END (RC_POOLTXTCOLL_PRGM + 169) + +#define RC_POOLTXTCOLL_PRGM__END RC_POOLCOLL_PRGM_HTML_END + +// Poolvorlagen Seite +#define RC_POOLPAGEDESC_BEGIN RC_POOLPAGEDESC +#define RC_POOLPAGEDESC_END (RC_POOLPAGEDESC + 10) + +#define RC_POOLPAGEDESC_PRGM_BEGIN RC_POOLPAGEDESC_PRGM +#define RC_POOLPAGEDESC_PRGM_END (RC_POOLPAGEDESC_PRGM + 10) + +// Poolvorlagen Numerierung +#define RC_POOLNUMRULE_BEGIN RC_POOLNUMRULE +#define RC_POOLNUMRULE_END (RC_POOLNUMRULE + 10) + +#define RC_POOLNUMRULE_PRGM_BEGIN RC_POOLNUMRULE_PRGM +#define RC_POOLNUMRULE_PRGM_END (RC_POOLNUMRULE_PRGM + 10) + +// Envelp-Verzeichnis +#define RC_ENVELP_BEGIN (RC_ENVELP ) +#define RC_ENVELP_END (RC_ENVELP + 99) + +// Statuszeile mit Laufbalken +#define RC_STATLIN_STR_BEGIN (RC_STATLIN_STR) +#define RC_STATLIN_STR_END (RC_STATLIN_STR + 49) + +// Gemeinsame Core-Strings +#define RC_COMCORE_BEGIN (RC_COMMON_CORE) +#define RC_COMCORE_END (RC_COMMON_CORE + 49) + +// Wizzards +#define RC_WIZARD_BEGIN RC_WIZARD +#define RC_WIZARD_END (RC_WIZARD + 99) + +// Shell-Verzeichnis +#define RC_SHELLS_BEGIN RC_SHELLS +#define RC_SHELLS_END (RC_SHELLS + 99) + +// PopUpMenu's +#define RC_POPUPS_BEGIN RC_POPUPS +#define RC_POPUPS_END (RC_POPUPS + 99) + +// Strings fuer ConfigItems in div. Verzeichnissen +#define RC_CFGITEMS_BEGIN RC_CFGITEMS +#define RC_CFGITEMS_END (RC_CFGITEMS + 99) + +// Lingu +#define RC_LINGU_BEGIN RC_LINGU +#define RC_LINGU_END (RC_LINGU + 99) + + +#endif diff --git a/sw/inc/redline.hxx b/sw/inc/redline.hxx new file mode 100644 index 000000000000..51b54f0e1630 --- /dev/null +++ b/sw/inc/redline.hxx @@ -0,0 +1,312 @@ +/************************************************************************* + * + * $RCSfile: redline.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _REDLINE_HXX +#define _REDLINE_HXX + +#ifndef _DATETIME_HXX //autogen +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif + +#ifndef _PAM_HXX +#include "pam.hxx" +#endif +#ifndef _REDLENUM_HXX +#include "redlenum.hxx" // enums +#endif + +class SfxItemSet; + +class SwRedlineExtraData +{ + SwRedlineExtraData( const SwRedlineExtraData& ); + SwRedlineExtraData& operator=( const SwRedlineExtraData& ); + +protected: + SwRedlineExtraData() {} + +public: + virtual ~SwRedlineExtraData(); + virtual SwRedlineExtraData* CreateNew() const = 0; + + virtual void Accept( SwPaM& rPam ) const; + virtual void Reject( SwPaM& rPam ) const; + virtual int operator == ( const SwRedlineExtraData& ) const; +}; + +class SwRedlineExtraData_FmtColl : public SwRedlineExtraData +{ + String sFmtNm; + SfxItemSet* pSet; + USHORT nPoolId; +public: + SwRedlineExtraData_FmtColl( const String& rColl, USHORT nPoolFmtId, + const SfxItemSet* pSet = 0 ); + virtual ~SwRedlineExtraData_FmtColl(); + virtual SwRedlineExtraData* CreateNew() const; + virtual void Reject( SwPaM& rPam ) const; + virtual int operator == ( const SwRedlineExtraData& ) const; + + void SetItemSet( const SfxItemSet& rSet ); +}; + +class SwRedlineExtraData_Format : public SwRedlineExtraData +{ + USHORT nWhich; +public: + SwRedlineExtraData_Format( USHORT nWhich ); + virtual SwRedlineExtraData* CreateNew() const; + virtual void Reject( SwPaM& rPam ) const; + virtual int operator == ( const SwRedlineExtraData& ) const; +}; + + +class SwRedlineData +{ + friend class SwRedline; + SwRedlineData* pNext; // Verweis auf weitere Daten + SwRedlineExtraData* pExtraData; + + String sComment; + DateTime aStamp; + SwRedlineType eType; + USHORT nAuthor, nSeqNo; + +public: + SwRedlineData( SwRedlineType eT, USHORT nAut ); + SwRedlineData( const SwRedlineData& rCpy, BOOL bCpyNext = TRUE ); + + // fuer sw3io: pNext/pExtraData gehen in eigenen Besitz ueber! + SwRedlineData( SwRedlineType eT, USHORT nAut, const DateTime& rDT, + const String& rCmnt, SwRedlineData* pNxt, + SwRedlineExtraData* pExtraData = 0 ); + + ~SwRedlineData(); + + int operator==( const SwRedlineData& rCmp ) const + { + return nAuthor == rCmp.nAuthor && + eType == rCmp.eType && + sComment == rCmp.sComment && + (( !pNext && !rCmp.pNext ) || + ( pNext && rCmp.pNext && *pNext == *rCmp.pNext )) && + (( !pExtraData && !rCmp.pExtraData ) || + ( pExtraData && rCmp.pExtraData && + *pExtraData == *rCmp.pExtraData )); + } + int operator!=( const SwRedlineData& rCmp ) const + { return !operator==( rCmp ); } + + SwRedlineType GetType() const + { return SwRedlineType( eType & REDLINE_NO_FLAG_MASK); } + SwRedlineType GetRealType() const { return eType; } + USHORT GetAuthor() const { return nAuthor; } + const String& GetComment() const { return sComment; } + const DateTime& GetTimeStamp() const { return aStamp; } + inline const SwRedlineData* Next() const{ return pNext; } + + void SetTimeStamp( const DateTime& rDT) + { aStamp = rDT; aStamp.SetSec( 0 ); aStamp.Set100Sec( 0 ); } + void SetComment( const String& rS ) { sComment = rS; } + void SetAutoFmtFlag() + { eType = SwRedlineType( eType | REDLINE_FORM_AUTOFMT ); } + int CanCombine( const SwRedlineData& rCmp ) const + { + return nAuthor == rCmp.nAuthor && + eType == rCmp.eType && + sComment == rCmp.sComment && + GetTimeStamp() == rCmp.GetTimeStamp() && + (( !pNext && !rCmp.pNext ) || + ( pNext && rCmp.pNext && + pNext->CanCombine( *rCmp.pNext ))) && + (( !pExtraData && !rCmp.pExtraData ) || + ( pExtraData && rCmp.pExtraData && + *pExtraData == *rCmp.pExtraData )); + } + + // ExtraData wird kopiert, der Pointer geht also NICHT in den Besitz + // des RedlineObjectes! + void SetExtraData( const SwRedlineExtraData* pData ); + const SwRedlineExtraData* GetExtraData() const { return pExtraData; } + + // fuers UI-seitige zusammenfassen von Redline-Actionen. Wird z.Z. nur + // fuers Autoformat mit Redline benoetigt. Der Wert != 0 bedeutet dabei, + // das es noch weitere geben kann! + USHORT GetSeqNo() const { return nSeqNo; } + void SetSeqNo( USHORT nNo ) { nSeqNo = nNo; } +}; + + +class SwRedline : public SwPaM +{ + SwRedlineData* pRedlineData; + SwNodeIndex* pCntntSect; + BOOL bDelLastPara : 1; + BOOL bIsLastParaDelete : 1; + BOOL bIsVisible : 1; + + void MoveToSection(); + void CopyToSection(); + void DelCopyOfSection(); + void MoveFromSection(); + +public: + SwRedline( SwRedlineType eType, const SwPaM& rPam ); + SwRedline( SwRedlineType eTyp, const SwPosition& rPos ); + SwRedline( const SwRedlineData& rData, const SwPaM& rPam ); + SwRedline( const SwRedlineData& rData, const SwPosition& rPos ); + // fuer sw3io: pData geht in eigenen Besitz ueber! + SwRedline( SwRedlineData* pData, const SwPosition& rPos, BOOL bVsbl, + BOOL bDelLP, BOOL bIsPD ) : + SwPaM( rPos ), pCntntSect( 0 ), pRedlineData( pData ), + bIsVisible( bVsbl ), bDelLastPara( bDelLP ), bIsLastParaDelete( bIsPD ) + {} + SwRedline( const SwRedline& ); + virtual ~SwRedline(); + + SwNodeIndex* GetContentIdx() const { return pCntntSect; } + // fuers Undo + void SetContentIdx( const SwNodeIndex* ); + + BOOL IsVisible() const { return bIsVisible; } + BOOL IsDelLastPara() const { return bDelLastPara; } + BOOL IsLastParaDelete() const { return bIsLastParaDelete; } + + // das BOOL besagt, ob nach dem setzen der Pos kein Bereich mehr + // aufgespannt ist. -> TRUE, ansonten Bereich und FALSE + void SetStart( const SwPosition& rPos, SwPosition* pSttPtr = 0 ) + { + if( !pSttPtr ) pSttPtr = Start(); + *pSttPtr = rPos; + } + void SetEnd( const SwPosition& rPos, SwPosition* pEndPtr = 0 ) + { + if( !pEndPtr ) pEndPtr = End(); + *pEndPtr = rPos; + } + // liegt eine gueltige Selektion vor? + BOOL HasValidRange() const; + + USHORT GetAuthor() const { return pRedlineData->GetAuthor(); } + const DateTime& GetTimeStamp() const { return pRedlineData->GetTimeStamp(); } + SwRedlineType GetType() const { return pRedlineData->GetType(); } + SwRedlineType GetRealType() const { return pRedlineData->GetRealType(); } + const SwRedlineData& GetRedlineData() const { return *pRedlineData; } + int operator==( const SwRedlineData& rCmp ) const + { return *pRedlineData == rCmp; } + int operator!=( const SwRedlineData& rCmp ) const + { return *pRedlineData != rCmp; } + void SetAutoFmtFlag() { pRedlineData->SetAutoFmtFlag(); } + + USHORT GetStackCount() const; + USHORT GetAuthor( USHORT nPos ) const; + const String& GetAuthorString( USHORT nPos = 0 ) const; + const DateTime& GetTimeStamp( USHORT nPos ) const; + SwRedlineType GetRealType( USHORT nPos ) const; + SwRedlineType GetType( USHORT nPos ) const + { return SwRedlineType( GetRealType( nPos ) & REDLINE_NO_FLAG_MASK); } + const String& GetComment( USHORT nPos ) const; + + const String& GetComment() const { return pRedlineData->GetComment(); } + void SetComment( const String& rS ) { pRedlineData->SetComment( rS ); } + + // ExtraData wird kopiert, der Pointer geht also NICHT in den Besitz + // des RedlineObjectes! + void SetExtraData( const SwRedlineExtraData* pData ) + { pRedlineData->SetExtraData( pData ); } + const SwRedlineExtraData* GetExtraData() const + { return pRedlineData->GetExtraData(); } + + // fuers UI-seitige zusammenfassen von Redline-Actionen. Wird z.Z. nur + // fuers Autoformat mit Redline benoetigt. Der Wert != 0 bedeutet dabei, + // das es noch weitere geben kann! + USHORT GetSeqNo() const { return pRedlineData->GetSeqNo(); } + void SetSeqNo( USHORT nNo ) { pRedlineData->SetSeqNo( nNo ); } + + // Beim Hide/ShowOriginal wird 2 mal ueber die Liste gelaufen, damit + // die Del-Redlines per Copy und Delete versteckt werden. Beim Move + // wird sonst die Attributierung falsch behandelt. + // Alle anderen Aufrufer muessen immer 0 angeben. + void CallDisplayFunc( USHORT nLoop = 0 ); + void Show( USHORT nLoop = 0 ); + void Hide( USHORT nLoop = 0 ); + void ShowOriginal( USHORT nLoop = 0 ); + + void InvalidateRange(); // das Layout anstossen + + BOOL IsOwnRedline( const SwRedline& rRedl ) const + { return GetAuthor() == rRedl.GetAuthor(); } + BOOL CanCombine( const SwRedline& rRedl ) const; + + void PushData( const SwRedline& rRedl, BOOL bOwnAsNext = TRUE ); + BOOL PopData(); + + int operator==( const SwRedline& ) const; + int operator<( const SwRedline& ) const; +}; + + + + + +#endif diff --git a/sw/inc/redlnaut.hxx b/sw/inc/redlnaut.hxx new file mode 100644 index 000000000000..1930c1febe9c --- /dev/null +++ b/sw/inc/redlnaut.hxx @@ -0,0 +1,106 @@ +/************************************************************************* + * + * $RCSfile: redlnaut.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _REDLNAUT_HXX +#define _REDLNAUT_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SV_COLOR_HXX //autogen +#include +#endif + +#include "swtypes.hxx" + +class SfxItemSet; + +class SwRedlineAuthor +{ + String sAuthor; + Color aChgLineColor; + SfxItemSet *pInsAttrSet, *pDelAttrSet, *pFmtAttrSet; + SwHoriOrient eChgLineOrient; + BYTE cDelChar; +public: + SwRedlineAuthor( SwAttrPool& rPool, const String& ); + SwRedlineAuthor( const SwRedlineAuthor& ); + ~SwRedlineAuthor(); + + SwRedlineAuthor& operator=( const SwRedlineAuthor& ); + + const String& GetAuthor() const { return sAuthor; } + + SfxItemSet& GetInsAttrSet() const { return *pInsAttrSet; } + SfxItemSet& GetDelAttrSet() const { return *pDelAttrSet; } + SfxItemSet& GetFmtAttrSet() const { return *pFmtAttrSet; } + + const Color& GetChgLineColor() const { return aChgLineColor; } + void SetChgLineColor( const Color& rCol ) { aChgLineColor = rCol; } + + SwHoriOrient GetChgLineOrient() const { return eChgLineOrient; } + void SetChgLineOrient( SwHoriOrient eVal ) { eChgLineOrient = eVal; } + + BYTE GetDelChar() const { return cDelChar; } + void SetDelChar( BYTE cCh = 0 ) { cDelChar = cCh; } +}; + + +#endif diff --git a/sw/inc/reffld.hxx b/sw/inc/reffld.hxx new file mode 100644 index 000000000000..f48af6c4901e --- /dev/null +++ b/sw/inc/reffld.hxx @@ -0,0 +1,162 @@ +/************************************************************************* + * + * $RCSfile: reffld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _REFFLD_HXX +#define _REFFLD_HXX + +#ifndef _FLDBAS_HXX +#include +#endif + +class SfxPoolItem; +class SwDoc; +class SwTxtAttr; +class SwTxtNode; + +enum REFERENCESUBTYPE +{ + REF_SETREFATTR = 0, + REF_SEQUENCEFLD, + REF_BOOKMARK, + REF_OUTLINE, + REF_FOOTNOTE, + REF_ENDNOTE +}; + +enum REFERENCEMARK +{ + REF_BEGIN, + REF_PAGE = REF_BEGIN, + REF_CHAPTER, + REF_CONTENT, + REF_UPDOWN, + REF_PAGE_PGDESC, + REF_ONLYNUMBER, + REF_ONLYCAPTION, + REF_ONLYSEQNO, + REF_END +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Referenz holen + --------------------------------------------------------------------*/ + +class SwGetRefFieldType : public SwFieldType +{ + SwDoc* pDoc; +public: + SwGetRefFieldType(SwDoc* pDoc ); + virtual SwFieldType* Copy() const; + + SwDoc* GetDoc() const { return pDoc; } + // ueberlagert, um alle Ref-Felder zu updaten + virtual void Modify( SfxPoolItem *, SfxPoolItem * ); + + void MergeWithOtherDoc( SwDoc& rDestDoc ); + + static SwTxtNode* FindAnchor( SwDoc* pDoc, const String& rRefMark, + USHORT nSubType, USHORT nSeqNo, + USHORT* pStt, USHORT* pEnd = 0 ); +}; + +/*-------------------------------------------------------------------- + Beschreibung: Referenzfeld + --------------------------------------------------------------------*/ + +class SwGetRefField : public SwField +{ + String sSetRefName; + String sTxt; + USHORT nSubType; + USHORT nSeqNo; +public: + SwGetRefField( SwGetRefFieldType*, const String& rSetRef, + USHORT nSubType, USHORT nSeqNo, ULONG nFmt ); + + virtual String GetCntnt(BOOL bName = FALSE) const; + virtual String Expand() const; + virtual SwField* Copy() const; + + const String& GetSetRefName() const { return sSetRefName; } + + void UpdateField(); + void SetExpand( const String& rStr ) { sTxt = rStr; } + + // SubType erfragen/setzen + virtual USHORT GetSubType() const; + virtual void SetSubType( USHORT n ); + + // SequenceNo erfragen/setzen (nur fuer REF_SEQUENCEFLD interressant) + USHORT GetSeqNo() const { return nSeqNo; } + void SetSeqNo( USHORT n ) { nSeqNo = n; } + + // Name der Referenz + virtual const String& GetPar1() const; + virtual void SetPar1(const String& rStr); + + virtual String GetPar2() const; + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + + +#endif // _REFFLD_HXX + diff --git a/sw/inc/ring.hxx b/sw/inc/ring.hxx new file mode 100644 index 000000000000..750c7ec1a007 --- /dev/null +++ b/sw/inc/ring.hxx @@ -0,0 +1,82 @@ +/************************************************************************* + * + * $RCSfile: ring.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _RING_HXX +#define _RING_HXX + +class Ring +{ + Ring *pNext; + Ring* pPrev; // zur Optimierung, damit das ein/ausketten schneller geht! + +protected: + Ring() { pNext = this; pPrev = this; } + Ring( Ring * ); +public: + virtual ~Ring(); + void MoveTo( Ring *pDestRing ); + void MoveRingTo( Ring *pDestRing ); + + Ring* GetNext() const { return pNext; } + Ring* GetPrev() const { return pPrev; } +}; + + +#endif diff --git a/sw/inc/rolbck.hxx b/sw/inc/rolbck.hxx new file mode 100644 index 000000000000..434d3edc0462 --- /dev/null +++ b/sw/inc/rolbck.hxx @@ -0,0 +1,433 @@ +/************************************************************************* + * + * $RCSfile: rolbck.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _ROLBCK_HXX +#define _ROLBCK_HXX + +#ifndef _SOLAR_H +#include +#endif +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_USHORTS +#define _SVSTDARR_USHORTSSORT +#include +#endif + +#ifndef _SFXITEMSET_HXX +#include +#endif + +//Nur die History anziehen, um das docnew.cxx gegen die CLOOK's zu behaupten. + +class SwDoc; +class SwFmt; +class SwFmtColl; +class SwHstryHint; +class SwBookmark; +class SwTxtAttr; +class SfxPoolItem; +class SwTxtNode; +class SwCntntNode; +class SwUndoSaveSection; +class SwTxtFtn; +class SwTxtFlyCnt; +class SwUndoDelLayFmt; +class SwFlyFrmFmt; +class SwFmtFld; +class SwTxtFld; +class SwFieldType; +class SwTxtTOXMark; +class SwTxtRefMark; +class SwFrmFmt; +class SwNodeIndex; +class SwpHints; +class SwFmtChain; +class SwNode; + +#ifndef ROLBCK_HISTORY_ONLY + +#ifndef _TOX_HXX +#include +#endif + +#ifndef PRODUCT +class Writer; +#define OUT_HSTR_HINT( name ) \ + friend Writer& OutUndo_Hstr_ ## name( Writer&, const SwHstryHint& ); +#else +#define OUT_HSTR_HINT( name ) +#endif + +enum HISTORY_HINT { + HSTRY_SETFMTHNT, + HSTRY_RESETFMTHNT, + HSTRY_SETTXTHNT, + HSTRY_SETTXTFLDHNT, + HSTRY_SETREFMARKHNT, + HSTRY_SETTOXMARKHNT, + HSTRY_RESETTXTHNT, + HSTRY_SETFTNHNT, + HSTRY_CHGFMTCOLL, + HSTRY_FLYCNT, + HSTRY_BOOKMARK, + HSTRY_SETATTRSET, + HSTRY_RESETATTRSET, + HSTRY_CHGFLYANCHOR, + HSTRY_CHGFLYCHAIN, + HSTRY_END +}; +class SwHstryHint +{ + HISTORY_HINT eWhichId; +public: + SwHstryHint( HISTORY_HINT eWh ) : eWhichId( eWh ) {} + virtual ~SwHstryHint() {} // jetzt inline + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ) = 0; + HISTORY_HINT Which() const { return eWhichId; } +}; + +class SwSetFmtHint : public SwHstryHint +{ + SfxPoolItem* pAttr; + ULONG nNode; + USHORT nSetStt; + BYTE nNumLvl; + BOOL bNumStt; +public: + SwSetFmtHint( const SfxPoolItem* pFmtHt, ULONG nNode ); + virtual ~SwSetFmtHint(); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(SetFmtHnt) +}; + +class SwResetFmtHint : public SwHstryHint +{ + ULONG nNode; + USHORT nWhich; +public: + SwResetFmtHint( const SfxPoolItem* pFmtHt, ULONG nNode ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(ResetFmtHnt) +}; + +class SwSetTxtHint : public SwHstryHint +{ + SfxPoolItem *pAttr; + ULONG nNode; + xub_StrLen nStart, nEnd; +public: + SwSetTxtHint( /*const*/ SwTxtAttr* pTxtHt, ULONG nNode ); + virtual ~SwSetTxtHint(); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(SetTxtHnt) +}; + +class SwSetTxtFldHint : public SwHstryHint +{ + SwFmtFld* pFld; + SwFieldType* pFldType; + ULONG nNode; + xub_StrLen nPos; + USHORT nFldWhich; +public: + SwSetTxtFldHint( SwTxtFld* pTxtFld, ULONG nNode ); + virtual ~SwSetTxtFldHint(); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(SetTxtFldHnt) +}; + +class SwSetRefMarkHint : public SwHstryHint +{ + String aRefName; + ULONG nNode; + xub_StrLen nStart, nEnd; +public: + SwSetRefMarkHint( SwTxtRefMark* pTxtHt, ULONG nNode ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(SetRefMarkHnt) +}; + +class SwSetTOXMarkHint : public SwHstryHint +{ + String aTOXName; + TOXTypes eTOXTypes; + SwTOXMark aTOXMark; + ULONG nNode; + xub_StrLen nStart, nEnd; +public: + SwSetTOXMarkHint( SwTxtTOXMark* pTxtHt, ULONG nNode ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + int IsEqual( const SwTOXMark& rCmp ) const; + OUT_HSTR_HINT(SetToxMarkHnt) +}; + +class SwResetTxtHint : public SwHstryHint +{ + ULONG nNode; + xub_StrLen nStart, nEnd; + USHORT nAttr; +public: + SwResetTxtHint( USHORT nWhich, xub_StrLen nStt, xub_StrLen nEnd, ULONG nNode ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + + USHORT GetWhich() const { return nAttr; } + ULONG GetNode() const { return nNode; } + xub_StrLen GetCntnt() const { return nStart; } + OUT_HSTR_HINT(ResetTxtHnt) +}; + +class SwSetFtnHint : public SwHstryHint +{ + String aFtnStr; + SwUndoSaveSection* pUndo; + ULONG nNode; + xub_StrLen nStart; + BOOL bEndNote; +public: + SwSetFtnHint( SwTxtFtn* pTxtFtn, ULONG nNode ); + SwSetFtnHint( const SwTxtFtn& ); + ~SwSetFtnHint(); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + + const SwUndoSaveSection* GetUndoObj() const { return pUndo; } + SwUndoSaveSection* GetUndoObj() { return pUndo; } + OUT_HSTR_HINT(SetFtnHnt) +}; + +class SwChgFmtColl : public SwHstryHint +{ + const SwFmtColl* pColl; + ULONG nNode; + USHORT nSetStt; + BYTE nNdWhich, nNumLvl; + BOOL bNumStt; +public: + SwChgFmtColl( const SwFmtColl* pColl, ULONG nNode, BYTE nNodeWhich ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(ChgFmtColl) +}; + +class SwHstryTxtFlyCnt : public SwHstryHint +{ + SwUndoDelLayFmt* pUndo; +public: + SwHstryTxtFlyCnt( SwTxtFlyCnt* pTxtFly ); // fuer Zeichengebundene + SwHstryTxtFlyCnt( SwFlyFrmFmt* pFlyFmt ); // fuer Absatzgebundene + ~SwHstryTxtFlyCnt(); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + SwUndoDelLayFmt* GetUDelLFmt() { return pUndo; } + OUT_HSTR_HINT(FlyCnt) +}; + +class SwHstryBookmark : public SwHstryHint +{ + String aName, aShortName; + ULONG nNode1, nNode2; + xub_StrLen nCntnt1, nCntnt2; + USHORT nKeyCode; + BYTE nTyp; +public: + enum { BKMK_POS = 1, BKMK_OTHERPOS = 2 }; + SwHstryBookmark( const SwBookmark&, BYTE nTyp ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(Bookmark) + + BOOL IsEqualBookmark( const SwBookmark& ); +}; + +class SwHstrySetAttrSet : public SwHstryHint +{ + SfxItemSet aOldSet; + SvUShorts aResetArr; + ULONG nNode; + USHORT nSetStt; + BYTE nNumLvl; + BOOL bNumStt; +public: + SwHstrySetAttrSet( const SfxItemSet& rSet, ULONG nNode, + const SvUShortsSort& rSetArr ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + OUT_HSTR_HINT(SetAttrSet) +}; + + +class SwHstryResetAttrSet : public SwHstryHint +{ + ULONG nNode; + xub_StrLen nStart, nEnd; + SvUShorts aArr; +public: + SwHstryResetAttrSet( const SfxItemSet& rSet, ULONG nNode, + xub_StrLen nStt = STRING_MAXLEN, + xub_StrLen nEnd = STRING_MAXLEN ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); + + const SvUShorts& GetArr() const { return aArr; } + ULONG GetNode() const { return nNode; } + xub_StrLen GetCntnt() const { return nStart; } + OUT_HSTR_HINT(ResetAttrSet) +}; + +class SwHstryChgFlyAnchor : public SwHstryHint +{ + SwFrmFmt* pFmt; + ULONG nOldPos; + xub_StrLen nOldCnt; +public: + SwHstryChgFlyAnchor( const SwFrmFmt& rFmt ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); +}; + +class SwHstryChgFlyChain : public SwHstryHint +{ + SwFlyFrmFmt *pPrevFmt, *pNextFmt, *pFlyFmt; +public: + SwHstryChgFlyChain( const SwFlyFrmFmt& rFmt, const SwFmtChain& rAttr ); + virtual void SetInDoc( SwDoc* pDoc, BOOL bTmpSet ); +}; + + +#endif + +typedef SwHstryHint* SwHstryHintPtr; +SV_DECL_PTRARR_DEL( SwpHstry, SwHstryHintPtr, 0, 2 ) +class SwHistory : private SwpHstry +{ + friend class SwDoc; // eig. darf nur SwDoc::DelUndoObj zugreifen + friend class SwUndoWriter; // fuer den Undo/Redo-Writer + friend class SwRegHistory; // fuer Insert, von Histoy-Attributen + + USHORT nEndDiff; +public: + SwHistory( USHORT nInitSz = 0, USHORT nGrowSz = 2 ); + ~SwHistory(); + // loesche die History ab Start bis zum Ende + void Delete( USHORT nStart = 0 ); + // alle Objecte zwischen nStart und Array-Ende aufrufen und loeschen + BOOL Rollback( SwDoc* pDoc, USHORT nStart = 0 ); + // alle Objecte zwischen nStart und temporaeren Ende aufrufen und + // den Start als temporaeres Ende speichern + BOOL TmpRollback( SwDoc* pDoc, USHORT nStart, BOOL ToFirst = TRUE ); + + void Add( const SfxPoolItem* pOldValue, const SfxPoolItem* pNewValue, + ULONG nNodeIdx ); + void Add( const SwTxtAttr* pTxtHt, ULONG nNodeIdx, + BOOL bNewAttr = TRUE ); + void Add( const SwFmtColl*, ULONG nNodeIdx, BYTE nWhichNd ); + void Add( const SwFmt*, ULONG nNodeIdx, BYTE nWhichNd ); + void Add( const SwBookmark&, BYTE ); + void Add( const SwFrmFmt& rFmt ); + void Add( const SwFlyFrmFmt&, USHORT& rSetPos ); + void Add( const SwTxtFtn& ); + + USHORT Count() const { return SwpHstry::Count(); } + USHORT GetTmpEnd() const { return SwpHstry::Count() - nEndDiff; } + USHORT SetTmpEnd( USHORT nTmpEnd ); // returne alten Wert + SwHstryHint* operator[]( USHORT nPos ) const { return SwpHstry::operator[](nPos); } + + // fuer SwUndoDelete::Undo/Redo + void Move( USHORT nPos, SwHistory *pIns, + USHORT nStart = 0, USHORT nEnd = USHRT_MAX ) + { + SwpHstry::Insert( pIns, nPos, nStart, nEnd ); + SwpHstry* pDel = pIns; + pDel->Remove( nStart, nEnd == USHRT_MAX + ? pDel->Count() - nStart + : nEnd ); + } + + // Hilfs-Methoden zum Sichern von Attributen in der History. + // Wird von UndoKlasse benutzt (Delete/Overwrite/Inserts) + void CopyAttr( const SwpHints* pHts, ULONG nNodeIdx, xub_StrLen nStt, + xub_StrLen nEnd, BOOL bFields ); + void CopyFmtAttr( const SfxItemSet& rSet, ULONG nNodeIdx ); +}; + +#ifndef ROLBCK_HISTORY_ONLY + +class SwRegHistory : public SwClient +{ + SvUShortsSort aSetWhichIds; + SwHistory* pHstry; + const SwCntntNode * pNode; + ULONG nNodeIdx; + + void _MakeSetWhichIds(); +public: + SwRegHistory( SwHistory* pHst ); + SwRegHistory( SwTxtNode* pTxtNd, SwTxtAttr* pTxtHt, + USHORT nFlags, SwHistory* pHst ); + SwRegHistory( SwTxtNode* pTxtNode, const SfxItemSet& rSet, + xub_StrLen nStart, xub_StrLen nEnd, USHORT nFlags, + SwHistory* pHst ); + SwRegHistory( const SwNode& rNd, SwHistory* pHst ); + SwRegHistory( SwModify* pRegIn, const SwNode& rNd, SwHistory* pHst ); + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + void Add( SwTxtAttr* pHt, const BOOL bNew = FALSE ); + + void RegisterInModify( SwModify* pRegIn, const SwNode& rNd ); +}; + +#endif + + +#endif // _ROLBCK_HXX + diff --git a/sw/inc/section.hxx b/sw/inc/section.hxx new file mode 100644 index 000000000000..21ce689c636a --- /dev/null +++ b/sw/inc/section.hxx @@ -0,0 +1,444 @@ +/************************************************************************* + * + * $RCSfile: section.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SECTION_HXX +#define _SECTION_HXX + + +#ifndef _LNKBASE_HXX //autogen +#include +#endif +#ifndef _RTTI_HXX //autogen +#include +#endif +#ifndef _SVARRAY_HXX //autogen +#include +#endif +#ifndef _SO2REF_HXX //autogen +#include +#endif +#ifndef _FRMFMT_HXX +#include +#endif + +// Forward Deklaration +class SwSectionFmt; +class SwDoc; +class SwSection; +class SwTOXBase; + +#ifndef SW_DECL_SWSERVEROBJECT_DEFINED +#define SW_DECL_SWSERVEROBJECT_DEFINED +class SvPseudoObject; +SO2_DECL_REF( SwServerObject ) +#endif + +SV_DECL_PTRARR( SwSections, SwSection*, 0, 4 ) + +enum SectionType { CONTENT_SECTION, + TOX_HEADER_SECTION, + TOX_CONTENT_SECTION, + DDE_LINK_SECTION = OBJECT_CLIENT_DDE, + FILE_LINK_SECTION = OBJECT_CLIENT_FILE +/* +// verbleiben noch: + OBJECT_CLIENT_SO = 0x80, + OBJECT_CLIENT_OLE = 0x82, + OBJECT_CLIENT_OLE_CACHE = 0x83, +*/ + }; + +enum LinkCreateType +{ + CREATE_NONE, // nichts weiter tun + CREATE_CONNECT, // Link gleich connecten + CREATE_UPDATE // Link connecten und updaten +}; + + +class SwSection : public SwClient +{ + // damit beim Anlegen/Loeschen von Frames das Flag richtig gepflegt wird! + friend class SwSectionNode; + // the "read CTOR" of SwSectionFrm have to change the Hiddenflag + friend class SwSectionFrm; + + String sSectionNm; + String sCondition; // erstmal, vielleicht auch mal ein Feld ?? + String sLinkFileName, sLinkFilePassWd; + + SwServerObjectRef refObj; // falls DataServer -> Pointer gesetzt + SvBaseLinkRef refLink; + + SectionType eType; + + BOOL bProtectFlag : 1; // Flags fuer schnelle Abfragen, wird ueber + // Attribut im Format gesetzt + BOOL bHiddenFlag : 1; // Flag: Absaetze versteckt ? + BOOL bHidden : 1; // alle Absaetze nicht sichtbar ? + BOOL bCondHiddenFlag : 1; // Hiddenflag fuer die Bedingung ? + BOOL bConnectFlag : 1; // Flag: "Verbindung zum Server" vorhanden? + + + void _SetHiddenFlag( int bHidden, int bCondition ); + void _SetProtectFlag( int bFlag ) { bProtectFlag = bFlag; } + + int _IsProtect() const; + +public: + TYPEINFO(); // rtti + + SwSection( SectionType eType, const String& rName, + SwSectionFmt* pFmt = 0 ); + ~SwSection(); + + // kopiere nur die Daten der Section! + // Ableitung bleibt (beim Left) erhalten. + SwSection& operator=( const SwSection& ); + int operator==( const SwSection& rCmp ) const; + + const String& GetName() const { return sSectionNm; } + void SetName( const String& rName ) { sSectionNm = rName; } + const SectionType GetType() const { return eType; } + void SetType( SectionType eNew ) { eType = eNew; } + + SwSectionFmt* GetFmt() { return (SwSectionFmt*)pRegisteredIn; } + SwSectionFmt* GetFmt() const { return (SwSectionFmt*)pRegisteredIn; } + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + + // setze die Hidden/Protected -> gesamten Baum updaten ! + // (Attribute/Flags werden gesetzt/erfragt) + int IsHidden() const { return bHidden; } + int IsProtect() const { return GetFmt() ? _IsProtect() + : IsProtectFlag(); } + + void SetHidden( int bFlag = TRUE ); + void SetProtect( int bFlag = TRUE ); + + // erfrage die internen Flags (Zustand inklusive Parents nicht, was + // aktuell an der Section gesetzt ist!!) + int IsHiddenFlag() const { return bHiddenFlag; } + int IsProtectFlag() const { return bProtectFlag; } + + void SetCondHidden( int bFlag = TRUE ); + int IsCondHidden() const { return bCondHiddenFlag; } + // erfrage (auch ueber die Parents), ob diese Section versteckt sein soll. + int CalcHiddenFlag() const; + + + inline SwSection* GetParent() const; + + // setze/erfrage die Bedingung + const String& GetCondition() const { return sCondition; } + void SetCondition( const String& rNew ) { sCondition = rNew; } + + // setze/erfrage den gelinkten FileNamen + const String& GetLinkFileName() const; + void SetLinkFileName( const String& rNew, const String* pPassWd = 0 ); + // Passwort des gelinkten Files (nur waehrend der Laufzeit gueltig!) + const String& GetLinkFilePassWd() const { return sLinkFilePassWd; } + void SetLinkFilePassWd( const String& rS ) { sLinkFilePassWd = rS; } + + // Daten Server-Methoden + void SetRefObject( SvPseudoObject* pObj ); + const SwServerObject* GetObject() const { return &refObj; } + SwServerObject* GetObject() { return &refObj; } + BOOL IsServer() const { return refObj.Is(); } + + // Methoden fuer gelinkte Bereiche + USHORT GetUpdateType() const { return refLink->GetUpdateMode(); } + void SetUpdateType( USHORT nType ) { refLink->SetUpdateMode( nType ); } + + BOOL IsConnected() const { return refLink.Is(); } + void UpdateNow() { refLink->Update(); } + void Disconnect() { refLink->Disconnect(); } + + const SvBaseLink& GetBaseLink() const { return *refLink; } + + void CreateLink( LinkCreateType eType ); + + void MakeChildLinksVisible( const SwSectionNode& rSectNd ); + + BOOL IsLinkType() const + { return DDE_LINK_SECTION == eType || FILE_LINK_SECTION == eType; } + + // Flags fuer UI - Verbindung geklappt? + BOOL IsConnectFlag() const { return bConnectFlag; } + void SetConnectFlag( BOOL bFlag = TRUE ) { bConnectFlag = bFlag; } + + // return the TOX base class if the section is a TOX section + const SwTOXBase* GetTOXBase() const; + +private: + // privater Constructor, weil nie kopiert werden darf !! + SwSection( const SwSection& ); +}; + + +enum SectionSort { SORTSECT_NOT, SORTSECT_NAME, SORTSECT_POS }; + +class SwSectionFmt : public SwFrmFmt +{ + friend class SwDoc; + SwSection* _GetSection() const; + void UpdateParent(); // Parent wurde veraendert + +protected: + SwSectionFmt( SwSectionFmt* pDrvdFrm, SwDoc *pDoc ); + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + ~SwSectionFmt(); + + //Vernichtet alle Frms in aDepend (Frms werden per PTR_CAST erkannt). + virtual void DelFrms(); + + //Erzeugt die Ansichten + virtual void MakeFrms(); + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + // erfrage vom Format Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + SwSection* GetSection() const { return (SwSection*)_GetSection(); } + inline SwSectionFmt* GetParent() const; + inline SwSection* GetParentSection() const; + + // alle Sections, die von dieser abgeleitet sind + // - sortiert nach : Name oder Position oder unsortiert + // - alle oder nur die, die sich im normalten Nodes-Array befinden + USHORT GetChildSections( SwSections& rArr, + SectionSort eSort = SORTSECT_NOT, + int bAllSections = TRUE ) const; + + // erfrage, ob sich die Section im Nodes-Array oder UndoNodes-Array + // befindet. + int IsInNodesArr() const; + + SwSectionNode* GetSectionNode( BOOL bAlways = FALSE ); + const SwSectionNode* GetSectionNode( BOOL bAlways = FALSE ) const + { return ((SwSectionFmt*)this)->GetSectionNode( bAlways ); } + + // ist die Section eine gueltige fuers GlobalDocument? + const SwSection* GetGlobalDocSection() const; +}; + +// -------------- inlines --------------------------------- + +inline SwSection* SwSection::GetParent() const +{ + register SwSectionFmt* pFmt = GetFmt(); + register SwSection* pRet = 0; + if( pFmt ) + pRet = pFmt->GetParentSection(); + return pRet; +} + +inline SwSectionFmt* SwSectionFmt::GetParent() const +{ + register SwSectionFmt* pRet = 0; + if( GetRegisteredIn() ) + pRet = PTR_CAST( SwSectionFmt, GetRegisteredIn() ); + return pRet; +} + +inline SwSection* SwSectionFmt::GetParentSection() const +{ + register SwSectionFmt* pParent = GetParent(); + register SwSection* pRet = 0; + if( pParent ) + pRet = pParent->_GetSection(); + return pRet; +} + +/************************************************************************* + + $Log: not supported by cvs2svn $ + Revision 1.40 2000/09/18 16:03:26 willem.vandorp + OpenOffice header added. + + Revision 1.39 2000/09/08 13:24:23 willem.vandorp + Header and footer replaced + + Revision 1.38 2000/04/19 15:41:58 jp + Unicode changes + + Revision 1.37 2000/02/11 14:26:27 hr + #70473# changes for unicode ( patched by automated patchtool ) + + Revision 1.36 1999/11/18 17:52:28 jp + new: GetTOXBase + + Revision 1.35 1999/07/27 18:20:18 JP + replace class SwTOXBaseRange with SwTOXBaseSection - TOX use now SwSections + + + Rev 1.34 27 Jul 1999 20:20:18 JP + replace class SwTOXBaseRange with SwTOXBaseSection - TOX use now SwSections + + Rev 1.33 23 Jul 1999 15:53:40 JP + Bug #67465#: SwSectionFrm CTOR have to change the hiddenflag + + Rev 1.32 21 Jun 1999 10:08:44 JP + new enums for new TOXs + + Rev 1.31 25 Mar 1999 21:20:34 JP + Bug #63929#: autom. erzeugen von Tabs im Inhaltsverzeichnis + + Rev 1.30 29 Oct 1998 14:26:18 JP + Task #58637#: neu Is-/SetConnectFlag + + Rev 1.29 26 Oct 1998 17:29:44 JP + Bug #54342#: Section merkt sich das Passwort der Datei + + Rev 1.28 12 Jun 1998 14:33:16 JP + Bug #51097#: im DTOR des SectionFormates ggfs. die ChildLinks sichbar machen + + Rev 1.27 27 Apr 1998 21:16:44 JP + Set-/SetCondition: Flag fuers Convertieren entfernt + + Rev 1.26 04 Aug 1997 16:43:06 MH + chg: header + + Rev 1.25 23 Jun 1997 15:44:16 JP + neu: GetGlobalDocSection + + Rev 1.24 13 Jun 1997 14:54:10 JP + neu: CalcHiddenFlag + + Rev 1.23 29 Oct 1996 16:17:58 MA + includes + + Rev 1.22 16 Oct 1996 16:31:22 JP + unbenutzte Methoden entfernt + + Rev 1.21 10 Jul 1996 17:58:54 OM + LocalizeDBName in Expfld verschoben + + Rev 1.20 10 Jul 1996 17:49:02 OM + LocalizeDBName in Expfld verschoben + + Rev 1.19 25 Jun 1996 12:24:14 MA + headerfiles + + Rev 1.18 11 Jun 1996 16:56:56 JP + GetLinkFileName: nicht mehr als Inline muessen ggfs. auf den Link zugreifen + + Rev 1.17 24 May 1996 15:42:14 OM + Bedingungen in Bereichen wandeln + + Rev 1.16 07 Mar 1996 18:11:16 JP + IsConnect - auf Is() abfragen + + Rev 1.15 12 Feb 1996 18:16:18 JP + Erweiterung: gelinkte Bereiche + + Rev 1.14 08 Feb 1996 19:14:26 JP + Erweiterung fuer gelinkte Bereiche + + Rev 1.13 30 Nov 1995 12:54:36 JP + _SetHiddenFlag - beide Flags ueber geben (Hidden&CondHidden) + + Rev 1.12 08 Nov 1995 10:03:06 OS + ChangeCondition => SetCondition + + Rev 1.11 11 Jul 1995 18:39:46 JP + neu: GetSectionNode, Set-/IsCondHidden - Bedingung auswerten + + Rev 1.10 29 Jun 1995 21:11:06 JP + Section mit Servier-Funktionalitaet + + Rev 1.9 19 Jun 1995 16:45:16 MA + Umbau fuer daemliche Compiler + + Rev 1.8 14 Jun 1995 16:07:46 JP + inline vor den inline Methoden + + Rev 1.7 06 Apr 1995 12:42:24 JP + neu: Member & Methoden fuer den 'gelinkten' Filenamen + + Rev 1.6 23 Feb 1995 17:38:46 JP + neu: SetName - setze neuen Namen an der Section + + Rev 1.5 03 Feb 1995 18:17:30 JP + IsProtect jetzt inline + + Rev 1.4 01 Feb 1995 10:52:32 JP + neu: erfrage/setze Bedingung + + Rev 1.3 26 Jan 1995 18:47:56 JP + GetChildSection: erweitert fuer UI + + Rev 1.2 26 Jan 1995 11:35:18 JP + SectionNode als friend der Section - zum Pfegen des HiddenFlags + + Rev 1.1 24 Jan 1995 20:03:12 JP + neu: IsInNodesArr - abfrage, ob Section nicht im UndoNodes-Array steht + + Rev 1.0 18 Jan 1995 19:22:58 JP + Initial revision. + +*************************************************************************/ + +#endif + //_SECTION_HXX + diff --git a/sw/inc/segdefs.hxx b/sw/inc/segdefs.hxx new file mode 100644 index 000000000000..5cd2ae79114c --- /dev/null +++ b/sw/inc/segdefs.hxx @@ -0,0 +1,61 @@ +/************************************************************************* + * + * $RCSfile: segdefs.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#include "segdefs_.hxx" diff --git a/sw/inc/segdefs_.hxx b/sw/inc/segdefs_.hxx new file mode 100644 index 000000000000..0b3e6e3a3e73 --- /dev/null +++ b/sw/inc/segdefs_.hxx @@ -0,0 +1,60 @@ +/************************************************************************* + * + * $RCSfile: segdefs_.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ diff --git a/sw/inc/shellid.hxx b/sw/inc/shellid.hxx new file mode 100644 index 000000000000..e6a9a3296e50 --- /dev/null +++ b/sw/inc/shellid.hxx @@ -0,0 +1,106 @@ +/************************************************************************* + * + * $RCSfile: shellid.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SHELLID_HXX +#define _SHELLID_HXX + +#ifndef _SFX_SHELL_HXX //autogen +#include +#endif + +/*-------------------------------------------------------------------- + Beschreibung: Mapping fuer UI-Parameter + --------------------------------------------------------------------*/ + +#define SW_BASESHELL (SFX_INTERFACE_SW_START + 1) +#define SW_TEXTSHELL (SFX_INTERFACE_SW_START + 2) +#define SW_LISTSHELL (SFX_INTERFACE_SW_START + 3) +#define SW_TABSHELL (SFX_INTERFACE_SW_START + 4) +#define SW_FRAMESHELL (SFX_INTERFACE_SW_START + 5) +#define SW_GRFSHELL (SFX_INTERFACE_SW_START + 6) +#define SW_OLESHELL (SFX_INTERFACE_SW_START + 7) +#define SW_DRAWSHELL (SFX_INTERFACE_SW_START + 8) +#define SW_DRWTXTSHELL (SFX_INTERFACE_SW_START + 9) + +#define SW_INTERFACE_MODULE (SFX_INTERFACE_SW_START + 10) +#define SW_DOCSHELL (SFX_INTERFACE_SW_START + 11) +#define SW_VIEWSHELL (SFX_INTERFACE_SW_START + 12) +#define SW_PAGEPREVIEW (SFX_INTERFACE_SW_START + 13) +#define SW_GLOSDOCSHELL (SFX_INTERFACE_SW_START + 14) +#define SW_SRC_VIEWSHELL (SFX_INTERFACE_SW_START + 15) + +#define SW_BEZIERSHELL (SFX_INTERFACE_SW_START + 16) +#define SW_DRAWBASESHELL (SFX_INTERFACE_SW_START + 17) +#define SW_DRAWFORMSHELL (SFX_INTERFACE_SW_START + 18) + +#define SW_WEBDOCSHELL (SFX_INTERFACE_SW_START + 19) +#define SW_WEBVIEWSHELL (SFX_INTERFACE_SW_START + 20) +#define SW_WEBBASESHELL (SFX_INTERFACE_SW_START + 21) +#define SW_WEBTEXTSHELL (SFX_INTERFACE_SW_START + 22) +#define SW_WEBFRAMESHELL (SFX_INTERFACE_SW_START + 23) +#define SW_WEBGLOSDOCSHELL (SFX_INTERFACE_SW_START + 24) +#define SW_WEBLISTSHELL (SFX_INTERFACE_SW_START + 25) +#define SW_WEBTABSHELL (SFX_INTERFACE_SW_START + 26) +#define SW_WEBGRFSHELL (SFX_INTERFACE_SW_START + 27) +#define SW_WEBOLESHELL (SFX_INTERFACE_SW_START + 28) +#define SW_WEBDRAWBASESHELL (SFX_INTERFACE_SW_START + 29) +#define SW_WEBDRAWFORMSHELL (SFX_INTERFACE_SW_START + 30) + +#endif // _UIPARAM_HXX diff --git a/sw/inc/shellio.hxx b/sw/inc/shellio.hxx new file mode 100644 index 000000000000..3fe1e4765887 --- /dev/null +++ b/sw/inc/shellio.hxx @@ -0,0 +1,696 @@ +/************************************************************************* + * + * $RCSfile: shellio.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SHELLIO_HXX +#define _SHELLIO_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _DATE_HXX //autogen +#include +#endif +#ifndef _TIME_HXX //autogen +#include +#endif +#ifndef _DATETIME_HXX //autogen +#include +#endif +#ifndef _REF_HXX //autogen +#include +#endif +#ifndef _SOT_FORMATS_HXX //autogen +#include +#endif + +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _DOCFAC_HXX +#include // SwDocFac +#endif + +// einige Forward - Deklarationen +class SfxFactoryFilterContainer; +class SfxFilter; +class SfxItemPool; +class SfxItemSet; +class SfxMedium; +class SvPtrarr; +class SvStorage; +class SvStorageStreamRef; +class SvStream; +class SvStringsSortDtor; +class SvxFontItem; +class SvxMacroTableDtor; +class Sw3Io; +class SwCntntNode; +class SwCrsrShell; +class SwDoc; +class SwPaM; +class SwTextBlocks; +struct SwPosition; +struct Writer_Impl; + +// ab so vielen chars wird ein mit einem ASCII/W4W-Reader eingelesener +// Absatz zwangsweise umgebrochen. Muss immer groesser als 200 sein !!! +#define MAX_ASCII_PARA 10000 + + +class SwAsciiOptions +{ + String sFont; + rtl_TextEncoding eCharSet; + USHORT nLanguage; + LineEnd eCRLF_Flag; + +public: + + const String& GetFontName() const { return sFont; } + void SetFontName( const String& rFont ) { sFont = rFont; } + + rtl_TextEncoding GetCharSet() const { return eCharSet; } + void SetCharSet( rtl_TextEncoding nVal ) { eCharSet = nVal; } + + USHORT GetLanguage() const { return nLanguage; } + void SetLanguage( USHORT nVal ) { nLanguage = nVal; } + + LineEnd GetParaFlags() const { return eCRLF_Flag; } + void SetParaFlags( LineEnd eVal ) { eCRLF_Flag = eVal; } + + void Reset() + { + sFont.Erase(); + eCRLF_Flag = GetSystemLineEnd(); + eCharSet = ::gsl_getSystemTextEncoding(); + nLanguage = 0; + } + // for the automatic conversion (mail/news/...) + void ReadUserData( const String& ); + void WriteUserData( String& ); + + SwAsciiOptions() { Reset(); } +}; + +/**************** SwReader/Reader ************************/ +// Basisklasse der moeglichen Optionen fuer einen speziellen Reader +class Reader; +// Ruft den Reader mit seinen Optionen, Dokument, Cursor etc. +class SwReader; +// SwRead ist der Pointer auf die Read-Optionen-Basisklasse +typedef Reader *SwRead; + +class SwgReaderOption +{ + SwAsciiOptions aASCIIOpts; + union + { + BOOL bFmtsOnly; + struct + { + BOOL bFrmFmts: 1; + BOOL bPageDescs: 1; + BOOL bTxtFmts: 1; + BOOL bNumRules: 1; + BOOL bMerge:1; + } Fmts; + } What; + +public: + void ResetAllFmtsOnly() { What.bFmtsOnly = 0; } + void SetAllFmtsOnly() { What.bFmtsOnly = (BOOL)0xff; } + BOOL IsFmtsOnly() const { return What.bFmtsOnly; } + + BOOL IsFrmFmts() const { return What.Fmts.bFrmFmts; } + void SetFrmFmts( const BOOL bNew) { What.Fmts.bFrmFmts = bNew; } + + BOOL IsPageDescs() const { return What.Fmts.bPageDescs; } + void SetPageDescs( const BOOL bNew) { What.Fmts.bPageDescs = bNew; } + + BOOL IsTxtFmts() const { return What.Fmts.bTxtFmts; } + void SetTxtFmts( const BOOL bNew) { What.Fmts.bTxtFmts = bNew; } + + BOOL IsNumRules() const { return What.Fmts.bNumRules; } + void SetNumRules( const BOOL bNew) { What.Fmts.bNumRules = bNew; } + + BOOL IsMerge() const { return What.Fmts.bMerge; } + void SetMerge( const BOOL bNew ) { What.Fmts.bMerge = bNew; } + + const SwAsciiOptions& GetASCIIOpts() const { return aASCIIOpts; } + void SetASCIIOpts( const SwAsciiOptions& rOpts ) { aASCIIOpts = rOpts; } + void ResetASCIIOpts() { aASCIIOpts.Reset(); } + + SwgReaderOption() + { ResetAllFmtsOnly(); aASCIIOpts.Reset(); } +}; + +class SwReader: public SwDocFac +{ + SvStream* pStrm; + SvStorage* pStg; + SfxMedium* pMedium; // wer ein Medium haben will (W4W) + + SwPaM* pCrsr; + String aFileName; + +public: + /* + * Initiales Einlesen. Dokument wird erst beim Read(..) angelegt. + * JP 25.04.95: oder falls es mitgegeben wird, in dieses. + * Sonderfall fuer Load mit Sw3Reader + */ + SwReader( SvStream&, const String& rFilename, SwDoc *pDoc = 0 ); + SwReader( SvStorage&, const String& rFilename, SwDoc *pDoc = 0 ); + SwReader( SfxMedium&, const String& rFilename, SwDoc *pDoc = 0 ); + /* + * In ein existierendes Dokument einlesen, Dokument und + * Position im Dokument werden aus dem SwPaM uebernommen. + */ + SwReader( SvStream&, const String& rFilename, SwPaM& ); + SwReader( SvStorage&, const String& rFilename, SwPaM& ); + SwReader( SfxMedium&, const String& rFilename, SwPaM& ); + + /* + * Nur SwReader::Read(...) ist die Export-Schnittstelle!!! + */ + BOOL NeedsPasswd( const Reader& ); + BOOL CheckPasswd( const String&, const Reader& ); + ULONG Read( const Reader& ); + + // ask for glossaries + BOOL HasGlossaries( const Reader& ); + BOOL ReadGlossaries( const Reader&, SwTextBlocks&, BOOL bSaveRelFiles ); +}; + + + +/* */ +/**************** SPEZIELLE Reader ************************/ + +// spezielle - Reader koennen beides sein !! (Excel, W4W, .. ) +#define SW_STREAM_READER 1 +#define SW_STORAGE_READER 2 + +class Reader +{ + friend class SwReader; + SwDoc* pTemplate; + String aTemplateNm; + Date aDStamp; + Time aTStamp; + DateTime aChkDateTime; + +protected: + SvStream* pStrm; + SvStorage* pStg; + SfxMedium* pMedium; // wer ein Medium haben will (W4W) + + SwgReaderOption aOpt; + BOOL bInsertMode : 1; + BOOL bTmplBrowseMode : 1; + BOOL bReadUTF8: 1; // Stream als UTF-8 interpretieren + +public: + Reader(); + virtual ~Reader(); + + virtual int GetReaderType(); + SwgReaderOption& GetReaderOpt() { return aOpt; } + + virtual void SetFltName( const String& rFltNm ); + static void SetNoOutlineNum( SwDoc& rDoc ); + + // den Item-Set eines Frm-Formats an das alte Format anpassen + static void ResetFrmFmtAttrs( SfxItemSet &rFrmSet ); + + // die Rahmen-/Grafik-/OLE-Vorlagen an das alte Format (ohne + // Umrandung etc.) anpassen + static void ResetFrmFmts( SwDoc& rDoc ); + + // Die Filter-Vorlage laden, setzen und wieder freigeben + SwDoc* GetTemplateDoc(); + BOOL SetTemplate( SwDoc& rDoc ); + void ClearTemplate(); + void SetTemplateName( const String& rDir ); + void MakeHTMLDummyTemplateDoc(); + + BOOL IsReadUTF8() const { return bReadUTF8; } + void SetReadUTF8( BOOL bSet ) { bReadUTF8 = bSet; } + + virtual BOOL HasGlossaries() const; + virtual BOOL ReadGlossaries( SwTextBlocks&, BOOL bSaveRelFiles ) const; + +private: + virtual ULONG Read(SwDoc &,SwPaM &,const String &)=0; + + // alle die die Streams / Storages nicht geoeffnet brauchen, + // muessen die Methode ueberladen (W4W!!) + virtual int SetStrmStgPtr(); +}; + +class RtfReader: public Reader +{ + virtual ULONG Read( SwDoc &,SwPaM &,const String &); +}; + + +class AsciiReader: public Reader +{ + friend class SwReader; + virtual ULONG Read( SwDoc &,SwPaM &,const String &); +public: + AsciiReader(): Reader() {} + + virtual void SetFltName( const String& rFltNm ); +}; + +class SwgReader: public Reader +{ + virtual ULONG Read( SwDoc &,SwPaM &,const String &); +}; + +class StgReader : public Reader +{ + String aFltName; + +protected: + ULONG OpenMainStream( SvStorageStreamRef& rRef, USHORT& rBuffSize ); + +public: + virtual int GetReaderType(); + const String& GetFltName() { return aFltName; } + virtual void SetFltName( const String& r ); +}; + + +class Sw3Reader : public StgReader +{ + Sw3Io* pIO; + virtual ULONG Read( SwDoc &,SwPaM &,const String &); +public: + Sw3Reader() : pIO( 0 ) {} + + Sw3Io* GetSw3Io() { return pIO; } + const Sw3Io* GetSw3Io() const { return pIO; } + void SetSw3Io( Sw3Io* pIo ) { pIO = pIo; } +}; + +/* */ +//////////////////////////////////////////////////////////////////////////// + +// Der uebergebene Stream muss dynamisch angelegt werden und +// vor dem Loeschen der Instanz per Stream() angefordert +// und geloescht werden! + +class SwImpBlocks; + +class SwTextBlocks +{ + friend class Sw2TextBlocks; + friend class Sw3IoImp; + SwImpBlocks* pImp; + ULONG nErr; + +public: + SwTextBlocks( const String& ); + SwTextBlocks( SvStorage& ); + ~SwTextBlocks(); + + void Flush(){} + + SwDoc* GetDoc(); + void ClearDoc(); // Doc-Inhalt loeschen + const String& GetName(); + void SetName( const String& ); + ULONG GetError() const { return nErr; } + + BOOL IsOld() const; + ULONG ConvertToNew(); // Textbausteine konvertieren + + USHORT GetCount() const; // Anzahl Textbausteine ermitteln + USHORT GetIndex( const String& ) const; // Index fuer Kurznamen ermitteln + USHORT GetLongIndex( const String& ) const; //Index fuer Langnamen ermitteln + const String& GetShortName( USHORT ) const; // Kurzname fuer Index zurueck + const String& GetLongName( USHORT ) const; // Langname fuer Index zurueck + + BOOL Delete( USHORT ); // Loeschen + USHORT Rename( USHORT, const String*, const String* ); // Umbenennen + ULONG CopyBlock( SwTextBlocks& rSource, String& rSrcShort, + const String& rLong ); // Block kopieren + + BOOL BeginGetDoc( USHORT ); // Textbaustein einlesen + void EndGetDoc(); // Textbaustein wieder loslassen + + BOOL BeginPutDoc( const String&, const String& ); // Speichern Beginn + USHORT PutDoc(); // Speichern Ende + + const String& GetText( USHORT ); // Textinhalt einlesen + USHORT PutText( const String&, const String&, const String& ); // Speichern( Kurzn., Text) + + BOOL IsOnlyTextBlock( USHORT ) const; + BOOL IsOnlyTextBlock( const String& rShort ) const; + + const String& GetFileName() const; // Dateiname von pImp + BOOL IsReadOnly() const; // ReadOnly-Flag von pImp + + BOOL GetMacroTable( USHORT nIdx, SvxMacroTableDtor& rMacroTbl ); + + String GetValidShortCut( const String& rLong, + BOOL bCheckInBlock = FALSE ) const; + + BOOL StartPutMuchBlockEntries(); + void EndPutMuchBlockEntries(); +}; + + +extern void _InitFilter(); +extern void _FinitFilter(); +extern SwRead ReadRtf, ReadAscii, ReadSwg, ReadSw3, ReadHTML, ReadXML; + +extern BOOL SetHTMLTemplate( SwDoc &rDoc ); //Fuer Vorlagen aus HTML.vor laden shellio.cxx + + +/* */ +///////////////////////////////////////////////////////////////////////////// + +/* + * Schreiben, Writer + */ + + +/* Basis-Klasse aller Writer */ + +class Writer : public SvRefBase +{ + SwAsciiOptions aAscOpts; + + void _AddFontItem( SfxItemPool& rPool, const SvxFontItem& rFont ); + +protected: + Writer_Impl* pImpl; + + SvStream* pStrm; + SwPaM* pOrigPam; // der letze zu bearbeitende Pam + const String* pOrigFileName; + + void ResetWriter(); + BOOL CopyNextPam( SwPaM ** ); + + void PutNumFmtFontsInAttrPool(); + void PutEditEngFontsInAttrPool(); + + virtual ULONG WriteStream() = 0; + +public: + SwDoc* pDoc; + SwPaM* pCurPam; + BOOL bWriteAll : 1; + BOOL bShowProgress : 1; + BOOL bWriteClipboardDoc : 1; + BOOL bWriteOnlyFirstTable : 1; + BOOL bASCII_ParaAsCR : 1; + BOOL bASCII_ParaAsBlanc : 1; + BOOL bASCII_NoLastLineEnd : 1; + BOOL bUCS2_WithStartChar : 1; + + Writer(); + virtual ~Writer(); + + virtual ULONG Write( SwPaM&, SfxMedium&, const String* = 0 ); + ULONG Write( SwPaM&, SvStream&, const String* = 0 ); + virtual ULONG Write( SwPaM&, SvStorage&, const String* = 0 ); + + virtual void SetPasswd( const String& ); + virtual void SetVersion( const String&, long ); + virtual BOOL IsStgWriter() const; + virtual BOOL IsSw3Writer() const; + + BOOL ShowProgress() const { return bShowProgress; } + void SetShowProgress( BOOL bFlag = FALSE ) { bShowProgress = bFlag; } + + const String* GetOrigFileName() const { return pOrigFileName; } + + const SwAsciiOptions& GetAsciiOptions() const { return aAscOpts; } + void SetAsciiOptions( const SwAsciiOptions& rOpt ) { aAscOpts = rOpt; } + + // suche die naechste Bookmark-Position aus der Bookmark-Tabelle + USHORT FindPos_Bkmk( const SwPosition& rPos ) const; + // build a bookmark table, which is sort by the node position. The + // OtherPos of the bookmarks also inserted. + void CreateBookmarkTbl(); + // search alle Bookmarks in the range and return it in the Array + USHORT GetBookmarks( const SwCntntNode& rNd, + xub_StrLen nStt, xub_StrLen nEnd, + SvPtrarr& rArr ); + + // lege einen neuen PaM an der Position an + SwPaM* NewSwPaM( SwDoc & rDoc, ULONG nStartIdx, ULONG nEndIdx, + BOOL bNodesArray = TRUE ) const; + + // kopiere ggfs. eine lokale Datei ins Internet + BOOL CopyLocalFileToINet( String& rFileNm, BOOL bFileToFile=FALSE ); + + // Stream-spezifische Routinen, im Storage-Writer NICHT VERWENDEN! + + // Optimierung der Ausgabe auf den Stream. + SvStream& OutLong( SvStream& rStrm, long nVal ); + SvStream& OutULong( SvStream& rStrm, ULONG nVal ); + + // Hex-Zahl ausgeben, default ist 2.stellige Zahl + SvStream& OutHex( SvStream& rStrm, ULONG nHex, BYTE nLen = 2 ); + // 4-st. Hex-Zahl ausgeben + inline SvStream& OutHex4( SvStream& rStrm, USHORT nHex ) + { return OutHex( rStrm, nHex, 4 ); } + // 8-st. Hex-Zahl ausgeben + inline SvStream& OutHex8( SvStream& rStrm, ULONG nHex ) + { return OutHex( rStrm, nHex, 8 ); } + + inline SvStream& OutHex( USHORT nHex, BYTE nLen = 2 ) { return OutHex( Strm(), nHex, nLen ); } + inline SvStream& OutHex4( USHORT nHex ) { return OutHex( Strm(), nHex, 4 ); } + inline SvStream& OutHex8( ULONG nHex ) { return OutHex( Strm(), nHex, 8 ); } + inline SvStream& OutLong( long nVal ) { return OutLong( Strm(), nVal ); } + inline SvStream& OutULong( ULONG nVal ) { return OutULong( Strm(), nVal ); } + + void SetStrm( SvStream& rStrm ) { pStrm = &rStrm; } +#ifdef PRODUCT + SvStream& Strm() { return *pStrm; } +#else + SvStream& Strm(); +#endif +}; + +#ifndef SW_DECL_WRITER_DEFINED +#define SW_DECL_WRITER_DEFINED +SV_DECL_REF(Writer) +#endif +SV_IMPL_REF(Writer) + +// Basisklasse fuer alle Storage-Writer + +class StgWriter : public Writer +{ +protected: + String aFltName; + SvStorage* pStg; + + // Fehler beim Aufruf erzeugen + virtual ULONG WriteStream(); + virtual ULONG WriteStorage() = 0; + +public: + StgWriter() : Writer(), pStg( 0 ) {} + + virtual BOOL IsStgWriter() const; + virtual ULONG Write( SwPaM&, SvStorage&, const String* = 0 ); + + SvStorage& GetStorage() const { return *pStg; } + const String& GetFltName() const { return aFltName; } + void SetFltName( const String& r ) { aFltName = r; } +}; + +class Sw3Writer : public StgWriter +{ + Sw3Io* pIO; + BOOL bSaveAs : 1; + + virtual ULONG WriteStorage(); + +public: + Sw3Writer() : pIO( 0 ), bSaveAs( FALSE ) {} + + Sw3Io* GetSw3Io() { return pIO; } + const Sw3Io* GetSw3Io() const { return pIO; } + void SetSw3Io( Sw3Io* pIo, BOOL bSvAs = FALSE ) + { pIO = pIo; bSaveAs = bSvAs; } + + virtual BOOL IsSw3Writer() const; +}; + + + +// Schnittstellenklasse fuer den allgemeinen Zugriff auf die +// speziellen Writer + +class SwWriter +{ + SvStream* pStrm; + SvStorage* pStg; + SfxMedium* pMedium; + + SwPaM* pOutPam; + SwCrsrShell *pShell; + SwDoc &rDoc; + BOOL bWriteAll; + +public: + ULONG Write( WriterRef& rxWriter, const String* = 0); + + SwWriter( SvStream&, SwCrsrShell &,BOOL bWriteAll = FALSE ); + SwWriter( SvStream&, SwDoc & ); + SwWriter( SvStream&, SwPaM &, BOOL bWriteAll = FALSE ); + +// SwWriter( SvStorage&, SwCrsrShell &,BOOL bWriteAll = FALSE ); + SwWriter( SvStorage&, SwDoc & ); +// SwWriter( SvStorage&, SwPaM&, BOOL bWriteAll = FALSE ); + + SwWriter( SfxMedium&, SwCrsrShell &,BOOL bWriteAll = FALSE ); + SwWriter( SfxMedium&, SwDoc & ); +// SwWriter( SfxMedium&, SwPaM&, BOOL bWriteAll = FALSE ); +}; + + +/* */ +///////////////////////////////////////////////////////////////////////////// + +void GetRTFWriter( const String&, WriterRef& ); +void GetASCWriter( const String&, WriterRef& ); +void GetSw3Writer( const String&, WriterRef& ); +void GetHTMLWriter( const String&, WriterRef& ); +void GetXMLWriter( const String&, WriterRef& ); + +// Die folgende Klasse ist ein Wrappe fuer die Basic-I/O-Funktionen +// des Writer 3.0. Alles ist statisch. Alle u.a. Filternamen sind die +// Writer-internen Namen, d.h. die namen, die in INSTALL.INI vor dem +// Gleichheitszeichen stehen, z.b. SWG oder ASCII. + +class SwIoSystem +{ +public: + // suche ueber den Filtertext den Filtereintrag + static const SfxFilter* GetFilterOfFilterTxt( const String& rFilterNm, + const SfxFactoryFilterContainer* pCnt = 0 ); + // suche ueber den internen FormatNamen den Filtereintrag + static const SfxFilter* GetFilterOfFormat( const String& rFormat, + const SfxFactoryFilterContainer* pCnt = 0 ); + + // Feststellen des zu verwendenden Filters fuer die uebergebene + // Datei. Der Filtername wird zurueckgeliefert. Konnte kein Filter + // zurueckgeliefert werden, wird der Name des ASCII-Filters geliefert! + static const SfxFilter* GetFileFilter( const String& rFileName, + const String& rPrefFltName, + SfxMedium* pMedium = 0 ); + + // Feststellen ob das File in dem vorgegebenen Format vorliegt. + // Z.z werden nur unsere eigene Filter unterstuetzt!! + static FASTBOOL IsFileFilter( SfxMedium& rMedium, const String& rFmtName, + const SfxFilter** ppFlt = 0 ); + + static FASTBOOL IsValidStgFilter( SvStorage& , const SfxFilter& ); + + // gebe einen bestimmten Reader zurueck + static Reader* GetReader( const String& rFltName ); + // gebe einen bestimmten Writer zurueck + static void GetWriter( const String& rFltName, WriterRef& xWrt ); + + static const String GetSubStorageName( const SfxFilter& rFltr ); +}; + + +// ---------------------------------- +// diese Filter sind immer vorhanden und koennen ueber die +// Formatnamen gesucht werden. Alle anderen Filter sind nur intern +// bekannt. Die UI-Seite benutzt die GetReader()/GetWriter() -Funktionen, +// um die speziellen zu erhalten. + +extern sal_Char __FAR_DATA FILTER_SWG[]; // SWG-Filter +extern sal_Char __FAR_DATA FILTER_RTF[]; // RTF-Filter +extern sal_Char* FILTER_ANSI; // Ascii-Filter mit Default-CodeSet +extern sal_Char __FAR_DATA FILTER_BAS[]; // StarBasic (identisch mit ANSI) +extern sal_Char __FAR_DATA FILTER_W4W[]; // W4W-Filter +extern sal_Char __FAR_DATA FILTER_WW8[]; // WinWord 97-Filter +extern sal_Char __FAR_DATA FILTER_SW3[]; // SW3-Storage Filter +extern sal_Char __FAR_DATA FILTER_SW4[]; // SW4-Storage Filter +extern sal_Char __FAR_DATA FILTER_SW4[]; // SW4-Storage Filter +extern sal_Char __FAR_DATA FILTER_SW5[]; // SW5-Storage Filter +extern sal_Char __FAR_DATA FILTER_SWGV[]; // SWG-Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_SW3V[]; // SW3-Storage Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_SW4V[]; // SW4-Storage Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_SW5V[]; // SW5-Storage Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_SWW4V[]; // SW/Web Storage Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_SWW5V[]; // SW/Web Storage Vorlagen Filter +extern sal_Char __FAR_DATA FILTER_TEXT_DLG[]; // text filter with encoding dialog +extern sal_Char __FAR_DATA FILTER_XML[]; // XML filter + + +// gebe einen gueltigen temp-Filenamen zurueck +String GetTmpFileName(); + + +#endif diff --git a/sw/inc/shellres.hxx b/sw/inc/shellres.hxx new file mode 100644 index 000000000000..97fdb8cb0bf6 --- /dev/null +++ b/sw/inc/shellres.hxx @@ -0,0 +1,139 @@ +/************************************************************************* + * + * $RCSfile: shellres.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:27 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SHELLRES_HXX +#define _SHELLRES_HXX + + +#ifndef _STRING_HXX //autogen +#include +#endif + +#ifndef _BITMAP_HXX //autogen +#include +#endif + +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_STRINGSDTOR +#include +#endif + +struct ShellResource : public Resource +{ + + String aPostItAuthor; + String aPostItPage; + String aPostItLine; + + // Calc Fehlerstrings + String aCalc_Syntax; + String aCalc_ZeroDiv; + String aCalc_Brack; + String aCalc_Pow; + String aCalc_VarNFnd; + String aCalc_Overflow; + String aCalc_WrongTime; + String aCalc_Default; + String aCalc_Error; + + // fuers GetRefFeld - oben/unten + String aGetRefFld_Up, aGetRefFld_Down; + // fuer dynamisches Menu - String "alle" + String aStrAllPageHeadFoot; + // fuer einige Listboxen - String "keine" + String aStrNone; + // fuer Felder, die Fixiert sind + String aFixedStr; + + //names of TOXs + String aTOXIndexName; + String aTOXUserName; + String aTOXContentName; + String aTOXIllustrationsName; + String aTOXObjectsName; + String aTOXTablesName; + String aTOXAuthoritiesName; + + SvStringsDtor aDocInfoLst; + + // Fly-Anker Bmps +// Bitmap aAnchorBmp; +// Bitmap aDragAnchorBmp; + + // die AutoFormat-Redline-Kommentare + inline const SvStringsDtor& GetAutoFmtNameLst() const; + + ShellResource(); + ~ShellResource(); + +private: + void _GetAutoFmtNameLst() const; + SvStringsDtor *pAutoFmtNameLst; +}; + +inline const SvStringsDtor& ShellResource::GetAutoFmtNameLst() const +{ + if( !pAutoFmtNameLst ) + _GetAutoFmtNameLst(); + return *pAutoFmtNameLst; +} + + +#endif //_SHELLRES_HXX diff --git a/sw/inc/sortopt.hxx b/sw/inc/sortopt.hxx new file mode 100644 index 000000000000..f971c5ebaad5 --- /dev/null +++ b/sw/inc/sortopt.hxx @@ -0,0 +1,101 @@ +/************************************************************************* + * + * $RCSfile: sortopt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SORTOPT_HXX +#define _SORTOPT_HXX + + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +enum SwSortKeyType { SRT_APLHANUM, SRT_NUMERIC }; +enum SwSortOrder { SRT_ASCENDING, SRT_DESCENDING }; +enum SwSortDirection { SRT_COLUMNS, SRT_ROWS }; + +/*-------------------------------------------------------------------- + Beschreibung: SortierSchluessel + --------------------------------------------------------------------*/ +struct SwSortKey +{ + SwSortKey(); + SwSortKey(USHORT nId, SwSortKeyType eTyp, SwSortOrder eOrder); + SwSortKey(const SwSortKey& rOld); + + USHORT nColumnId; + SwSortKeyType eSortKeyType; + SwSortOrder eSortOrder; +}; + +SV_DECL_PTRARR(SwSortKeys, SwSortKey*, 3, 1) + +struct SwSortOptions +{ + SwSortOptions(); + ~SwSortOptions(); + SwSortOptions(const SwSortOptions& rOpt); + + BOOL bTable; + char nDeli; + SwSortDirection eDirection; + SwSortKeys aKeys; +}; + +#endif // _SORTOPT_HXX diff --git a/sw/inc/statstr.hrc b/sw/inc/statstr.hrc new file mode 100644 index 000000000000..8ed1814fbc36 --- /dev/null +++ b/sw/inc/statstr.hrc @@ -0,0 +1,88 @@ +/************************************************************************* + * + * $RCSfile: statstr.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _STATSTR_HRC +#define _STATSTR_HRC + +#include "rcid.hrc" + +#define STR_STATSTR_W4WREAD (RC_STATLIN_STR + 0) +#define STR_STATSTR_W4WWRITE (RC_STATLIN_STR + 1) +#define STR_STATSTR_SWGREAD (RC_STATLIN_STR + 2) +#define STR_STATSTR_SWGWRITE (RC_STATLIN_STR + 3) +#define STR_STATSTR_REFORMAT (RC_STATLIN_STR + 4) +#define STR_STATSTR_AUTOFORMAT (RC_STATLIN_STR + 5) +#define STR_STATSTR_IMPGRF (RC_STATLIN_STR + 6) +#define STR_STATSTR_SEARCH (RC_STATLIN_STR + 7) +#define STR_STATSTR_FORMAT (RC_STATLIN_STR + 8) +#define STR_STATSTR_PRINT (RC_STATLIN_STR + 9) +#define STR_STATSTR_LAYOUTINIT (RC_STATLIN_STR + 10) +#define STR_STATSTR_LETTER (RC_STATLIN_STR + 11) +#define STR_STATSTR_SPELL (RC_STATLIN_STR + 12) +#define STR_STATSTR_HYPHEN (RC_STATLIN_STR + 13) +#define STR_STATSTR_TOX_INSERT (RC_STATLIN_STR + 14) +#define STR_STATSTR_TOX_UPDATE (RC_STATLIN_STR + 15) +#define STR_STATSTR_SUMMARY (RC_STATLIN_STR + 16) +#define STR_STATSTR_SWGPRTOLENOTIFY (RC_STATLIN_STR + 17) + +#endif + + + diff --git a/sw/inc/sw.mk b/sw/inc/sw.mk new file mode 100644 index 000000000000..990a5046c51e --- /dev/null +++ b/sw/inc/sw.mk @@ -0,0 +1,150 @@ +#************************************************************************* +# +# $RCSfile: sw.mk,v $ +# +# $Revision: 1.1.1.1 $ +# +# last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + +# CDEFS=$(CDEFS) -DXXX + +# Bereiche aktivieren + +#CDEFS+=-DXML_CORE_API +CDEFS+=-DNUM_RELSPACE + +# use the new GrahicObject - the old code with our own GraphicCache will be removed +# if all the new code runs correct. +CDEFS+=-DUSE_GRFOBJECT +USE_GRFOBJECT=TRUE + +# MakeDepn nicht das segdefs.hxx und die PCHs auswerten lassen +# PCHs werden nur in den ..._1st Verzeichnissen aufgenommen +EXCDEPN=segdefs.hxx +EXCDEPNPCH=core_pch.hxx;filt_pch.hxx;ui_pch.hxx +MKDEPFLAGS+=-E:$(EXCDEPN);$(EXCDEPNPCH) + +.IF "$(GUI)" == "WIN" || "$(GUI)" == "WNT" || "$(GUI)" == "OS2" +CDEFS+=-DSBASIC +.ENDIF + +.IF "$(GUI)" == "WIN" +CDEFS+=-DOLE -DOLE2 +.ENDIF + +.IF "$(compact)" != "" +CDEFS+=-DCOMPACT +.ENDIF + +.IF "$(debug)" != "" +DB=cv +.ENDIF + +.IF "$(prjpch)" != "" +CDEFS+=-DPRECOMPILED +.ENDIF + + +# ------------------------------------------------------------------ +# alte defines fuer die Sourcen +# ------------------------------------------------------------------ + +.IF "$(GUI)" == "WIN" +CDEFS+=-DW30 +.ENDIF + +.IF "$(GUI)" == "OS2" +CDEFS+=-DPM2 -DPM20 +RSCFLAGS+=-DPM2 -DPM20 +.IF "$(debug)" != "" +# fuer OS/2 und debug groessere Pages +LIBFLAGS=/C /P512 +.ENDIF +.ENDIF + +.IF "$(COM)" == "BLC" +CDEFS+=-DTCPP +.ENDIF + +.IF "$(COM)" == "STC" +CDEFS+=-DZTC +.ENDIF + +.IF "$(COM)" == "ICC" +CDEFS+=-DCSET +.ENDIF + + +# ------------------------------------------------------------------------ +# WINMSCI Compiler +# ------------------------------------------------------------------------ +.IF "$(GUI)$(COM)" == "WINMSC" + +.IF "$(optimize)" != "" +CFLAGS+=-OV9 +.ENDIF + +# kein -GEfs wegen dann fehlender inlinings +CFLAGSOBJGUIST=-Alfd -GA -GEd + +.ENDIF # WINMSCI +# ------------------------------------------------------------------------ + +# ------------------------------------------------------------------------ +# add uno headers to inlude path +# ------------------------------------------------------------------------ +INCPRE+=$(SOLARINCDIR)$/offuh diff --git a/sw/inc/swacorr.hxx b/sw/inc/swacorr.hxx new file mode 100644 index 000000000000..7c86df4274f5 --- /dev/null +++ b/sw/inc/swacorr.hxx @@ -0,0 +1,91 @@ +/************************************************************************* + * + * $RCSfile: swacorr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWACORR_HXX +#define _SWACORR_HXX + +#ifndef _MySVXACORR_HXX //autogen +#include +#endif + + +class SwAutoCorrect : public SvxAutoCorrect +{ +protected: + // - return den Ersetzungstext (nur fuer SWG-Format, alle anderen + // koennen aus der Wortliste herausgeholt werden!) + // rShort ist der Stream-Name - gecryptet! + virtual BOOL GetLongText( SvStorage&, const String& rShort, String& rLong ); + // - Text mit Attributierung (kann nur der SWG - SWG-Format!) + // rShort ist der Stream-Name - gecryptet! + virtual BOOL PutText( SvStorage&, const String& rShort, SfxObjectShell& , + String& ); + +public: + TYPEINFO(); + + SwAutoCorrect( const String& rAutocorrFile ); + SwAutoCorrect( const SvxAutoCorrect& rACorr ); + virtual ~SwAutoCorrect(); +}; + + +#endif + diff --git a/sw/inc/swatrset.hxx b/sw/inc/swatrset.hxx new file mode 100644 index 000000000000..792efce4c2d5 --- /dev/null +++ b/sw/inc/swatrset.hxx @@ -0,0 +1,382 @@ +/************************************************************************* + * + * $RCSfile: swatrset.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWATRSET_HXX +#define _SWATRSET_HXX + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif +#ifndef _SFXITEMSET_HXX //autogen +#include +#endif +#ifndef _SFXITEMPOOL_HXX //autogen +#include +#endif +class SwModify; +class SwDoc; + +class SfxBoolItem; +class SvxPostureItem; +class SvxWeightItem; +class SvxShadowedItem; +class SvxAutoKernItem; +class SvxWordLineModeItem; +class SvxContourItem; +class SvxKerningItem; +class SvxUnderlineItem; +class SvxCrossedOutItem; +class SvxFontHeightItem; +class SvxPropSizeItem; +class SvxFontItem; +class SvxColorItem; +class SvxCharSetColorItem; +class SvxLanguageItem; +class SvxEscapementItem; +class SvxCaseMapItem; +class SvxNoHyphenItem; +class SvxBlinkItem; + +// Frame-Attribute +class SwFmtFillOrder; +class SwFmtFrmSize; +class SvxPaperBinItem; +class SvxLRSpaceItem; +class SvxULSpaceItem; +class SwFmtCntnt; +class SwFmtHeader; +class SwFmtFooter; +class SvxPrintItem; +class SvxOpaqueItem; +class SvxProtectItem; +class SwFmtSurround; +class SwFmtVertOrient; +class SwFmtHoriOrient; +class SwFmtAnchor; +class SvxBoxItem; +class SvxBrushItem; +class SvxShadowItem; +class SwFmtPageDesc; +class SvxFmtBreakItem; +class SwFmtCol; +class SvxMacroItem; +class SvxFmtKeepItem; +class SwFmtURL; +class SwFmtLineNumber; +class SwFmtEditInReadonly; +class SwFmtLayoutSplit; +class SwFmtChain; +class SwFmtFtnAtTxtEnd; +class SwFmtEndAtTxtEnd; +class SwFmtNoBalancedColumns; + +// Grafik-Attribute +class SwMirrorGrf; +class SwCropGrf; +class SwRotationGrf; +class SwLuminanceGrf; +class SwContrastGrf; +class SwChannelRGrf; +class SwChannelGGrf; +class SwChannelBGrf; +class SwGammaGrf; +class SwInvertGrf; +class SwTransparencyGrf; +class SwDrawModeGrf; + +// Paragraph-Attribute +class SvxLineSpacingItem; +class SvxAdjustItem; +class SvxFmtSplitItem; +class SwRegisterItem; +class SwNumRuleItem; +class SvxWidowsItem; +class SvxOrphansItem; +class SvxTabStopItem; +class SvxHyphenZoneItem; +class SwFmtDrop; + +// TabellenBox-Attribute +class SwTblBoxNumFormat; +class SwTblBoxFormula; +class SwTblBoxValue; + + +class SwAttrPool : public SfxItemPool +{ + friend void _InitCore(); // fuers anlegen/zerstoeren der + friend void _FinitCore(); // Versionsmaps + static USHORT* pVersionMap1; + static USHORT* pVersionMap2; + static USHORT* pVersionMap3; + + SwDoc* pDoc; + +public: + SwAttrPool( SwDoc* pDoc ); + + SwDoc* GetDoc() { return pDoc; } + const SwDoc* GetDoc() const { return pDoc; } + + static USHORT* GetVersionMap1() { return pVersionMap1; } + static USHORT* GetVersionMap2() { return pVersionMap2; } + static USHORT* GetVersionMap3() { return pVersionMap3; } +}; + + +class SwAttrSet : public SfxItemSet +{ + // Pointer fuers Modify-System + SwAttrSet *pOldSet, *pNewSet; + + // Notification-Callback + virtual void Changed( const SfxPoolItem& rOld, const SfxPoolItem& rNew ); + + void PutChgd( const SfxPoolItem& rI ) { SfxItemSet::PutDirect( rI ); } +public: + SwAttrSet( SwAttrPool&, USHORT nWhich1, USHORT nWhich2 ); + SwAttrSet( SwAttrPool&, const USHORT* nWhichPairTable ); + SwAttrSet( const SwAttrSet& ); + + int Put_BC( const SfxPoolItem& rAttr, SwAttrSet* pOld, SwAttrSet* pNew ); + int Put_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew ); + + // ein Item oder einen Bereich loeschen + USHORT ClearItem_BC( USHORT nWhich, SwAttrSet* pOld, SwAttrSet* pNew ); + USHORT ClearItem_BC( USHORT nWhich1, USHORT nWhich2, + SwAttrSet* pOld = 0, SwAttrSet* pNew = 0 ); + + int Intersect_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew ); + int Differentiate_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew ); + int MergeValues_BC( const SfxItemSet& rSet, SwAttrSet* pOld, SwAttrSet* pNew ); + + void GetPresentation( SfxItemPresentation ePres, + SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric, String &rText ) const; + + SwAttrPool* GetPool() const { return (SwAttrPool*)SfxItemSet::GetPool(); } + + // kopiere die Attribute ggfs. ueber Dokumentgrenzen + void CopyToModify( SwModify& rMod ) const; + + // ---------------------------------------------------------------- + // Sonderbehandlung fuer einige Attribute + // Setze den Modify-Pointer (alten pDefinedIn) bei folgenden Attributen: + // - SwFmtDropCaps + // - SwFmtPageDesc + // (Wird beim Einfuegen in Formate/Nodes gerufen) + void SetModifyAtAttr( const SwModify* pModify ); + + // Das Doc wird jetzt am SwAttrPool gesetzt. Dadurch hat man es immer + // im Zugriff. + const SwDoc *GetDoc() const { return GetPool()->GetDoc(); } + SwDoc *GetDoc() { return GetPool()->GetDoc(); } + + // GetMethoden: das Bool gibt an, ob nur im Set (FALSE) oder auch in + // den Parents gesucht werden soll. Wird nichts gefunden, + // wird das deflt. Attribut returnt. + // Charakter-Attribute - impl. steht im charatr.hxx + // AMA 12.10.94: Umstellung von SwFmt... auf Svx... + inline const SvxPostureItem &GetPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetWeight( BOOL = TRUE ) const; + inline const SvxShadowedItem &GetShadowed( BOOL = TRUE ) const; + inline const SvxAutoKernItem &GetAutoKern( BOOL = TRUE ) const; + inline const SvxWordLineModeItem &GetWordLineMode( BOOL = TRUE ) const; + inline const SvxContourItem &GetContour( BOOL = TRUE ) const; + inline const SvxKerningItem &GetKerning( BOOL = TRUE ) const; + inline const SvxUnderlineItem &GetUnderline( BOOL = TRUE ) const; + inline const SvxCrossedOutItem &GetCrossedOut( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetSize( BOOL = TRUE ) const; + inline const SvxPropSizeItem &GetPropSize( BOOL = TRUE ) const; + inline const SvxFontItem &GetFont( BOOL = TRUE ) const; + inline const SvxColorItem &GetColor( BOOL = TRUE ) const; + inline const SvxCharSetColorItem &GetCharSetColor( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetLanguage( BOOL = TRUE ) const; + inline const SvxEscapementItem &GetEscapement( BOOL = TRUE ) const; + inline const SvxCaseMapItem &GetCaseMap( BOOL = TRUE ) const; + inline const SvxNoHyphenItem &GetNoHyphenHere( BOOL = TRUE ) const; + inline const SvxBlinkItem &GetBlink( BOOL = TRUE ) const; + inline const SvxBrushItem &GetChrBackground( BOOL = TRUE ) const; + inline const SvxFontItem &GetCJKFont( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetCJKSize( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetCJKLanguage( BOOL = TRUE ) const; + inline const SvxPostureItem &GetCJKPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetCJKWeight( BOOL = TRUE ) const; + inline const SvxFontItem &GetCTLFont( BOOL = TRUE ) const; + inline const SvxFontHeightItem &GetCTLSize( BOOL = TRUE ) const; + inline const SvxLanguageItem &GetCTLLanguage( BOOL = TRUE ) const; + inline const SvxPostureItem &GetCTLPosture( BOOL = TRUE ) const; + inline const SvxWeightItem &GetCTLWeight( BOOL = TRUE ) const; + inline const SfxBoolItem &GetWritingDirection( BOOL = TRUE ) const; + + // Frame-Attribute - impl. steht im frmatr.hxx + inline const SwFmtFillOrder &GetFillOrder( BOOL = TRUE ) const; + inline const SwFmtFrmSize &GetFrmSize( BOOL = TRUE ) const; + inline const SvxPaperBinItem &GetPaperBin( BOOL = TRUE ) const; + inline const SvxLRSpaceItem &GetLRSpace( BOOL = TRUE ) const; + inline const SvxULSpaceItem &GetULSpace( BOOL = TRUE ) const; + inline const SwFmtCntnt &GetCntnt( BOOL = TRUE ) const; + inline const SwFmtHeader &GetHeader( BOOL = TRUE ) const; + inline const SwFmtFooter &GetFooter( BOOL = TRUE ) const; + inline const SvxPrintItem &GetPrint( BOOL = TRUE ) const; + inline const SvxOpaqueItem &GetOpaque( BOOL = TRUE ) const; + inline const SvxProtectItem &GetProtect( BOOL = TRUE ) const; + inline const SwFmtSurround &GetSurround( BOOL = TRUE ) const; + inline const SwFmtVertOrient &GetVertOrient( BOOL = TRUE ) const; + inline const SwFmtHoriOrient &GetHoriOrient( BOOL = TRUE ) const; + inline const SwFmtAnchor &GetAnchor( BOOL = TRUE ) const; + inline const SvxBoxItem &GetBox( BOOL = TRUE ) const; + inline const SvxFmtKeepItem &GetKeep( BOOL = TRUE ) const; + inline const SvxBrushItem &GetBackground( BOOL = TRUE ) const; + inline const SvxShadowItem &GetShadow( BOOL = TRUE ) const; + inline const SwFmtPageDesc &GetPageDesc( BOOL = TRUE ) const; + inline const SvxFmtBreakItem &GetBreak( BOOL = TRUE ) const; + inline const SwFmtCol &GetCol( BOOL = TRUE ) const; + inline const SvxMacroItem &GetMacro( BOOL = TRUE ) const; + inline const SwFmtURL &GetURL( BOOL = TRUE ) const; + inline const SwFmtEditInReadonly &GetEditInReadonly( BOOL = TRUE ) const; + inline const SwFmtLayoutSplit &GetLayoutSplit( BOOL = TRUE ) const; + inline const SwFmtChain &GetChain( BOOL = TRUE ) const; + inline const SwFmtLineNumber &GetLineNumber( BOOL = TRUE ) const; + inline const SwFmtFtnAtTxtEnd &GetFtnAtTxtEnd( BOOL = TRUE ) const; + inline const SwFmtEndAtTxtEnd &GetEndAtTxtEnd( BOOL = TRUE ) const; + inline const SwFmtNoBalancedColumns &GetBalancedColumns( BOOL = TRUE ) const; + + // Grafik-Attribute - impl. steht im grfatr.hxx + inline const SwMirrorGrf &GetMirrorGrf( BOOL = TRUE ) const; + inline const SwCropGrf &GetCropGrf( BOOL = TRUE ) const; + inline const SwRotationGrf &GetRotationGrf(BOOL = TRUE ) const; + inline const SwLuminanceGrf &GetLuminanceGrf(BOOL = TRUE ) const; + inline const SwContrastGrf &GetContrastGrf(BOOL = TRUE ) const; + inline const SwChannelRGrf &GetChannelRGrf(BOOL = TRUE ) const; + inline const SwChannelGGrf &GetChannelGGrf(BOOL = TRUE ) const; + inline const SwChannelBGrf &GetChannelBGrf(BOOL = TRUE ) const; + inline const SwGammaGrf &GetGammaGrf(BOOL = TRUE ) const; + inline const SwInvertGrf &GetInvertGrf(BOOL = TRUE ) const; + inline const SwTransparencyGrf &GetTransparencyGrf(BOOL = TRUE ) const; + inline const SwDrawModeGrf &GetDrawModeGrf(BOOL = TRUE ) const; + + // Paragraph-Attribute - impl. steht im paratr.hxx + inline const SvxLineSpacingItem &GetLineSpacing( BOOL = TRUE ) const; + inline const SvxAdjustItem &GetAdjust( BOOL = TRUE ) const; + inline const SvxFmtSplitItem &GetSplit( BOOL = TRUE ) const; + inline const SwRegisterItem &GetRegister( BOOL = TRUE ) const; + inline const SwNumRuleItem &GetNumRule( BOOL = TRUE ) const; + inline const SvxWidowsItem &GetWidows( BOOL = TRUE ) const; + inline const SvxOrphansItem &GetOrphans( BOOL = TRUE ) const; + inline const SvxTabStopItem &GetTabStops( BOOL = TRUE ) const; + inline const SvxHyphenZoneItem &GetHyphenZone( BOOL = TRUE ) const; + inline const SwFmtDrop &GetDrop( BOOL = TRUE ) const; + + // TabellenBox-Attribute - impl. steht im cellatr.hxx + inline const SwTblBoxNumFormat &GetTblBoxNumFmt( BOOL = TRUE ) const; + inline const SwTblBoxFormula &GetTblBoxFormula( BOOL = TRUE ) const; + inline const SwTblBoxValue &GetTblBoxValue( BOOL = TRUE ) const; + + DECL_FIXEDMEMPOOL_NEWDEL(SwAttrSet) +}; + + +/************************************************************************* + + $Log: not supported by cvs2svn $ + Revision 1.48 2000/09/18 16:03:29 willem.vandorp + OpenOffice header added. + + Revision 1.47 2000/09/08 13:24:27 willem.vandorp + Header and footer replaced + + Revision 1.46 2000/07/31 19:23:08 jp + new attributes for CJK/CTL and graphic + + Revision 1.45 2000/05/26 07:08:20 os + old SW Basic API Slots removed + + Revision 1.44 2000/01/03 18:19:55 jp + Bug #71411#: new attribut + + Revision 1.43 1999/09/07 14:33:46 ama + New #66878#: EndOfTxt-Items for footnotes and endnotes + + Revision 1.42 1999/03/19 12:33:58 OS + #63701# unbenutztes Break-Attribut aus den Sections entfernt + + + Rev 1.41 19 Mar 1999 13:33:58 OS + #63701# unbenutztes Break-Attribut aus den Sections entfernt + + Rev 1.40 05 Feb 1999 17:42:26 JP + Task #61467#: Attrset ueber Dokumentgrenzen kopieren, dabei PageDesc/Numrule mit erzeugen + + Rev 1.39 28 Jan 1999 18:11:48 JP + Task #57749#: Undo von Bereichs-Attributen (Spalten, Hintergr...) + + Rev 1.38 04 Feb 1998 14:09:20 MA + new: SwFmtLineNumber + + Rev 1.37 15 Dec 1997 16:23:40 AMA + New: SwSectItem: Soll der uebergeordnete Bereich aufgebrochen werden? + +*************************************************************************/ + // #ifndef _SWATRSET_HXX +#endif diff --git a/sw/inc/swbaslnk.hxx b/sw/inc/swbaslnk.hxx new file mode 100644 index 000000000000..34aed0581ced --- /dev/null +++ b/sw/inc/swbaslnk.hxx @@ -0,0 +1,127 @@ +/************************************************************************* + * + * $RCSfile: swbaslnk.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWBASLNK_HXX +#define _SWBASLNK_HXX + + +#ifndef _LNKBASE_HXX //autogen +#include +#endif + +class SwNode; +class SwCntntNode; +class SwNodeIndex; + +class SwBaseLink : public SvBaseLink +{ + SwCntntNode* pCntntNode; + BOOL bSwapIn : 1; + BOOL bNoDataFlag : 1; + BOOL bIgnoreDataChanged : 1; + +protected: + SwBaseLink() {} + + SwBaseLink( const String& rNm, USHORT nObjectType, SvPseudoObject* pObj, + SwCntntNode* pNode = 0 ) + : SvBaseLink( rNm, nObjectType, pObj ), pCntntNode( pNode ), + bSwapIn( FALSE ), bNoDataFlag( FALSE ), bIgnoreDataChanged( FALSE ) + {} + +public: + TYPEINFO(); + + SwBaseLink( USHORT nMode, USHORT nFormat, SwCntntNode* pNode = 0 ) + : SvBaseLink( nMode, nFormat ), pCntntNode( pNode ), + bSwapIn( FALSE ), bNoDataFlag( FALSE ), bIgnoreDataChanged( FALSE ) + {} + virtual ~SwBaseLink(); + + virtual void DataChanged( SvData& rData ); + virtual void Closed(); + + virtual const SwNode* GetAnchor() const; + + SwCntntNode *GetCntntNode() { return pCntntNode; } + + // nur fuer Grafiken + FASTBOOL SwapIn( BOOL bWaitForData = FALSE, BOOL bNativFormat = FALSE ); + + FASTBOOL IsShowQuickDrawBmp() const; // nur fuer Grafiken + + FASTBOOL Connect() { return 0 != SvBaseLink::GetRealObject(); } + SvLinkName* GetCacheName() const { return SvBaseLink::GetCacheName(); } + + // nur fuer Grafik-Links ( zum Umschalten zwischen DDE / Grf-Link) + void SetObjType( USHORT nType ) { SvBaseLink::SetObjType( nType ); } + + BOOL IsRecursion( const SwBaseLink* pChkLnk ) const; + virtual BOOL IsInRange( ULONG nSttNd, ULONG nEndNd, xub_StrLen nStt = 0, + xub_StrLen nEnd = STRING_NOTFOUND ) const; + + void SetNoDataFlag() { bNoDataFlag = TRUE; } + BOOL ChkNoDataFlag() { return bNoDataFlag ? !(bNoDataFlag = FALSE) : FALSE; } + BOOL IsNoDataFlag() const { return bNoDataFlag; } +}; + + +#endif + diff --git a/sw/inc/swcrsr.hxx b/sw/inc/swcrsr.hxx new file mode 100644 index 000000000000..b87b94d2fc21 --- /dev/null +++ b/sw/inc/swcrsr.hxx @@ -0,0 +1,348 @@ +/************************************************************************* + * + * $RCSfile: swcrsr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWCRSR_HXX +#define _SWCRSR_HXX + +#ifndef _WORDSEL_HXX //autogen +#include +#endif +#ifndef _PAM_HXX //autogen +#include +#endif +#ifndef _TBLSEL_HXX //autogen +#include +#endif +#ifndef _CSHTYP_HXX //autogen +#include +#endif + + +class SwShellCrsr; +class SwShellTableCrsr; +class SwTableCursor; +class SwUnoCrsr; +class SwUnoTableCrsr; +struct _SwCursor_SavePos; + +// ein Basis-Struktur fuer die Parameter der Find-Methoden +// return - Werte vom Found-Aufruf. +const int FIND_NOT_FOUND = 0; +const int FIND_FOUND = 1; +const int FIND_NO_RING = 2; + +struct SwFindParas +{ + virtual int Find( SwPaM*, SwMoveFn, const SwPaM*, FASTBOOL ) = 0; + virtual int IsReplaceMode() const = 0; +}; + +enum SwCursorSelOverFlags +{ + SELOVER_NONE = 0x00, + SELOVER_CHECKNODESSECTION = 0x01, + SELOVER_TOGGLE = 0x02, + SELOVER_ENABLEREVDIREKTION = 0x04, + SELOVER_CHANGEPOS = 0x08 +}; + +class SwCursor : public SwPaM +{ + friend class SwCrsrSaveState; + + _SwCursor_SavePos* pSavePos; + + ULONG FindAll( SwFindParas& , SwDocPositions, SwDocPositions, FindRanges ); + +protected: + virtual _SwCursor_SavePos* CreateNewSavePos() const; + void SaveState(); + void RestoreState(); + + const _SwCursor_SavePos* GetSavePos() const { return pSavePos; } + +public: + SwCursor( const SwPosition &rPos, SwPaM* pRing = 0 ); + SwCursor( SwCursor& ); + virtual ~SwCursor(); + + virtual SwCursor* Create( SwPaM* pRing = 0 ) const; + + virtual operator SwShellCrsr* (); + virtual operator SwShellTableCrsr* (); + virtual operator SwTableCursor* (); + virtual operator SwUnoCrsr* (); + virtual operator SwUnoTableCrsr* (); + + inline operator const SwShellCrsr* () const; + inline operator const SwShellTableCrsr* () const; + inline operator const SwTableCursor* () const; + inline operator const SwUnoCrsr* () const; + inline operator const SwUnoTableCrsr* () const; + + virtual FASTBOOL MaxReplaceArived(); + virtual void SaveTblBoxCntnt( const SwPosition* pPos = 0 ); + + void FillFindPos( SwDocPositions ePos, SwPosition& rPos ) const; + SwMoveFnCollection* MakeFindRange( SwDocPositions, SwDocPositions, + SwPaM* ) const; + + ULONG Find( const SearchParam& rParam, + SwDocPositions nStart, SwDocPositions nEnde, + FindRanges = FND_IN_BODY, + int bReplace = FALSE ); + + ULONG Find( const SwTxtFmtColl& rFmtColl, + SwDocPositions nStart, SwDocPositions nEnde, + FindRanges = FND_IN_BODY, + const SwTxtFmtColl* pReplFmt = 0 ); + + ULONG Find( const SfxItemSet& rSet, FASTBOOL bNoCollections, + SwDocPositions nStart, SwDocPositions nEnde, + FindRanges = FND_IN_BODY, + const SearchParam* pTextPara = 0, + const SfxItemSet* rReplSet = 0 ); + +/* int IsWordFNC( FNIsWord fnIsWord ) const; + int GoWordFNC( FNGoWord fnGoWord ); + FASTBOOL IsStartWord()const { return IsWordFNC( WordSelection::IsStartWord ); } + FASTBOOL IsEndWord() const { return IsWordFNC( WordSelection::IsEndWord ); } + FASTBOOL IsInWord() const { return IsWordFNC( WordSelection::IsInWord ); } + FASTBOOL GoStartWord() { return GoWordFNC( WordSelection::GoStartWord ); } + FASTBOOL GoEndWord() { return GoWordFNC( WordSelection::GoEndWord ); } + FASTBOOL GoNextWord() { return GoWordFNC( WordSelection::GoNextWord ); } + FASTBOOL GoPrevWord() { return GoWordFNC( WordSelection::GoPrevWord ); } +*/ + FASTBOOL IsStartWord()const; + FASTBOOL IsEndWord() const; + FASTBOOL IsInWord() const; + FASTBOOL GoStartWord(); + FASTBOOL GoEndWord(); + FASTBOOL GoNextWord(); + FASTBOOL GoPrevWord(); + FASTBOOL SelectWord( const Point* pPt = 0 ); + + enum SentenceMoveType + { + NEXT_SENT, + PREV_SENT, + START_SENT, + END_SENT + }; + FASTBOOL GoSentence(SentenceMoveType eMoveType); + FASTBOOL GoNextSentence(){return GoSentence(NEXT_SENT);} + FASTBOOL GoPrevSentence(){return GoSentence(PREV_SENT);} + + FASTBOOL LeftRight( BOOL bLeft, USHORT nCnt = 1 ); + FASTBOOL UpDown( BOOL bUp, USHORT nCnt = 1, + Point* pPt = 0, long nUpDownX = 0 ); + FASTBOOL LeftRightMargin( BOOL bLeftMargin, BOOL bAPI = FALSE ); + FASTBOOL IsAtLeftRightMargin( BOOL bLeftMargin, BOOL bAPI = FALSE ) const; + FASTBOOL SttEndDoc( BOOL bSttDoc ); + FASTBOOL GoPrevNextCell( BOOL bNext, USHORT nCnt ); + + FASTBOOL Left( USHORT nCnt = 1 ) { return LeftRight( TRUE, nCnt ); } + FASTBOOL Right( USHORT nCnt = 1 ) { return LeftRight( FALSE, nCnt ); } + FASTBOOL Up( USHORT nCnt = 1 ) { return UpDown( TRUE, nCnt ); } + FASTBOOL Down( USHORT nCnt = 1 ) { return UpDown( FALSE, nCnt ); } + FASTBOOL LeftMargin() { return LeftRightMargin( TRUE ); } + FASTBOOL RightMargin() { return LeftRightMargin( FALSE ); } + FASTBOOL SttDoc() { return SttEndDoc( TRUE ); } + FASTBOOL EndDoc() { return SttEndDoc( FALSE ); } + FASTBOOL GoNextCell( USHORT nCnt = 1 ) { return GoPrevNextCell( TRUE, nCnt ); } + FASTBOOL GoPrevCell( USHORT nCnt = 1 ) { return GoPrevNextCell( FALSE, nCnt ); } + FASTBOOL GotoTable( const String& rName ); + FASTBOOL GotoTblBox( const String& rName ); + FASTBOOL GotoRegion( const String& rName ); + FASTBOOL GotoFtnAnchor(); + FASTBOOL GotoFtnTxt(); + FASTBOOL GotoNextFtnAnchor(); + FASTBOOL GotoPrevFtnAnchor(); + FASTBOOL GotoNextFtnCntnt(); + FASTBOOL GotoPrevFtnCntnt(); + + FASTBOOL MovePara( SwWhichPara, SwPosPara ); + FASTBOOL MoveSection( SwWhichSection, SwPosSection ); + FASTBOOL MoveTable( SwWhichTable, SwPosTable ); + FASTBOOL MoveRegion( SwWhichRegion, SwPosRegion ); + + + // gibt es eine Selection vom Content in die Tabelle + // Return Wert gibt an, ob der Crsr auf der alten Position verbleibt + virtual FASTBOOL IsSelOvr( int eFlags = + ( SELOVER_CHECKNODESSECTION | + SELOVER_TOGGLE | SELOVER_CHANGEPOS )); + virtual FASTBOOL IsInProtectTable( FASTBOOL bMove = FALSE, + FASTBOOL bChgCrsr = TRUE ); + FASTBOOL IsNoCntnt() const; + + void RestoreSavePos(); // Point auf die SavePos setzen + + // TRUE: an die Position kann der Cursor gesetzt werden + virtual FASTBOOL IsAtValidPos( BOOL bPoint = TRUE ) const; + + // darf der Cursor in ReadOnlyBereiche? + FASTBOOL IsReadOnlyAvailable() const; + + DECL_FIXEDMEMPOOL_NEWDEL( SwCursor ) +}; + + +class SwCrsrSaveState +{ + SwCursor& rCrsr; +public: + SwCrsrSaveState( SwCursor& rC ) : rCrsr( rC ) { rC.SaveState(); } + ~SwCrsrSaveState() { rCrsr.RestoreState(); } +}; + +struct _SwCursor_SavePos +{ + ULONG nNode; + xub_StrLen nCntnt; + _SwCursor_SavePos* pNext; + + _SwCursor_SavePos( const SwCursor& rCrsr ) + : nNode( rCrsr.GetPoint()->nNode.GetIndex() ), + nCntnt( rCrsr.GetPoint()->nContent.GetIndex() ), + pNext( 0 ) + {} + virtual ~_SwCursor_SavePos() {} +}; + + + +class SwTableCursor : public virtual SwCursor +{ + +protected: + ULONG nTblPtNd, nTblMkNd; + xub_StrLen nTblPtCnt, nTblMkCnt; + SwSelBoxes aSelBoxes; + BOOL bChg : 1; + BOOL bParked : 1; // Tabellen-Cursor wurde geparkt + +public: + SwTableCursor( const SwPosition &rPos, SwPaM* pRing = 0 ); + SwTableCursor( SwTableCursor& ); + virtual ~SwTableCursor(); + + virtual operator SwTableCursor* (); + + void InsertBox( const SwTableBox& rTblBox ); + void DeleteBox( USHORT nPos ) { aSelBoxes.Remove( nPos ); bChg = TRUE; } + USHORT GetBoxesCount() const { return aSelBoxes.Count(); } + const SwSelBoxes& GetBoxes() const { return aSelBoxes; } + + // Baut fuer alle Boxen die Cursor auf + SwCursor* MakeBoxSels( SwCursor* pAktCrsr ); + // sind irgendwelche Boxen mit einem Schutz versehen? + FASTBOOL HasReadOnlyBoxSel() const; + + // wurde der TabelleCursor veraendert ? Wenn ja speicher gleich + // die neuen Werte. + FASTBOOL IsCrsrMovedUpdt(); + // wurde der TabelleCursor veraendert ? + FASTBOOL IsCrsrMoved() const + { + return nTblMkNd != GetMark()->nNode.GetIndex() || + nTblPtNd != GetPoint()->nNode.GetIndex() || + nTblMkCnt != GetMark()->nContent.GetIndex() || + nTblPtCnt != GetPoint()->nContent.GetIndex(); + } + + FASTBOOL IsChgd() const { return bChg; } + + // Parke den Tabellen-Cursor auf dem StartNode der Boxen. + void ParkCrsr(); + +}; + + +// --------------------------- inline Methoden ---------------------- + +inline SwCursor::operator const SwShellCrsr* () const +{ + return (SwShellCrsr*)*((SwCursor*)this); +} + +inline SwCursor::operator const SwShellTableCrsr* () const +{ + return (SwShellTableCrsr*)*((SwCursor*)this); +} + +inline SwCursor::operator const SwTableCursor* () const +{ + return (SwTableCursor*)*((SwCursor*)this); +} + +inline SwCursor::operator const SwUnoCrsr* () const +{ + return (SwUnoCrsr*)*((SwCursor*)this); +} + +inline SwCursor::operator const SwUnoTableCrsr* () const +{ + return (SwUnoTableCrsr*)*((SwCursor*)this); +} + + +#endif + diff --git a/sw/inc/swddetbl.hxx b/sw/inc/swddetbl.hxx new file mode 100644 index 000000000000..e26727a8dd16 --- /dev/null +++ b/sw/inc/swddetbl.hxx @@ -0,0 +1,94 @@ +/************************************************************************* + * + * $RCSfile: swddetbl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWDDETBL_HXX +#define _SWDDETBL_HXX + +#include "swtable.hxx" + +class SwDDEFieldType; + +class SwDDETable : public SwTable +{ + SwDepend aDepend; +public: + TYPEINFO(); + // Constructor movet alle Lines/Boxen aus der SwTable zu sich. + // Die SwTable ist danach Leer und muss geloescht werden. + SwDDETable( SwTable& rTable, SwDDEFieldType* pDDEType ); + ~SwDDETable(); + + void Modify( SfxPoolItem*, SfxPoolItem* ); + void ChangeContent(); + BOOL NoDDETable(); + + SwDDEFieldType* GetDDEFldType(); + inline const SwDDEFieldType* GetDDEFldType() const; +}; + + +// ----------- Inlines ----------------------------- + +inline const SwDDEFieldType* SwDDETable::GetDDEFldType() const +{ + return ((SwDDETable*)this)->GetDDEFldType(); +} + +#endif diff --git a/sw/inc/swdll.hxx b/sw/inc/swdll.hxx new file mode 100644 index 000000000000..bdabfeafdd62 --- /dev/null +++ b/sw/inc/swdll.hxx @@ -0,0 +1,171 @@ +/************************************************************************* + * + * $RCSfile: swdll.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef SW_SWDLL_HXX +#define SW_SWDLL_HXX + +class ResMgr; +class SvFactory; +class SotFactory; +class StatusBar; + +class SfxMedium; +class SfxFilter; + +#ifndef _SFXDEFS_HXX //autogen +#include +#endif +#ifndef _SFXMODULE_HXX //autogen +#include +#endif + +//#include + +//------------------------------------------------------------------------- + +class SwDLL + +/* [Description] + + This class is a wrapper for a Load-On-Demand-DLL. One instance + per SfxApplication will be created for the runtime of + SfxApplication-subclass::Main(). + + Remember: Do export this class! It is used by the application. +*/ + +{ + + static void RegisterFactories(); + static void RegisterInterfaces(); + static void RegisterControls(); +public: + // Ctor/Dtor must be linked to the application + SwDLL(); + ~SwDLL(); + + // static-init/exit-code must be linked to the application + static void LibInit(); // called from SfxApplication-subclass::Init() + static void LibExit(); // called from SfxApplication-subclass::Exit() + static void PreExit(); // muss vor LibExit gerufen werden + + // DLL-init/exit-code must be linked to the DLL only + static void Init(); // called directly after loading the DLL + static void Exit(); // called directly befor unloading the DLL + + + static void FillStatusBar(StatusBar &rBar); + + static ULONG DetectFilter( SfxMedium& rMedium, const SfxFilter** ppFilter, + SfxFilterFlags nMust, SfxFilterFlags nDont ); + static ULONG GlobDetectFilter( SfxMedium& rMedium, const SfxFilter** ppFilter, + SfxFilterFlags nMust, SfxFilterFlags nDont ); + + static sal_Bool RegisterFrameLoaders( void* pServiceManager, void* pRegistryKey ); + static void* CreateFrameLoader( const sal_Char* pImplementationName, void* pServiceManager, void *pRegistryKey ); +}; + +//------------------------------------------------------------------------- + +class SwModuleDummy : public SfxModule + +/* [Description] + + This tricky class keeps pointers to the SvFactories while + the DLL isn`t loaded. A pointer to the one instance is available + through SXX_MOD() (shared-lib-app-data). +*/ + +{ +public: + virtual ~SwModuleDummy(); + TYPEINFO(); + // SvFactory name convention: + // 'p' + SfxObjectShell-subclass + 'Factory' + SotFactory* pSwDocShellFactory; + SotFactory* pSwWebDocShellFactory; + SotFactory* pSwGlobalDocShellFactory; + + SwModuleDummy( ResMgr *pResMgr, BOOL bDummy, + SotFactory* pFact, + SotFactory* pWebFact, + SotFactory* pGlobalFact ) + : SfxModule(pResMgr, bDummy, + (SfxObjectFactory*)pFact, + (SfxObjectFactory*)pWebFact, + (SfxObjectFactory*)pGlobalFact, 0L), + pSwDocShellFactory( pFact ), + pSwWebDocShellFactory( pWebFact ), + pSwGlobalDocShellFactory( pGlobalFact ) + {} + + virtual SfxModule* Load(); + + static SvGlobalName GetID(USHORT nFileFormat); + static USHORT HasID(const SvGlobalName& rName); +}; + +//------------------------------------------------------------------------- + +#define SW_DLL() ( *(SwModuleDummy**) GetAppData(SHL_WRITER) ) + +#endif + diff --git a/sw/inc/swerror.h b/sw/inc/swerror.h new file mode 100644 index 000000000000..3665609242fc --- /dev/null +++ b/sw/inc/swerror.h @@ -0,0 +1,151 @@ +/************************************************************************* + * + * $RCSfile: swerror.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWSWERROR_H +#define _SWSWERROR_H + +#ifndef _ERRCODE_HXX +#include +#endif + +#define ERROR_SW_BASE (ERRCODE_AREA_SW) +#define ERROR_SW_READ_BASE (ERROR_SW_BASE | ERRCODE_CLASS_READ) +#define ERROR_SW_WRITE_BASE (ERROR_SW_BASE | ERRCODE_CLASS_WRITE) + +#define WARN_SW_BASE (ERRCODE_AREA_SW | ERRCODE_WARNING_MASK) +#define WARN_SW_READ_BASE (WARN_SW_BASE | ERRCODE_CLASS_READ ) +#define WARN_SW_WRITE_BASE (WARN_SW_BASE | ERRCODE_CLASS_WRITE ) + + +// Import Fehler +#define ERR_SWG_FILE_FORMAT_ERROR (ERROR_SW_READ_BASE | 1 ) +#define ERR_SWG_READ_ERROR (ERROR_SW_READ_BASE | 2 ) + +#define ERR_SW6_INPUT_FILE (ERROR_SW_READ_BASE | 4 ) +#define ERR_SW6_NOWRITER_FILE (ERROR_SW_READ_BASE | 5 ) +#define ERR_SW6_UNEXPECTED_EOF (ERROR_SW_READ_BASE | 6 ) +#define ERR_SW6_PASSWD (ERROR_SW_READ_BASE | 7 ) + +#define ERR_WW6_NO_WW6_FILE_ERR (ERROR_SW_READ_BASE | 8 ) +#define ERR_WW6_FASTSAVE_ERR (ERROR_SW_READ_BASE | 9 ) + +#define ERR_W4W_WRITE_TMP_ERROR (ERROR_SW_READ_BASE | 10 ) +#define ERR_EXCLOT_WRONG_RANGE (ERROR_SW_READ_BASE | 11 ) + +#define ERR_FORMAT_ROWCOL (ERROR_SW_READ_BASE | 12) + +#define ERR_SWG_NEW_VERSION (ERROR_SW_READ_BASE | 13) +#define ERR_WW8_NO_WW8_FILE_ERR (ERROR_SW_READ_BASE | 14) + +// Export Fehler +#define ERR_SWG_WRITE_ERROR (ERROR_SW_WRITE_BASE | 30 ) +#define ERR_SWG_OLD_GLOSSARY (ERROR_SW_WRITE_BASE | 31 ) +#define ERR_SWG_CANNOT_WRITE (ERROR_SW_WRITE_BASE | 32 ) +#define ERR_W4W_READ_TMP_ERROR (ERROR_SW_WRITE_BASE | 33 ) +#define ERR_SWG_LARGE_DOC_ERROR (ERROR_SW_WRITE_BASE | 34 ) + +// Import/Export Fehler +#define ERR_SWG_INTERNAL_ERROR (ERROR_SW_BASE | 50 ) + +#define ERR_W4W_MEM (ERROR_SW_BASE | 51 ) +#define ERR_W4W_WRITE_FULL (ERROR_SW_BASE | 52 ) +#define ERR_W4W_INTERNAL_ERROR (ERROR_SW_BASE | 53 ) +#define ERR_W4W_DLL_ERROR (ERROR_SW_BASE | 54 ) + +#define ERR_TXTBLOCK_NEWFILE_ERROR (ERROR_SW_BASE|ERRCODE_CLASS_LOCKING | 55 ) + +// weitere Fehler und Fehlerklassen +#define ERR_AUTOPATH_ERROR (ERROR_SW_BASE|ERRCODE_CLASS_PATH | 55 ) +#define ERR_TBLSPLIT_ERROR (ERROR_SW_BASE|ERRCODE_CLASS_NONE| 56 ) +#define ERR_TBLINSCOL_ERROR (ERROR_SW_BASE|ERRCODE_CLASS_NONE| 57 ) +#define ERR_TBLDDECHG_ERROR (ERROR_SW_BASE|ERRCODE_CLASS_NONE| 58 ) + +// ----- Warnings --------------------------- + +// Import - Warnings +#define WARN_SWG_NO_DRAWINGS (WARN_SW_READ_BASE | 70 ) +#define WARN_WW6_FASTSAVE_ERR (WARN_SW_READ_BASE | 71 ) + +// Import & Export - Warnings +#define WARN_SWG_FEATURES_LOST (WARN_SW_BASE | 72 ) +#define WARN_SWG_OLE (WARN_SW_BASE | 73 ) +#define WARN_SWG_POOR_LOAD (WARN_SW_BASE | 74 ) + +// Export warnings +#define WARN_SWG_HTML_NO_MACROS (WARN_SW_WRITE_BASE |75) + +#ifndef __RSC + +inline FASTBOOL IsWarning( ULONG nErr ) +{ + return 0 != ( nErr & ERRCODE_WARNING_MASK & nErr ); +} + +inline FASTBOOL IsError( ULONG nErr ) +{ + return nErr && 0 == ( ERRCODE_WARNING_MASK & nErr ); +} + +#endif + + +#endif + diff --git a/sw/inc/swevent.hxx b/sw/inc/swevent.hxx new file mode 100644 index 000000000000..2dc79cbe6ca8 --- /dev/null +++ b/sw/inc/swevent.hxx @@ -0,0 +1,151 @@ +/************************************************************************* + * + * $RCSfile: swevent.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWEVENT_HXX +#define _SWEVENT_HXX + +// #include ***************************************************************** + +#ifndef _SOLAR_H +#include +#endif + +#ifndef _SFX_HRC +#include +#endif + +#define SW_EVENT_OBJECT_SELECT ( EVENT_APP_START + 0 ) +#define SW_EVENT_START_INS_GLOSSARY ( EVENT_APP_START + 1 ) +#define SW_EVENT_END_INS_GLOSSARY ( EVENT_APP_START + 2 ) +#define SW_EVENT_MAIL_MERGE ( EVENT_APP_START + 3 ) +#define SW_EVENT_FRM_KEYINPUT_ALPHA ( EVENT_APP_START + 4 ) +#define SW_EVENT_FRM_KEYINPUT_NOALPHA ( EVENT_APP_START + 5 ) +#define SW_EVENT_FRM_RESIZE ( EVENT_APP_START + 6 ) +#define SW_EVENT_FRM_MOVE ( EVENT_APP_START + 7 ) +#define SW_EVENT_PAGE_COUNT ( EVENT_APP_START + 8 ) + + +class SwFrmFmt; +class SwFmtINetFmt; +class IMapObject; + +// enum fuer Objecte die Events ins Basic oder in JavaScript Callen +enum SwCallEventObjectType +{ + EVENT_OBJECT_NONE = 0, // Null ist garnichts + EVENT_OBJECT_IMAGE, + EVENT_OBJECT_INETATTR, + EVENT_OBJECT_URLITEM, + EVENT_OBJECT_IMAGEMAP +}; + +// structur fuer den Austausch zwischen UI/CORE + +struct SwCallMouseEvent +{ + SwCallEventObjectType eType; + union + { + // EVENT_OBJECT_IMAGE/EVENT_OBJECT_URLITEM + const SwFrmFmt* pFmt; + + // EVENT_OBJECT_INETATTR + const SwFmtINetFmt* pINetAttr; + + // EVENT_OBJECT_IMAGEMAP + struct + { + const SwFrmFmt* pFmt; + const IMapObject* pIMapObj; + } IMAP; + } PTR; + + SwCallMouseEvent() + : eType( EVENT_OBJECT_NONE ) + { PTR.pFmt = 0; PTR.IMAP.pIMapObj = 0; } + + void Set( SwCallEventObjectType eTyp, const SwFrmFmt* pFmt ) + { eType = eTyp; PTR.pFmt = pFmt; PTR.IMAP.pIMapObj = 0; } + + void Set( const SwFrmFmt* pFmt, const IMapObject* pIMapObj ) + { eType = EVENT_OBJECT_IMAGEMAP; PTR.pFmt = pFmt; PTR.IMAP.pIMapObj = pIMapObj; } + + void Set( const SwFmtINetFmt* pINetAttr ) + { eType = EVENT_OBJECT_INETATTR; PTR.pINetAttr = pINetAttr; PTR.IMAP.pIMapObj = 0; } + + int operator==( const SwCallMouseEvent& rEvent ) const + { + return eType == rEvent.eType && + PTR.pFmt == rEvent.PTR.pFmt && + PTR.IMAP.pIMapObj == rEvent.PTR.IMAP.pIMapObj; + } + int operator!=( const SwCallMouseEvent& rEvent ) const + { return !( *this == rEvent ); } + + void Clear() + { eType = EVENT_OBJECT_NONE; PTR.pFmt = 0; PTR.IMAP.pIMapObj = 0; } + + BOOL HasEvent() const { return EVENT_OBJECT_NONE != eType; } +}; + + +#endif + diff --git a/sw/inc/swgstr.hxx b/sw/inc/swgstr.hxx new file mode 100644 index 000000000000..0887529c907b --- /dev/null +++ b/sw/inc/swgstr.hxx @@ -0,0 +1,190 @@ +/************************************************************************* + * + * $RCSfile: swgstr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWGSTR_HXX +#define _SWGSTR_HXX + +#ifndef _STREAM_HXX //autogen +#include +#endif + +typedef long long3; // Zur Dokumentation: 3-byte-Longs + +#define MAX_BEGIN 64 // Maximale Blockschachtelung +#define PASSWDLEN 16 // Maximale Passwortlaenge + +// Neue Version mit SvStreams + +// Passwort- und Codierungs-Funktionalitaet + +class swcrypter { +protected: + sal_Char cPasswd[ PASSWDLEN ]; // Passwort-Puffer + BOOL bPasswd; // TRUE wenn mit Passwort + void encode( sal_Char*, USHORT ); // Puffer codieren/decodieren +public: + swcrypter(); + BOOL setpasswd( const String& ); // Passwort setzen + void copypasswd( const sal_Char* ); // Passwort direkt setzen + const sal_Char* getpasswd() { return cPasswd; } +}; + +// Reader/Writer-Stream-Basisklasse mit Pufferverwaltung fuer Texte +// und Spezial-I/O fuer 3-Byte-Longs + +class swstreambase : public swcrypter { +protected: + SvStream* pStrm; // eigentlicher Stream + sal_Char* pBuf; // Zwischenpuffer + USHORT nBuflen; // Laenge des Zwischenpuffers + short nLong; // Long-Laenge (3 oder 4) + BOOL bTempStrm; // TRUE: Stream loeschen + void checkbuf( USHORT ); // Testen der Pufferlaenge + + swstreambase( SvStream& ); + + swstreambase( const swstreambase& ); + int operator=( const swstreambase& ); +public: + ~swstreambase(); + SvStream& Strm() { return *pStrm; } + void clear(); // Puffer loeschen + sal_Char* GetBuf() { return pBuf; } + + // Zusatzfunktionen zur I/O von LONGs als 3-Byte-Zahlen + + void long3() { nLong = 3; } + void long4() { nLong = 4; } + + void sync( swstreambase& r ) { pStrm->Seek( r.tell() ); } + + // Alias- und Hilfsfunktionen + + void seek( long nPos ) { pStrm->Seek( nPos ); } + long tell() { return pStrm->Tell(); } + long filesize(); // Dateigroesse + void flush() { pStrm->Flush(); } + + void setbad(); + int good() { return ( pStrm->GetError() == SVSTREAM_OK ); } + int bad() { return ( pStrm->GetError() != SVSTREAM_OK ); } + int operator!() { return ( pStrm->GetError() != SVSTREAM_OK ); } + int eof() { return pStrm->IsEof(); } + + BYTE get(); + void get( void* p, USHORT n ) { pStrm->Read( (sal_Char*) p, n ); } + + inline swstreambase& operator>>( sal_Char& ); + inline swstreambase& operator>>( BYTE& ); + inline swstreambase& operator>>( short& ); + inline swstreambase& operator>>( USHORT& ); + swstreambase& operator>>( long& ); + inline swstreambase& operator>>( ULONG& ); +}; + +inline swstreambase& swstreambase::operator>>( sal_Char& c ) +{ + *pStrm >> c; return *this; +} + +inline swstreambase& swstreambase::operator>>( BYTE& c ) +{ + *pStrm >> c; return *this; +} + +inline swstreambase& swstreambase::operator>>( short& c ) +{ + *pStrm >> c; return *this; +} + +inline swstreambase& swstreambase::operator>>( USHORT& c ) +{ + *pStrm >> c; return *this; +} + +inline swstreambase& swstreambase::operator>>( ULONG& c ) +{ + return *this >> (long&) c; +} + +class swistream : public swstreambase { + BYTE cType; // Record-Typ + ULONG nOffset; // Record-Offset-Portion +public: + swistream( SvStream& ); + + BYTE peek(); // 1 Byte testen + BYTE next(); // Blockstart + BYTE cur() { return cType; } // aktueller Block + BYTE skipnext(); // Record ueberspringen + void undonext(); // next() rueckgaengig machen + long getskip() { return nOffset; } + void skip( long = -1L ); // Block ueberspringen + sal_Char* text(); // Textstring lesen (nach BEGIN) + long size(); // aktuelle Record-Laenge + +private: + swistream( const swistream& ); + int operator=( const swistream& ); +}; + + +#endif diff --git a/sw/inc/swhints.hxx b/sw/inc/swhints.hxx new file mode 100644 index 000000000000..721857bb3bc0 --- /dev/null +++ b/sw/inc/swhints.hxx @@ -0,0 +1,72 @@ +/************************************************************************* + * + * $RCSfile: swhints.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef SW_HINTS_HXX +#define SW_HINTS_HXX + +#ifndef _SFXSMPLHINT_HXX //autogen +#include +#endif + +#define SW_BROADCASTID_START SFX_HINT_USER00 +#define SW_BROADCAST_DRAWVIEWS_CREATED SW_BROADCASTID_START + + +#endif diff --git a/sw/inc/swmodule.hxx b/sw/inc/swmodule.hxx new file mode 100644 index 000000000000..5fecd2cbb7fd --- /dev/null +++ b/sw/inc/swmodule.hxx @@ -0,0 +1,303 @@ +/************************************************************************* + * + * $RCSfile: swmodule.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWMODULE_HXX +#define _SWMODULE_HXX + + +#ifndef _LINK_HXX //autogen +#include +#endif +#ifndef _SFXMODULE_HXX //autogen +#include +#endif + +#ifndef _SFXLSTNER_HXX //autogen +#include +#endif +#ifndef SW_SWDLL_HXX +#include +#endif +#include "shellid.hxx" +#ifndef _STRING_HXX +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XDICTIONARYLISTEVENTLISTENER_HPP_ +#include +#endif + +class SvStringsDtor; +class Color; +class AuthorCharAttr; +class SfxItemSet; +class SfxRequest; +class SfxErrorHandler; +class SwSrcViewConfig; +class SwModuleOptions; +class SwMasterUsrPref; +class SwViewOption; +class SwView; +class SwWrtShell; +class SwPrintOptions; +class SwAutoFmtOpt; +class SwChapterNumRules; +class SwStdFontConfig; +class SwNavigationConfig; +class SwDataExchange; +class SwToolbarConfigItem; +class SwAttrPool; +#define VIEWOPT_DEST_VIEW 0 +#define VIEWOPT_DEST_TEXT 1 +#define VIEWOPT_DEST_WEB 2 +#define VIEWOPT_DEST_VIEW_ONLY 3 //ViewOptions werden nur an der ::com::sun::star::sdbcx::View, nicht an der Appl. gesetzt + +namespace com{ namespace sun{ namespace star{ namespace scanner{ + class XScannerManager; +}}}} + +class SwModule: public SwModuleDummy , public SfxListener +{ + String sActAuthor; + + // ConfigItems + SwSrcViewConfig* pSrcViewConfig; + SwModuleOptions* pModuleConfig; + SwMasterUsrPref* pUsrPref; + SwMasterUsrPref* pWebUsrPref; + SwPrintOptions* pPrtOpt; + SwPrintOptions* pWebPrtOpt; + SwChapterNumRules* pChapterNumRules; + SwStdFontConfig* pStdFontConfig; + SwNavigationConfig* pNavigationConfig; + SwToolbarConfigItem*pToolbarConfig; //f�r gestackte Toolbars, welche + SwToolbarConfigItem*pWebToolbarConfig; //war sichtbar? + + SfxErrorHandler* pErrorHdl; + + SwAttrPool *pAttrPool; + + // Die aktuelle ::com::sun::star::sdbcx::View wird hier gehalten um nicht ueber + // GetActiveView arbeiten zu muessen + // Die ::com::sun::star::sdbcx::View ist solange gueltig bis Sie im Activate + // zerstoert oder ausgetauscht wird + SwView* pView; + + // Liste aller Redline-Autoren + SvStringsDtor* pAuthorNames; + + // DictionaryList listener to trigger spellchecking or hyphenation + ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryListEventListener > xDicListEvtListener; + ::com::sun::star::uno::Reference< ::com::sun::star::scanner::XScannerManager > m_xScannerManager; + + sal_Bool bAuthorInitialised : 1; + sal_Bool bEmbeddedLoadSave : 1; + + virtual void FillStatusBar( StatusBar& ); + + // Hint abfangen fuer DocInfo + virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); + +protected: + // Briefumschlaege, Etiketten + void InsertEnv(); + void InsertLab(sal_Bool bLabel); + +public: + TYPEINFO(); + SFX_DECL_INTERFACE(SW_INTERFACE_MODULE); + + // dieser Ctor nur fuer SW-Dll + SwModule( SvFactory* pFact, + SvFactory* pWebFact, + SvFactory* pGlobalFact ); + // dieser Ctor nur fuer Web-Dll + SwModule( SvFactory* pWebFact ); + + ~SwModule(); + + virtual SfxModule* Load(); + + // ::com::sun::star::sdbcx::View setzen nur fuer internen Gebrauch, + // aus techn. Gruenden public + // + inline void SetView(SwView* pVw) { pView = pVw; } + inline SwView* GetView() { return pView; } + + //Die Handler fuer die Slots + void StateOther(SfxItemSet &); // andere + void StateViewOptions(SfxItemSet &); + void StateIsView(SfxItemSet &); + + void ExecOther(SfxRequest &); // Felder, Formel .. + void ExecViewOptions(SfxRequest &); + void ExecWizzard(SfxRequest &); + void ExecDB(SfxRequest &); // DBManager + + // Benutzereinstellungen modifizieren + const SwMasterUsrPref *GetUsrPref(sal_Bool bWeb); + const SwViewOption* GetViewOption(sal_Bool bWeb); + void MakeUsrPref( SwViewOption &rToFill, sal_Bool bWeb ) const; + void ApplyUsrPref(const SwViewOption &, SwView*, + sal_uInt16 nDest = VIEWOPT_DEST_VIEW ); + + // ConfigItems erzeugen + SwSrcViewConfig* GetSourceViewConfig(); + SwModuleOptions* GetModuleConfig() { return pModuleConfig;} + SwPrintOptions* GetPrtOptions(sal_Bool bWeb); + SwChapterNumRules* GetChapterNumRules(); + SwStdFontConfig* GetStdFontConfig() { return pStdFontConfig; } + SwNavigationConfig* GetNavigationConfig(); + SwToolbarConfigItem*GetToolbarConfig() { return pToolbarConfig; } + SwToolbarConfigItem*GetWebToolbarConfig() { return pWebToolbarConfig; } + + // UNO +// virtual Reflection* GetReflection( UsrUik aUIK ); + + // Ueber Sichten iterieren + static SwView* GetFirstView(); + static SwView* GetNextView(SwView*); + + sal_Bool IsEmbeddedLoadSave() const { return bEmbeddedLoadSave; } + void SetEmbeddedLoadSave( sal_Bool bFlag ) { bEmbeddedLoadSave = bFlag; } + + + // Public Data + // + SwDataExchange* pClipboard; + SwDataExchange* pDragDrop; + + void ShowDBObj(SwWrtShell& rShell, const String& rDBName, sal_Bool bShowError = sal_False); + + // Tabellenmodi + sal_Bool IsInsTblFormatNum(sal_Bool bHTML) const; + sal_Bool IsInsTblChangeNumFormat(sal_Bool bHTML) const; + sal_Bool IsInsTblAlignNum(sal_Bool bHTML) const; + + // Redlining + sal_uInt16 GetRedlineAuthor(); + sal_uInt16 GetRedlineAuthorCount(); + const String& GetRedlineAuthor(sal_uInt16 nPos); + sal_uInt16 InsertRedlineAuthor(const String& rAuthor); + + void GetInsertAuthorAttr(sal_uInt16 nAuthor, SfxItemSet &rSet); + void GetDeletedAuthorAttr(sal_uInt16 nAuthor, SfxItemSet &rSet); + void GetFormatAuthorAttr(sal_uInt16 nAuthor, SfxItemSet &rSet); + + const AuthorCharAttr& GetInsertAuthorAttr() const; + const AuthorCharAttr& GetDeletedAuthorAttr() const; + const AuthorCharAttr& GetFormatAuthorAttr() const; + + sal_uInt16 GetRedlineMarkPos(); + const Color& GetRedlineMarkColor(); + + // returne den definierten DocStat - WordDelimiter + const String& GetDocStatWordDelim() const; + + // Durchreichen der Metric von der ModuleConfig (fuer HTML-Export) + sal_uInt16 GetMetric( sal_Bool bWeb ) const; + + // Update-Stati durchreichen + sal_uInt16 GetLinkUpdMode( sal_Bool bWeb ) const; + sal_uInt16 GetFldUpdateFlags( sal_Bool bWeb ) const; + + //virtuelle Methoden fuer den Optionendialog + virtual SfxItemSet* CreateItemSet( sal_uInt16 nId ); + virtual void ApplyItemSet( sal_uInt16 nId, const SfxItemSet& rSet ); + virtual SfxTabPage* CreateTabPage( sal_uInt16 nId, Window* pParent, const SfxItemSet& rSet ); + + //hier wird der Pool angelegt und an der SfxShell gesetzt + void InitAttrPool(); + //Pool loeschen bevor es zu spaet ist + void RemoveAttrPool(); + + // Invalidiert ggf. OnlineSpell-WrongListen + void CheckSpellChanges( sal_Bool bOnlineSpelling, + sal_Bool bIsSpellWrongAgain, sal_Bool bIsSpellAllAgain ); + + inline ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryListEventListener > GetDicListEvtListener(); + inline void SetDicListEvtListener(::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryListEventListener > xLstnr); + + ::com::sun::star::uno::Reference< ::com::sun::star::scanner::XScannerManager > GetScannerManager() const {return m_xScannerManager;} + +}; + + +inline ::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryListEventListener > SwModule::GetDicListEvtListener() +{ + return xDicListEvtListener; +} + +inline void SwModule::SetDicListEvtListener(::com::sun::star::uno::Reference< ::com::sun::star::linguistic::XDictionaryListEventListener > xLstnr) +{ + xDicListEvtListener = xLstnr; +} + + +/*-----------------08.07.97 10.33------------------- + Zugriff auf das SwModule, die ::com::sun::star::sdbcx::View und die Shell +--------------------------------------------------*/ + +#define SW_MOD() ( *(SwModule**) GetAppData(SHL_WRITER)) +SwView* GetActiveView(); +SwWrtShell* GetActiveWrtShell(); + + + +#endif diff --git a/sw/inc/swpre.mk b/sw/inc/swpre.mk new file mode 100644 index 000000000000..55cb472d2705 --- /dev/null +++ b/sw/inc/swpre.mk @@ -0,0 +1,85 @@ +#************************************************************************* +# +# $RCSfile: swpre.mk,v $ +# +# $Revision: 1.1.1.1 $ +# +# last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + + +#====================================================================== +# standardmaessig mit Optimierung, muss explizit mit nopt=t ausgeschaltet +# werden, wenn nicht gewuenscht +#---------------------------------------------------------------------- + +.IF "$(nopt)"!="" || "$(NOPT)"!="" +nopt=true +NOPT=TRUE +optimize= +OPTIMIZE= +.ELSE +.IF "$(debug)$(DEBUG)"=="" +optimize=true +OPTIMIZE=TRUE +.ENDIF +.ENDIF + +# falls dependencies auf s:\solver\... erstellt werden sollen +# MKDEPENDSOLVER=YES +PROJECTPCH4DLL=TRUE + + diff --git a/sw/inc/swprtopt.hxx b/sw/inc/swprtopt.hxx new file mode 100644 index 000000000000..7128fd1eed97 --- /dev/null +++ b/sw/inc/swprtopt.hxx @@ -0,0 +1,131 @@ +/************************************************************************* + * + * $RCSfile: swprtopt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWPRTOPT_HXX +#define _SWPRTOPT_HXX + +#ifndef _SV_MULTISEL_HXX //autogen +#include +#endif + +#define POSTITS_NONE 0 +#define POSTITS_ONLY 1 +#define POSTITS_ENDDOC 2 +#define POSTITS_ENDPAGE 3 + +class SwPrtOptions +{ + USHORT nJobNo; + String sJobName; + +public: + SwPrtOptions( const String& rJobName ) : aOffset( Point(0,0) ), + nMergeCnt( 0 ), nMergeAct( 0 ), sJobName( rJobName ), + nJobNo( 1 ) + {} + + const String& MakeNextJobName(); // steht in vprint.cxx + const String& GetJobName() const { return sJobName; } + +#if defined(TCPP) + // seit neuestem (SV 223) kann der keinen mehr generieren + inline SwPrtOptions(const SwPrtOptions& rNew) {*this = rNew;} +#endif + + MultiSelection aMulti; + Point aOffset; + ULONG nMergeCnt; // Anzahl der Serienbriefe + ULONG nMergeAct; // Aktueller Serienbriefnr. + USHORT nCopyCount; + USHORT nPrintPostIts; + BOOL bPrintGraph, //Grafiken/OLE Drucken + bPrintTable, //Tabellen Drucken + bPrintDraw, //Zeichenobjekte Drucken + bPrintControl, //Controls Drucken + bPrintLeftPage, + bPrintRightPage, + bPrintReverse, + bPaperFromSetup, + bCollate, + bPrintSelection, // Markierung drucken + bPrintPageBackground, + bPrintBlackFont, + bSinglePrtJobs, + bJobStartet; +}; + + +#endif //_SWPRTOPT_HXX + + + + + + + + + + + + + + + diff --git a/sw/inc/swrect.hxx b/sw/inc/swrect.hxx new file mode 100644 index 000000000000..1abad52ea72f --- /dev/null +++ b/sw/inc/swrect.hxx @@ -0,0 +1,370 @@ +/************************************************************************* + * + * $RCSfile: swrect.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWRECT_HXX +#define _SWRECT_HXX + +#include "errhdl.hxx" + +#ifndef _GEN_HXX //autogen +#include +#endif +class SvStream; + + +class SwRect +{ + long nX; + long nY; + long nWidth; + long nHeight; + +public: + inline SwRect(); + inline SwRect( const SwRect &rRect ); + inline SwRect( const Point& rLT, const Size& rSize ); + inline SwRect( const Point& rLT, const Point& rRB ); + inline SwRect( long X, long Y, long Width, long Height ); + + //SV-SS z.B. SwRect( pWin->GetClipRect() ); + SwRect( const Rectangle &rRect ); + + //Set-Methoden + inline void Chg( const Point& rNP, const Size &rNS ); + inline void Pos( const Point& rNew ); + inline void Pos( const long nNewX, const long nNewY ); + inline void SSize( const Size& rNew ); + inline void SSize( const long nHeight, const long nWidth ); + inline void Width( long nNew ); + inline void Height( long nNew ); + inline void Left( const long nLeft ); + inline void Right( const long nRight ); + inline void Top( const long nTop ); + inline void Bottom( const long nBottom ); + + //Get-Methoden + inline const Point &Pos() const; + inline const Size &SSize() const; + inline long Width() const; + inline long Height() const; + inline long Left() const; + inline long Right() const; + inline long Top() const; + inline long Bottom() const; + + //Damit Layoutseitig per Memberpointer auf die Member von Pos und SSize + //zugegriffen werden kann. + inline Point &Pos(); + inline Size &SSize(); + + Point Center() const; + + void Justify(); + + SwRect &Union( const SwRect& rRect ); + SwRect &Intersection( const SwRect& rRect ); + //Wie Intersection nur wird davon ausgegangen, dass die Rects ueberlappen! + SwRect &_Intersection( const SwRect &rRect ); + inline SwRect GetUnion( const SwRect& rRect ) const; + inline SwRect GetIntersection( const SwRect& rRect ) const; + + BOOL IsInside( const Point& rPOINT ) const; + BOOL IsNear(const Point& rPoint, long nTolerance ) const; + BOOL IsInside( const SwRect& rRect ) const; + BOOL IsOver( const SwRect& rRect ) const; + inline BOOL HasArea() const; + inline BOOL IsEmpty() const; + inline void Clear(); + + inline SwRect &operator = ( const SwRect &rRect ); + + inline BOOL operator == ( const SwRect& rRect ) const; + inline BOOL operator != ( const SwRect& rRect ) const; + + inline SwRect &operator+=( const Point &rPt ); + inline SwRect &operator-=( const Point &rPt ); + + inline SwRect &operator+=( const Size &rSz ); + inline SwRect &operator-=( const Size &rSz ); + + //SV-SS z.B. pWin->DrawRect( aSwRect.SVRect() ); + inline Rectangle SVRect() const; + + //Zortech wuerde hier fehlerhaften Code erzeugen. +// inline operator SRectangle() const; +// inline operator Rectangle() const { return Rectangle( aPos, aSize ); } + + // Ausgabeoperator fuer die Debugging-Gemeinde + friend SvStream &operator<<( SvStream &rStream, const SwRect &rRect ); +}; + +// Implementation in in swrect.cxx +extern SvStream &operator<<( SvStream &rStream, const SwRect &rRect ); + + + +//---------------------------------- Set-Methoden +inline void SwRect::Chg( const Point& rNP, const Size &rNS ) +{ + nX = rNP.X(); nY = rNP.Y(); + nWidth = rNS.Width(); nHeight = rNS.Height(); +} +inline void SwRect::Pos( const Point& rNew ) +{ + nX = rNew.X(); nY = rNew.Y(); +} +inline void SwRect::Pos( const long nNewX, const long nNewY ) +{ + nX = nNewX; nY = nNewY; +} +inline void SwRect::SSize( const Size& rNew ) +{ + nWidth = rNew.Width(); nHeight = rNew.Height(); +} +inline void SwRect::SSize( const long nNewHeight, const long nNewWidth ) +{ + nWidth = nNewWidth; nHeight = nNewHeight; +} +inline void SwRect::Width( long nNew ) +{ + nWidth = nNew; +} +inline void SwRect::Height( long nNew ) +{ + nHeight = nNew; +} +inline void SwRect::Left( const long nLeft ) +{ + nWidth += nX - nLeft; + nX = nLeft; +} +inline void SwRect::Right( const long nRight ) +{ + nWidth = nRight - nX + 1; +} +inline void SwRect::Top( const long nTop ) +{ + nHeight += nY - nTop; + nY = nTop; +} +inline void SwRect::Bottom( const long nBottom ) +{ + nHeight = nBottom - nY + 1; +} + +//----------------------------------- Get-Methoden +inline const Point &SwRect::Pos() const +{ + return *(Point*)(&nX); +} +inline Point &SwRect::Pos() +{ + return *(Point*)(&nX); +} +inline const Size &SwRect::SSize() const +{ + return *(Size*)(&nWidth); +} +inline Size &SwRect::SSize() +{ + return *(Size*)(&nWidth); +} +inline long SwRect::Width() const +{ + return nWidth; +} +inline long SwRect::Height() const +{ + return nHeight; +} +inline long SwRect::Left() const +{ + return nX; +} +inline long SwRect::Right() const +{ + return nWidth ? nX + nWidth - 1 : nX; +} +inline long SwRect::Top() const +{ + return nY; +} +inline long SwRect::Bottom() const +{ + return nHeight ? nY + nHeight - 1 : nY; +} + +//----------------------------------- operatoren +inline SwRect &SwRect::operator = ( const SwRect &rRect ) +{ + nX = rRect.Left(); + nY = rRect.Top(); + nWidth = rRect.Width(); + nHeight = rRect.Height(); + return *this; +} +inline BOOL SwRect::operator == ( const SwRect& rRect ) const +{ + return (nX == rRect.Left() && + nY == rRect.Top() && + nWidth == rRect.Width() && + nHeight == rRect.Height()); +} +inline BOOL SwRect::operator != ( const SwRect& rRect ) const +{ + return (nX != rRect.Left() || + nY != rRect.Top() || + nWidth != rRect.Width() || + nHeight != rRect.Height()); +} + +inline SwRect &SwRect::operator+=( const Point &rPt ) +{ + nX += rPt.X(); nY += rPt.Y(); + return *this; +} +inline SwRect &SwRect::operator-=( const Point &rPt ) +{ + nX -= rPt.X(); nY -= rPt.Y(); + return *this; +} + +inline SwRect &SwRect::operator+=( const Size &rSz ) +{ + nWidth += rSz.Width(); nHeight += rSz.Height(); + return *this; +} +inline SwRect &SwRect::operator-=( const Size &rSz ) +{ + nWidth -= rSz.Width(); nHeight -= rSz.Height(); + return *this; +} + + +//--------------------------- Sonstiges +inline Rectangle SwRect::SVRect() const +{ + ASSERT( nWidth && nHeight, "SVRect() ohne Widht oder Height" ); + return Rectangle( nX, nY, + nX + nWidth - 1, //Right() + nY + nHeight - 1 ); //Bottom() +} + +inline SwRect SwRect::GetUnion( const SwRect& rRect ) const +{ + return SwRect( *this ).Union( rRect ); +} +inline SwRect SwRect::GetIntersection( const SwRect& rRect ) const +{ + return SwRect( *this ).Intersection( rRect ); +} + +inline BOOL SwRect::HasArea() const +{ + return nHeight && nWidth; +} +inline BOOL SwRect::IsEmpty() const +{ + return !(nHeight && nWidth); +} +inline void SwRect::Clear() +{ + nX = nY = nWidth = nHeight = 0; +} + +//-------------------------- CToren +inline SwRect::SwRect() : + nX( 0 ), + nY( 0 ), + nWidth ( 0 ), + nHeight( 0 ) +{ +} +inline SwRect::SwRect( const SwRect &rRect ) : + nX( rRect.Left() ), + nY( rRect.Top() ), + nWidth ( rRect.Width() ), + nHeight( rRect.Height() ) +{ +} +inline SwRect::SwRect( const Point& rLT, const Size& rSize ) : + nX( rLT.X() ), + nY( rLT.Y() ), + nWidth ( rSize.Width() ), + nHeight( rSize.Height()) +{ +} +inline SwRect::SwRect( const Point& rLT, const Point& rRB ) : + nX( rLT.X() ), + nY( rLT.Y() ), + nWidth ( rRB.X() - rLT.X() + 1 ), + nHeight( rRB.Y() - rLT.Y() + 1 ) +{ +} +inline SwRect::SwRect( long X, long Y, long Width, long Height ) : + nX( X ), + nY( Y ), + nWidth ( Width ), + nHeight( Height ) +{ +} + + +#endif //_SWRECT_HXX diff --git a/sw/inc/swregion.hxx b/sw/inc/swregion.hxx new file mode 100644 index 000000000000..ac61ff811e35 --- /dev/null +++ b/sw/inc/swregion.hxx @@ -0,0 +1,93 @@ +/************************************************************************* + * + * $RCSfile: swregion.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWREGION_HXX +#define _SWREGION_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#include "swrect.hxx" + +SV_DECL_VARARR( SwRects, SwRect, 20, 8 ); + +class SwRegionRects : public SwRects +{ + SwRect aOrigin; // die Kopie des StartRects + + inline void InsertRect( const SwRect &rRect, const USHORT nPos, FASTBOOL &rDel); + +public: + SwRegionRects( const SwRect& rStartRect, USHORT nInit = 20, + USHORT nGrow = 8 ); + // Zum Ausstanzen aus aOrigin. + void operator-=( const SwRect& rRect ); + + // Aus Loechern werden Flaechen, aus Flaechen werden Loecher. + void Invert(); + // Benachbarte Rechtecke zusammenfassen. + void Compress( BOOL bFuzzy = TRUE ); + + inline const SwRect &GetOrigin() const { return aOrigin; } + inline void ChangeOrigin( const SwRect &rRect ) { aOrigin = rRect; } +}; + +#endif //_SWREGION_HXX diff --git a/sw/inc/swserv.hxx b/sw/inc/swserv.hxx new file mode 100644 index 000000000000..5e5a51171a18 --- /dev/null +++ b/sw/inc/swserv.hxx @@ -0,0 +1,129 @@ +/************************************************************************* + * + * $RCSfile: swserv.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _SWSERV_HXX +#define _SWSERV_HXX + +#ifndef _PSEUDO_HXX //autogen +#include +#endif + +class SwBookmark; +class SwSectionNode; +class SwBaseLink; +class SwTableNode; +struct SwPosition; +class SwPaM; + +class SwServerObject : public SvPseudoObject +{ +protected: + enum ServerModes { BOOKMARK_SERVER, TABLE_SERVER, SECTION_SERVER, NONE_SERVER } eType; + union { + SwBookmark* pBkmk; + SwTableNode* pTblNd; + SwSectionNode* pSectNd; + } CNTNT_TYPE; + + SwServerObject(); + +public: + SwServerObject( SwBookmark& rBookmark ) + : eType( BOOKMARK_SERVER ) + { + CNTNT_TYPE.pBkmk = &rBookmark; + } + SwServerObject( SwTableNode& rTableNd ) + : eType( TABLE_SERVER ) + { + CNTNT_TYPE.pTblNd = &rTableNd; + } + SwServerObject( SwSectionNode& rSectNd ) + : eType( SECTION_SERVER ) + { + CNTNT_TYPE.pSectNd = &rSectNd; + } + virtual ~SwServerObject(); + + virtual BOOL GetData( SvData* ); + virtual BOOL ChangeData( SvData& ); + + ULONG GetSelectorCount() const + { return SvPseudoObject::GetSelectorCount(); } + + virtual void SendDataChanged( const SwPosition& rPos ); + virtual void SendDataChanged( const SwPaM& rRange ); + + BOOL IsLinkInServer( const SwBaseLink* ) const; + + void SetNoServer() + { CNTNT_TYPE.pBkmk = 0, eType = NONE_SERVER; } +}; + +#ifndef SW_DECL_SWSERVEROBJECT_DEFINED +#define SW_DECL_SWSERVEROBJECT_DEFINED +class SvPseudoObject; +SO2_DECL_REF( SwServerObject ) +#endif + + +#endif // _SWSERV_HXX + diff --git a/sw/inc/swstyle.h b/sw/inc/swstyle.h new file mode 100644 index 000000000000..cc80cf1af63f --- /dev/null +++ b/sw/inc/swstyle.h @@ -0,0 +1,75 @@ +/************************************************************************* + * + * $RCSfile: swstyle.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWSTYLE_H +#define _SWSTYLE_H + + +#define SWSTYLEBIT_TEXT 0x0001 +#define SWSTYLEBIT_CHAPTER 0x0002 +#define SWSTYLEBIT_LIST 0x0004 +#define SWSTYLEBIT_IDX 0x0008 +#define SWSTYLEBIT_EXTRA 0x0010 +#define SWSTYLEBIT_HTML 0x0020 +#define SWSTYLEBIT_CONDCOLL 0x0040 + + +#endif + diff --git a/sw/inc/swtable.hxx b/sw/inc/swtable.hxx new file mode 100644 index 000000000000..23ea03e1aa93 --- /dev/null +++ b/sw/inc/swtable.hxx @@ -0,0 +1,393 @@ +/************************************************************************* + * + * $RCSfile: swtable.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWTABLE_HXX +#define _SWTABLE_HXX + +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif +#ifndef _SO2REF_HXX //autogen +#include +#endif +#ifndef _SVARRAY_HXX //autogen +#include +#endif +#ifndef _TBLENUM_HXX +#include +#endif +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _CALBCK_HXX +#include +#endif +#ifndef _SWRECT_HXX +#include +#endif + +#ifdef PRODUCT +#ifndef _NODE_HXX +#include // fuer StartNode->GetMyIndex +#endif +#else +class SwStartNode; +#endif + +class Color; +class SwFrmFmt; +class SwTableFmt; +class SwTableLineFmt; +class SwTableBoxFmt; +class SwHTMLTableLayout; +class SwTableLine; +class SwTableBox; +class SwTableNode; +class SwTabCols; +class SwDoc; +class SwSelBoxes; +class SwTblCalcPara; +class SwChartLines; +struct SwPosition; +class SwNodeIndex; +class SfxPoolItem; +class SchMemChart; +class SwUndoTblMerge; +class SwUndo; +class SwTableBox_Impl; +class SwUndoTblCpyTbl; + +#ifndef SW_DECL_SWSERVEROBJECT_DEFINED +#define SW_DECL_SWSERVEROBJECT_DEFINED +class SvPseudoObject; +SO2_DECL_REF( SwServerObject ) +#endif + +SV_DECL_PTRARR_DEL(SwTableLines, SwTableLine*, 10, 20); +SV_DECL_PTRARR_DEL(SwTableBoxes, SwTableBox*, 25, 50); + +// speicher die Inhaltstragenden Box-Pointer zusaetzlich in einem +// sortierten Array (fuers rechnen in der Tabelle) +typedef SwTableBox* SwTableBoxPtr; +SV_DECL_PTRARR_SORT( SwTableSortBoxes, SwTableBoxPtr, 25, 50 ); + +class SwTable: public SwClient //Client vom FrmFmt +{ +protected: + SwTableLines aLines; + SwTableSortBoxes aSortCntBoxes; + SwServerObjectRef refObj; // falls DataServer -> Pointer gesetzt + + SwHTMLTableLayout *pHTMLLayout; + +//SOLL das fuer jede Tabelle einstellbar sein? + TblChgMode eTblChgMode; + + USHORT nGrfsThatResize; // Anzahl der Grfs, die beim HTML-Import + // noch ein Resize der Tbl. anstossen + + BOOL bModifyLocked :1; + BOOL bHeadlineRepeat:1; + + BOOL IsModifyLocked(){ return bModifyLocked;} + +public: + TYPEINFO(); + + SwTable( SwTableFmt* ); + SwTable( const SwTable& rTable ); // kein Copy der Lines !! + ~SwTable(); + + SwHTMLTableLayout *GetHTMLTableLayout() { return pHTMLLayout; } + const SwHTMLTableLayout *GetHTMLTableLayout() const { return pHTMLLayout; } + void SetHTMLTableLayout( SwHTMLTableLayout *p ); //Eigentumsuebergang! + + USHORT IncGrfsThatResize() { return ++nGrfsThatResize; } + USHORT DecGrfsThatResize() { return nGrfsThatResize ? --nGrfsThatResize : 0; } + + void LockModify() { bModifyLocked = TRUE; } //Muessen _immer_ paarig + void UnlockModify() { bModifyLocked = FALSE;} //benutzt werden! + + BOOL IsHeadlineRepeat() const { return bHeadlineRepeat; } + void SetHeadlineRepeat( BOOL bSet ) { bHeadlineRepeat = bSet; } + + SwTableLines &GetTabLines() { return aLines; } + const SwTableLines &GetTabLines() const { return aLines; } + + SwFrmFmt* GetFrmFmt() { return (SwFrmFmt*)pRegisteredIn; } + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)pRegisteredIn; } + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + + void GetTabCols( SwTabCols &rToFill, const SwTableBox *pStart, + FASTBOOL bHidden = FALSE ) const; + void SetTabCols( const SwTabCols &rNew, SwTabCols &rOld, + const SwTableBox *pStart, BOOL bCurRowOnly ); + + BOOL InsertCol( SwDoc*, const SwSelBoxes& rBoxes, + USHORT nCnt = 1, BOOL bBehind = TRUE ); + BOOL InsertRow( SwDoc*, const SwSelBoxes& rBoxes, + USHORT nCnt = 1, BOOL bBehind = TRUE ); + BOOL AppendRow( SwDoc* pDoc, USHORT nCnt = 1 ); + BOOL DeleteSel( SwDoc*, const SwSelBoxes& rBoxes, SwUndo* pUndo = 0, + const BOOL bDelMakeFrms = TRUE, + const BOOL bCorrBorder = TRUE ); + BOOL SplitRow( SwDoc* pDoc, const SwSelBoxes& rBoxes, USHORT nCnt=1 ); + BOOL SplitCol( SwDoc* pDoc, const SwSelBoxes& rBoxes, USHORT nCnt=1 ); + BOOL Merge( SwDoc* pDoc, const SwSelBoxes& rBoxes, + SwTableBox* pMergeBox, SwUndoTblMerge* = 0 ); + + SwTableSortBoxes& GetTabSortBoxes() { return aSortCntBoxes; } + const SwTableSortBoxes& GetTabSortBoxes() const { return aSortCntBoxes; } + + // gebe den Zellnamen zu der angebenen Row/Col zurueck. Das ist + // nur fuer ausgeglichene Tabellen interessant, weil diese keine + // "Sub"Boxen kennen. Es wird z.B. aus (0,0) ein "A1". + static String GetBoxName( USHORT nRow, USHORT nCol ); + // lese die 1. Nummer und loesche sie aus dem String + // (wird von GetTblBox und SwTblFld benutzt) + static USHORT _GetBoxNum( String& rStr, BOOL bFirst = FALSE ); + // suche die Inhaltstragende Box mit dem Namen + const SwTableBox* GetTblBox( const String& rName ) const; + // kopiere die selektierten Boxen in ein anderes Dokument. + BOOL MakeCopy( SwDoc*, const SwPosition&, const SwSelBoxes&, + BOOL bCpyNds = TRUE, BOOL bCpyName = FALSE ) const; + // kopiere die Tabelle in diese. (die Logik steht im TBLRWCL.CXX) + BOOL InsTable( const SwTable& rCpyTbl, const SwNodeIndex&, + SwUndoTblCpyTbl* pUndo = 0 ); + BOOL InsTable( const SwTable& rCpyTbl, const SwSelBoxes&, + SwUndoTblCpyTbl* pUndo = 0 ); + // kopiere die Headline (mit Inhalt!) der Tabelle in eine andere + BOOL CopyHeadlineIntoTable( SwTableNode& rTblNd ); + + // erfrage die Box, dessen Start-Index auf nBoxStt steht + SwTableBox* GetTblBox( ULONG nSttIdx ); + const SwTableBox* GetTblBox( ULONG nSttIdx ) const + { return ((SwTable*)this)->GetTblBox( nSttIdx ); } + + // returnt TRUE wenn sich in der Tabelle Verschachtelungen befinden + BOOL IsTblComplex() const; + + //returnt TRUE wenn die Tabelle oder Selektion ausgeglichen ist + BOOL IsTblComplexForChart( const String& rSel, + SwChartLines* pGetCLines = 0 ) const; + + // suche alle Inhaltstragenden-Boxen der Grundline in der diese Box + // steht. rBoxes auch als Return-Wert, um es gleich weiter zu benutzen + //JP 31.01.97: bToTop = TRUE -> hoch bis zur Grundline, + // FALSE-> sonst nur die Line der Box + SwSelBoxes& SelLineFromBox( const SwTableBox* pBox, + SwSelBoxes& rBoxes, BOOL bToTop = TRUE ) const; + // erfrage vom Client Informationen + virtual BOOL GetInfo( SfxPoolItem& ) const; + + // suche im Format nach der angemeldeten Tabelle + static SwTable* FindTable( SwFrmFmt* pFmt ); + + // Struktur ein wenig aufraeumen + void GCLines(); + // BorderLine ein wenig aufraeumen + void GCBorderLines(); + + SwTableNode* GetTableNode() const; + + // Daten Server-Methoden + void SetRefObject( SvPseudoObject* ); + const SwServerObject* GetObject() const { return &refObj; } + SwServerObject* GetObject() { return &refObj; } + BOOL IsServer() const { return refObj.Is(); } + + //Daten fuer das Chart fuellen. + SchMemChart *UpdateData( SchMemChart *pData, + const String* pSelection = 0 ) const; + + TblChgMode GetTblChgMode() const { return eTblChgMode; } + void SetTblChgMode( TblChgMode eMode ) { eTblChgMode = eMode; } + + BOOL SetColWidth( SwTableBox& rAktBox, USHORT eType, + SwTwips nAbsDiff, SwTwips nRelDiff, SwUndo** ppUndo ); + BOOL SetRowHeight( SwTableBox& rAktBox, USHORT eType, + SwTwips nAbsDiff, SwTwips nRelDiff, SwUndo** ppUndo ); +}; + +class SwTableLine: public SwClient // Client vom FrmFmt +{ + SwTableBoxes aBoxes; + SwTableBox *pUpper; + +public: + TYPEINFO(); + + SwTableLine( SwTableLineFmt*, USHORT nBoxes, SwTableBox *pUp ); + ~SwTableLine(); + + SwTableBoxes &GetTabBoxes() { return aBoxes; } + const SwTableBoxes &GetTabBoxes() const { return aBoxes; } + + SwTableBox *GetUpper() { return pUpper; } + const SwTableBox *GetUpper() const { return pUpper; } + void SetUpper( SwTableBox *pNew ) { pUpper = pNew; } + + + SwFrmFmt* GetFrmFmt() { return (SwFrmFmt*)pRegisteredIn; } + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)pRegisteredIn; } + + //Macht ein eingenes FrmFmt wenn noch mehr Lines von ihm abhaengen. + SwFrmFmt* ClaimFrmFmt(); + void ChgFrmFmt( SwTableLineFmt* pNewFmt ); + + // suche nach der naechsten/vorherigen Box mit Inhalt + SwTableBox* FindNextBox( const SwTable&, const SwTableBox* =0, + BOOL bOvrTblLns=TRUE ) const; + SwTableBox* FindPreviousBox( const SwTable&, const SwTableBox* =0, + BOOL bOvrTblLns=TRUE ) const; + + SwRect GetLineRect( const BOOL bPrtArea = FALSE ) const; +}; + +class SwTableBox: public SwClient //Client vom FrmFmt +{ + friend class SwNodes; // um den Index umzusetzen ! + friend void DelBoxNode(SwTableSortBoxes&); // um den StartNode* zu loeschen ! + friend class SwXMLTableContext; + + //nicht (mehr) implementiert. + SwTableBox( const SwTableBox & ); + + SwTableLines aLines; + const SwStartNode * pSttNd; + SwTableLine *pUpper; + SwTableBox_Impl* pImpl; + + SwTableBox &operator=( const SwTableBox &); //gibts nicht. + // falls das Format schon Formeln/Values enthaelt, muss ein neues + // fuer die neue Box erzeugt werden. + SwTableBoxFmt* CheckBoxFmt( SwTableBoxFmt* ); + +public: + TYPEINFO(); + + SwTableBox( SwTableBoxFmt*, USHORT nLines, SwTableLine *pUp = 0 ); + SwTableBox( SwTableBoxFmt*, const SwStartNode&, SwTableLine *pUp = 0 ); + SwTableBox( SwTableBoxFmt*, const SwNodeIndex&, SwTableLine *pUp = 0 ); + ~SwTableBox(); + + SwTableLines &GetTabLines() { return aLines; } + const SwTableLines &GetTabLines() const { return aLines; } + + SwTableLine *GetUpper() { return pUpper; } + const SwTableLine *GetUpper() const { return pUpper; } + void SetUpper( SwTableLine *pNew ) { pUpper = pNew; } + + SwFrmFmt* GetFrmFmt() { return (SwFrmFmt*)pRegisteredIn; } + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)pRegisteredIn; } + + //Macht ein eingenes FrmFmt wenn noch mehr Boxen von ihm abhaengen. + SwFrmFmt* ClaimFrmFmt(); + void ChgFrmFmt( SwTableBoxFmt *pNewFmt ); + + const SwStartNode *GetSttNd() const { return pSttNd; } + ULONG GetSttIdx() const +#ifdef PRODUCT + { return pSttNd ? pSttNd->GetIndex() : 0; } +#else + ; +#endif + + // suche nach der naechsten/vorherigen Box mit Inhalt + SwTableBox* FindNextBox( const SwTable&, const SwTableBox* =0, + BOOL bOvrTblLns=TRUE ) const; + SwTableBox* FindPreviousBox( const SwTable&, const SwTableBox* =0, + BOOL bOvrTblLns=TRUE ) const; + // gebe den Namen dieser Box zurueck. Dieser wird dynamisch bestimmt + // und ergibt sich aus der Position in den Lines/Boxen/Tabelle + String GetName() const; + // gebe den "Wert" der Box zurueck (fuers rechnen in der Tabelle) + double GetValue( SwTblCalcPara& rPara ) const; + + BOOL IsInHeadline( const SwTable* pTbl = 0 ) const; + + // enthaelt die Box Inhalt, der als Nummer formatiert werden kann? + BOOL HasNumCntnt( double& rNum, ULONG& rFmtIndex, + BOOL& rIsEmptyTxtNd ) const; + ULONG IsValidNumTxtNd( BOOL bCheckAttr = TRUE ) const; + // teste ob der BoxInhalt mit der Nummer uebereinstimmt, wenn eine + // Tabellenformel gesetzt ist. (fuers Redo des Change vom NumFormat!) + BOOL IsNumberChanged() const; + + // ist das eine FormelBox oder eine Box mit numerischen Inhalt (AutoSum) + // Was es ist, besagt der ReturnWert - die WhichId des Attributes + // Leere Boxen haben den ReturnWert USHRT_MAX !! + USHORT IsFormulaOrValueBox() const; + + // fuers Laden - tauscht bei Value Zellen den Inhalt aus, falls sie + // fuer die Sprache System formatiert sind. + void ChgByLanguageSystem(); + + DECL_FIXEDMEMPOOL_NEWDEL(SwTableBox) + + // zugriff auf interne Daten - z.Z. benutzt fuer den NumFormatter + inline const Color* GetSaveUserColor() const; + inline const Color* GetSaveNumFmtColor() const; + inline void SetSaveUserColor(const Color* p ); + inline void SetSaveNumFmtColor( const Color* p ); +}; + +#endif //_SWTABLE_HXX diff --git a/sw/inc/swtblfmt.hxx b/sw/inc/swtblfmt.hxx new file mode 100644 index 000000000000..559db74d7865 --- /dev/null +++ b/sw/inc/swtblfmt.hxx @@ -0,0 +1,135 @@ +/************************************************************************* + * + * $RCSfile: swtblfmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWTBLFMT_HXX +#define _SWTBLFMT_HXX + +#ifndef _FRMFMT_HXX +#include +#endif + +class SwDoc; + +class SwTableFmt : public SwFrmFmt +{ + friend class SwDoc; + +protected: + SwTableFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, pFmtNm, pDrvdFrm, RES_FRMFMT, aTableSetRange ) + {} + SwTableFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, rFmtNm, pDrvdFrm, RES_FRMFMT, aTableSetRange ) + {} + + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + DECL_FIXEDMEMPOOL_NEWDEL(SwTableFmt) +}; + +class SwTableLineFmt : public SwFrmFmt +{ + friend class SwDoc; + +protected: + SwTableLineFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, pFmtNm, pDrvdFrm, RES_FRMFMT, aTableLineSetRange ) + {} + SwTableLineFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, rFmtNm, pDrvdFrm, RES_FRMFMT, aTableLineSetRange ) + {} + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + DECL_FIXEDMEMPOOL_NEWDEL(SwTableLineFmt) +}; + +class SwTableBoxFmt : public SwFrmFmt +{ + friend class SwDoc; + +protected: + SwTableBoxFmt( SwAttrPool& rPool, const sal_Char* pFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, pFmtNm, pDrvdFrm, RES_FRMFMT, aTableBoxSetRange ) + {} + SwTableBoxFmt( SwAttrPool& rPool, const String &rFmtNm, + SwFrmFmt *pDrvdFrm ) + : SwFrmFmt( rPool, rFmtNm, pDrvdFrm, RES_FRMFMT, aTableBoxSetRange ) + {} + +public: + TYPEINFO(); //Bereits in Basisklasse Client drin. + + // zum Erkennen von Veraenderungen (haupts. TableBoxAttribute) + virtual void Modify( SfxPoolItem* pOldValue, SfxPoolItem* pNewValue ); + + DECL_FIXEDMEMPOOL_NEWDEL(SwTableBoxFmt) +}; + + +#endif diff --git a/sw/inc/swtypes.hxx b/sw/inc/swtypes.hxx new file mode 100644 index 000000000000..7feecac77e08 --- /dev/null +++ b/sw/inc/swtypes.hxx @@ -0,0 +1,298 @@ +/************************************************************************* + * + * $RCSfile: swtypes.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWTYPES_HXX +#define _SWTYPES_HXX + +#ifndef _SOLAR_H +#include +#endif +#include //fuer LONG_MAX + +#ifdef PM20 +#include +#endif +#ifndef _COM_SUN_STAR_UNO_REFERENCE_H_ +#include +#endif +#ifndef _HORIORNT_HXX +#include +#endif + +// wenn das hier geaendert wird, dann auch im globals.hrc aendern!!! +//#define SW_FILEFORMAT_40 SOFFICE_FILEFORMAT_40 + +namespace com{namespace sun{namespace star{ + namespace linguistic{ + class XDictionaryList; + class XSpellChecker1; + class XHyphenator; + class XThesaurus; + } + namespace beans{ + class XPropertySet; + } +}}} +class Size; +class MapMode; +class ResMgr; +class UniString; +class ByteString; +class SwPathFinder; +class Graphic; +class OutputDevice; +class CharClass; + +typedef long SwTwips; +#define INVALID_TWIPS LONG_MAX +#define TWIPS_MAX (LONG_MAX - 1) + +#define MM50 283 // 1/2 cm in TWIPS + +#define MINFLY 23 //Minimalgroesse fuer FlyFrms +#define MINLAY 23 //Minimalgroesse anderer Frms + +// Default-Spaltenabstand zweier Textspalten entspricht 0.3 cm +#define DEF_GUTTER_WIDTH (MM50 / 5 * 3) + +//Minimale Distance (Abstand zum Text) fuer das BorderAttribut, damit +//die aligned'en Linien nicht geplaettet werden. +//28 Twips == 0,4mm +#define MIN_BORDER_DIST 28 + + /* minimaler Dokmentrand */ +const SwTwips lMinBorder = 1134; + +//Die Wiesenbreite links neben und ueber dem Dokument. +//Die halbe Wiesenbreite ist der Abstand zwischen den Seiten. +#define DOCUMENTBORDER 568L + +//initiale UndoActionCount +#define UNDO_ACTION_COUNT 20 + +// Konstante Strings +extern UniString aEmptyStr; // "" +extern ByteString aEmptyByteStr; // "" +extern UniString aDotStr; // '.' + +extern const sal_Char* __FAR_DATA pDefWordDelim; // alle Worttrenner +extern const sal_Char* __FAR_DATA pGlosExt; // def. Ext. fuer AutoText in glosdoc.cxx + + +//Zum Einfuegen von Beschriftungen (wie bzw. wo soll eingefuegt werden). +//Hier weil ein eigenes hxx nicht lohnt und es sonst nirgendwo so recht +//hinpasst. +enum SwLabelType +{ + LTYPE_TABLE, //Beschriftung einer Tabelle + LTYPE_OBJECT, //Beschriftung von Grafik oder OLE + LTYPE_FLY, //Beschriftung eines (Text-)Rahmens + LTYPE_DRAW //Beschriftung eines Zeichen-Objektes +}; + + +const BYTE OLD_MAXLEVEL = 5; +const BYTE MAXLEVEL = 10; //Ehemals numrule.hxx +const BYTE NO_NUM = 200; //Ehemals numrule.hxx +const BYTE NO_NUMBERING = 201; //Ehemals numrule.hxx +const BYTE NO_INIT = 202; //Ehemals numrule.hxx + +// fuer Absaetze mit NO_NUM aber auf unterschiedlichen Leveln +// DAMIT entfaellt das NO_NUM !!!! +const BYTE NO_NUMLEVEL = 0x20; // wird mit den Levels verodert + + +/* + * Nette Funktionen als MACRO oder inline + */ + +/* ein KiloByte sind 1024 Byte */ +#define KB 1024 + +#define SET_CURR_SHELL( shell ) CurrShell aCurr( shell ) + +// pPathFinder wird von der UI initialisiert. Die Klasse liefert alle +// benoetigten Pfade. +extern SwPathFinder *pPathFinder; + +// Werte fuer die Einzuege an der Nummerierung und BulletListe +// (fuer die weiteren Ebenen sind die Werte mit den Ebenen+1 zu +// multiplizieren; Ebenen 0..4 !!!) +const USHORT lBullIndent = 567 / 2; +const short lBullFirstLineOffset = -567 / 2; +const USHORT lNumIndent = 567 / 2; +const short lNumFirstLineOffset = -567 / 2; + + + // Enum um am Doc abzufragen, ob es sich bei dem Namen um einem + // aus unserem Pool handelt. +enum SwGetPoolIdFromName +{ + GET_POOLID_TXTCOLL = 0x01, + GET_POOLID_CHRFMT = 0x02, + GET_POOLID_FRMFMT = 0x04, + GET_POOLID_PAGEDESC = 0x08, + GET_POOLID_NUMRULE = 0x10 +}; + +// Anzahl der SystemField-Types vom SwDoc +#define INIT_FLDTYPES 30 +// Anzahl der vordefinierten Seq-Feldtypen. Es handelt sich dabei +// immer um die letzen Felder vor INIT_FLDTYPES +#define INIT_SEQ_FLDTYPES 4 + +//Die ehemaligen Rendevouz-Ids leben weiter: +//Es gibt Ids fuer die Anker (SwFmtAnchor) und ein paar weitere die nur fuer +//Schnittstellen Bedeutung haben (SwDoc). +enum RndStdIds +{ + FLY_AT_CNTNT, //Absatzgebundener Rahmen + FLY_IN_CNTNT, //Zeichengebundener Rahmen + FLY_PAGE, //Seitengebundener Rahmen + FLY_AT_FLY, //Rahmengebundener Rahmen ( LAYER_IMPL ) + FLY_AUTO_CNTNT, //Automatisch positionierter, absatzgebundener Rahmen + //Der Rest wird nur fuer SS benutzt. + RND_STD_HEADER, + RND_STD_FOOTER, + RND_STD_HEADERL, + RND_STD_HEADERR, + RND_STD_FOOTERL, + RND_STD_FOOTERR, + + RND_DRAW_OBJECT // ein Draw-Object !! nur fuer die SwDoc-Schnittstelle! +}; + + +extern ResMgr* pSwResMgr; // steht in swapp0.cxx +#define SW_RES(i) ResId(i,pSwResMgr) +#define SW_RESSTR(i) UniString(ResId(i,pSwResMgr)) + +#if defined( WIN ) || defined( WNT ) || defined( PM2 ) +#define DDE_AVAILABLE +#endif + +// SpellChecker, Hyphenator kommen aus der OFA. +// +::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > GetSpellChecker(); +::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator > GetHyphenator(); +::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XThesaurus > GetThesaurus(); +::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XDictionaryList > GetDictionaryList(); +::com::sun::star::uno::Reference< + ::com::sun::star::beans::XPropertySet > GetLinguPropertySet(); + +// reutns the twip size of this graphic +Size GetGraphicSizeTwip( const Graphic&, OutputDevice* pOutDev ); + + +// Seperator fuer Sprunge im Dokument auf verschiedene Inhalttype +const sal_Unicode cMarkSeperator = '|'; +extern const sal_Char* __FAR_DATA pMarkToTable; // Strings stehen +extern const sal_Char* __FAR_DATA pMarkToFrame; // im Init.cxx +extern const sal_Char* __FAR_DATA pMarkToRegion; +extern const sal_Char* __FAR_DATA pMarkToOutline; +extern const sal_Char* __FAR_DATA pMarkToText; +extern const sal_Char* __FAR_DATA pMarkToGraphic; +extern const sal_Char* __FAR_DATA pMarkToOLE; + +#ifndef DB_DELIM // Ist in OFA definiert!!! +#define DB_DELIM ((sal_Unicode)0xff) // Datenbank <-> Tabellen-Trenner +#endif + + +enum SetAttrMode +{ + SETATTR_DEFAULT = 0x0000, // default + SETATTR_DONTEXPAND = 0x0001, // TextAttribute nicht weiter expand. + SETATTR_DONTREPLACE = 0x0002, // kein anderes TextAttrib verdraengen + + SETATTR_NOTXTATRCHR = 0x0004, // bei Attr ohne Ende kein 0xFF einfuegen + SETATTR_NOHINTADJUST = 0x0008, // keine Zusammenfassung von Bereichen. + SETATTR_NOFORMATATTR = 0x0010, // nicht zum FormatAttribut umwandeln + SETATTR_DONTCHGNUMRULE = 0x0020 // nicht die NumRule veraendern +}; + +//Umrechnung Twip<-> 1/100 mm fuer UNO + +#define TWIP_TO_MM100(TWIP) ((TWIP) >= 0 ? (((TWIP)*127L+36L)/72L) : (((TWIP)*127L-36L)/72L)) +#define MM100_TO_TWIP(MM100) ((MM100) >= 0 ? (((MM100)*72L+63L)/127L) : (((MM100)*72L-63L)/127L)) + +#define SW_ISPRINTABLE( c ) ( c >= ' ' && 127 != c ) + +#ifndef SW_CONSTASCII_DECL +#define SW_CONSTASCII_DECL( n, s ) n[sizeof(s)] +#endif +#ifndef SW_CONSTASCII_DEF +#define SW_CONSTASCII_DEF( n, s ) n[sizeof(s)] = s +#endif + + +#define CHAR_HARDBLANK ((sal_Unicode)0x00A0) +#define CHAR_HARDHYPHEN ((sal_Unicode)0x2011) +#define CHAR_SOFTHYPHEN ((sal_Unicode)0x00AD) + +// returns the APP - CharClass instance - used for all ToUpper/ToLower/... +CharClass& GetAppCharClass(); + + +#endif diff --git a/sw/inc/swundo.hxx b/sw/inc/swundo.hxx new file mode 100644 index 000000000000..1ee581ef1eae --- /dev/null +++ b/sw/inc/swundo.hxx @@ -0,0 +1,197 @@ +/************************************************************************* + * + * $RCSfile: swundo.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWUNDO_HXX +#define _SWUNDO_HXX + +// die Ids fuer StdAktionen +enum SwUndoStdId +{ + UNDO_STD_BEGIN = 1, + UNDO_START = UNDO_STD_BEGIN, // 1 + UNDO_END, // 2 + REPEAT_START, // alle UndoIds zwischen REPEAT_START und + // REPEAT_END sind Repeat-Faehig !! + UNDO_DELETE = REPEAT_START, // 3 + UNDO_INSERT, // 4 + UNDO_OVERWRITE, // 5 + UNDO_SPLITNODE, // 6 + UNDO_INSATTR, // 7 + UNDO_SETFMTCOLL, // 8 + UNDO_RESETATTR, // 9 + UNDO_INSFMTATTR, // 10 + UNDO_INSDOKUMENT, // 11 + UNDO_COPY, // 12 + UNDO_INSTABLE, // 13 + UNDO_TABLETOTEXT, // 14 + UNDO_TEXTTOTABLE, // 15 + UNDO_SORT_TXT, // 16 + UNDO_INSLAYFMT, // 17 + UNDO_TABLEHEADLINE, // 18 + UNDO_INSSECTION, // 19 + UNDO_OUTLINE_LR, // 20 + UNDO_OUTLINE_UD, // 21 + UNDO_INSNUM, // 22 + UNDO_NUMUPDOWN, // 23 + UNDO_MOVENUM, // 24 + UNDO_INSDRAWFMT, // 25 + UNDO_NUMORNONUM, // 26 + UNDO_INC_LEFTMARGIN, // 27 + UNDO_DEC_LEFTMARGIN, // 28 + UNDO_INSERTLABEL, // 29 + UNDO_SETNUMRULESTART, // 30 + UNDO_CHGFTN, // 31 + UNDO_REDLINE, // 32 + UNDO_ACCEPT_REDLINE, // 33 + UNDO_REJECT_REDLINE, // 34 + UNDO_SPLIT_TABLE, // 35 + UNDO_DONTEXPAND, // 36 + UNDO_AUTOCORRECT, // 37 + UNDO_MERGE_TABLE, // 38 + + UNDO_REPEAT_DUMMY_3, // 39 + UNDO_REPEAT_DUMMY_4, // 40 + UNDO_REPEAT_DUMMY_5, // 41 + UNDO_REPEAT_DUMMY_6, // 42 + UNDO_REPEAT_DUMMY_7, // 43 + UNDO_REPEAT_DUMMY_8, // 44 + UNDO_REPEAT_DUMMY_9, // 45 + REPEAT_END, + + UNDO_MOVE = REPEAT_END, // 46 + UNDO_INSGLOSSARY, // 47 + UNDO_DELBOOKMARK, // 48 + UNDO_INSBOOKMARK, // 49 + UNDO_SORT_TBL, // 50 + UNDO_DELLAYFMT, // 51 + UNDO_AUTOFORMAT, // 52 + UNDO_REPLACE, // 53 + UNDO_DELSECTION, // 54 + UNDO_CHGSECTION, // 55 + UNDO_CHGSECTIONPASSWD, // 56 + UNDO_SETDEFTATTR, // 57 + UNDO_DELNUM, // 58 + UNDO_DRAWUNDO, // 59 + UNDO_DRAWGROUP, // 60 + UNDO_DRAWUNGROUP, // 61 + UNDO_DRAWDELETE, // 62 + UNDO_REREAD, // 63 + UNDO_DELGRF, // 64 + UNDO_DELOLE, // 65 + UNDO_TABLE_ATTR, // 66 + UNDO_TABLE_AUTOFMT, // 67 + UNDO_TABLE_INSCOL, // 68 + UNDO_TABLE_INSROW, // 69 + UNDO_TABLE_DELBOX, // 70 + UNDO_TABLE_SPLIT, // 71 + UNDO_TABLE_MERGE, // 72 + UNDO_TBLNUMFMT, // 73 + UNDO_INSTOX, // 74 + UNDO_CLEARTOXRANGE, // 75 + UNDO_TBLCPYTBL, // 76 + UNDO_CPYTBL, // 77 + UNDO_INS_FROM_SHADOWCRSR, // 78 + UNDO_CHAINE, // 79 + UNDO_UNCHAIN, // 80 + UNDO_FTNINFO, // 81 + UNDO_ENDNOTEINFO, // 82 + UNDO_COMPAREDOC, // 83 + UNDO_SETFLYFRMFMT, // 84 + + UNDO_DUMMY_1, // 85 + UNDO_DUMMY_2, // 86 + UNDO_DUMMY_3, // 87 + UNDO_DUMMY_4, // 88 + UNDO_DUMMY_5, // 89 + UNDO_DUMMY_6, // 90 + UNDO_DUMMY_7, // 91 + UNDO_DUMMY_8, // 92 + UNDO_DUMMY_9, // 93 + UNDO_STD_END // 94 +}; + + +/* MA: 24. May. 97, zur Zeit nicht verwendet. +#define INIT_UNDOIDS 2 +#define GROW_UNDOIDS 2 +// Das Array der verwendeten Undo-Ids +SV_DECL_VARARR( SwUndoIds, USHORT, INIT_UNDOIDS, GROW_UNDOIDS ) +*/ + +// Undo-Ids fuer die UI-Seite +enum SwUIUndoIds +{ + UIUNDO_REPLACE = UNDO_STD_END, + UIUNDO_INSERT_PAGE_BREAK, + UIUNDO_INSERT_COLUMN_BREAK, + UIUNDO_PLAY_MACRO, + UIUNDO_INSERT_ENVELOPE, + UIUNDO_DRAG_AND_COPY, + UIUNDO_DRAG_AND_MOVE, + UIUNDO_INSERT_RULER, + UIUNDO_INSERT_CHART, + UIUNDO_INSERT_FOOTNOTE, + UIUNDO_INSERT_URLBTN, + UIUNDO_INSERT_URLTXT, + UIUNDO_DELETE_INVISIBLECNTNT +}; + + +#endif diff --git a/sw/inc/swurl.hxx b/sw/inc/swurl.hxx new file mode 100644 index 000000000000..0b107d3230e4 --- /dev/null +++ b/sw/inc/swurl.hxx @@ -0,0 +1,84 @@ +/************************************************************************* + * + * $RCSfile: swurl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWURL_HXX +#define _SWURL_HXX + +#ifndef _SOLAR_H +#include +#endif + + +class UniString; +class ViewShell; + +#define URLLOAD_NOFILTER 0x0000 +#define URLLOAD_DOWNLOADFILTER 0x0001 +#define URLLOAD_CHOOSEFILTER 0x0002 +#define URLLOAD_NEWVIEW 0x8000 + + +void LoadURL( const UniString& rName, ViewShell* pSh, + USHORT nFilter = URLLOAD_NOFILTER, + const UniString *pTargetFrameName = 0 ); + + + +#endif diff --git a/sw/inc/swwait.hxx b/sw/inc/swwait.hxx new file mode 100644 index 000000000000..73e009332038 --- /dev/null +++ b/sw/inc/swwait.hxx @@ -0,0 +1,79 @@ +/************************************************************************* + * + * $RCSfile: swwait.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWWAIT_HXX +#define _SWWAIT_HXX + +#ifndef _SOLAR_H +#include +#endif + +class SwDocShell; + +class SwWait +{ + SwDocShell &rDoc; + BOOL bLock; +public: + SwWait( SwDocShell &rDocShell, BOOL bLockDispatcher ); + ~SwWait(); +}; + +#endif diff --git a/sw/inc/tabcol.hxx b/sw/inc/tabcol.hxx new file mode 100644 index 000000000000..0110e27c4a66 --- /dev/null +++ b/sw/inc/tabcol.hxx @@ -0,0 +1,121 @@ +/************************************************************************* + * + * $RCSfile: tabcol.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TABCOL_HXX +#define _TABCOL_HXX + +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_LONGS +#define _SVSTDARR_BOOLS +#include +#endif + +class SwTabCols : public SvLongs +{ + long nLeftMin, //Linker aeusserer Rand (Bezugspunkt) in + //Dokumentkordinaten. + //Alle anderen Werte relativ zu diesem Punkt! + nLeft, //Linker Rand der Tabelle. + nRight, //Rechter Rand der Tabelle. + nRightMax; //Maximaler rechter Rand der Tabelle. + + + + SvBools aHidden; //Fuer jeden Eintrag ein Flag, Hidden oder nicht. + //Wenn das Flag Hidden TRUE ist liegt der Spalten- + //trenner nicht in der aktuellen Zeile; er muss + //mit gepflegt werden, darf aber nicht angezeigt + //werden. + +public: + SwTabCols( USHORT nSize = 0 ); + SwTabCols( const SwTabCols& ); + SwTabCols &operator=( const SwTabCols& ); + BOOL operator==( const SwTabCols& rCmp ) const; + + BOOL IsHidden( USHORT nPos ) const { return aHidden[nPos]; } + void SetHidden( USHORT nPos, BOOL bValue ) { aHidden[nPos] = bValue; } + inline void InsertHidden( USHORT nPos, BOOL bValue ); + inline void DeleteHidden( USHORT nPos, USHORT nAnz = 1 ); + + //fuer den CopyCTor + const SvBools& GetHidden() const { return aHidden; } + + long GetLeftMin() const { return nLeftMin; } + long GetLeft() const { return nLeft; } + long GetRight() const { return nRight; } + long GetRightMax()const { return nRightMax;} + + void SetLeftMin ( long nNew ) { nLeftMin = nNew; } + void SetLeft ( long nNew ) { nLeft = nNew; } + void SetRight ( long nNew ) { nRight = nNew; } + void SetRightMax( long nNew ) { nRightMax = nNew;} +}; + +inline void SwTabCols::InsertHidden( USHORT nPos, BOOL bValue ) +{ + aHidden.Insert( bValue, nPos ); +} +inline void SwTabCols::DeleteHidden( USHORT nPos, USHORT nAnz ) +{ + aHidden.Remove( nPos, nAnz ); +} + +#endif //_TABCOL_HXX diff --git a/sw/inc/tblafmt.hxx b/sw/inc/tblafmt.hxx new file mode 100644 index 000000000000..c0decd5e754c --- /dev/null +++ b/sw/inc/tblafmt.hxx @@ -0,0 +1,383 @@ +/************************************************************************* + * + * $RCSfile: tblafmt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TBLAFMT_HXX +#define _TBLAFMT_HXX + +/************************************************************************* +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +JP 20.07.95: + + Die akt. Struktur der Autoformatierung darf nicht mehr veraendert werden. + Diese wird durch unterschiedlichen Code vom StartWriter und vom StarCalc + eingelesen/geschrieben. + Sollte sich doch mal eine Aenderung nicht vermeiden lassen, dann auf + jedenfall in beiden Applikationen aendern. + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +**************************************************************************/ + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#include "hintids.hxx" //_immmer_ vor den solar-items! + +#define ITEMID_HORJUSTIFY 0 +#define ITEMID_VERJUSTIFY 0 +#define ITEMID_ORIENTATION 0 +#define ITEMID_MARGIN 0 + +#ifndef _SVX_ALGITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FONTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FHGTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_WGHTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_POSTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_UDLNITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CRSDITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CNTRTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_SHDDITEM_HXX //autogen +#include +#endif +#ifndef _SVX_COLRITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BOXITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BRSHITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ADJITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ROTMODIT_HXX //autogen +#include +#endif +#ifndef _SFXINTITEM_HXX //autogen +#include +#endif + +struct SwAfVersions; + +class SvNumberFormatter; + +class SwBoxAutoFmt +{ + // gemeinsamer Teil von StarCalc und StarWriter + SvxFontItem aFont; + + SvxFontHeightItem aHeight; + SvxWeightItem aWeight; + SvxPostureItem aPosture; + SvxUnderlineItem aUnderline; + SvxCrossedOutItem aCrossedOut; + SvxContourItem aContour; + SvxShadowedItem aShadowed; + SvxColorItem aColor; + SvxBoxItem aBox; + SvxBrushItem aBackground; + + // StarWriter spezifisches + SvxAdjustItem aAdjust; + + // StarCalc spezifisches + SvxHorJustifyItem aHorJustify; + SvxVerJustifyItem aVerJustify; + SvxOrientationItem aOrientation; + SvxMarginItem aMargin; + SfxBoolItem aLinebreak; + SfxInt32Item aRotateAngle; + SvxRotateModeItem aRotateMode; + + // und als letzes das Zahlenformat fuer die Box + String sNumFmtString; + LanguageType eSysLanguage, eNumFmtLanguage; + +public: + SwBoxAutoFmt(); + SwBoxAutoFmt( const SwBoxAutoFmt& rNew ); + ~SwBoxAutoFmt(); + + int operator==( const SwBoxAutoFmt& rCmp ) const; + SwBoxAutoFmt& operator=( const SwBoxAutoFmt& rNew ); + + // die Get-Methoden + const SvxFontItem &GetFont() const { return aFont; } + const SvxFontHeightItem &GetHeight() const { return aHeight; } + const SvxWeightItem &GetWeight() const { return aWeight; } + const SvxPostureItem &GetPosture() const { return aPosture; } + const SvxUnderlineItem &GetUnderline() const { return aUnderline; } + const SvxCrossedOutItem &GetCrossedOut() const { return aCrossedOut; } + const SvxContourItem &GetContour() const { return aContour; } + const SvxShadowedItem &GetShadowed() const { return aShadowed; } + const SvxColorItem &GetColor() const { return aColor; } + const SvxAdjustItem &GetAdjust() const { return aAdjust; } + const SvxBoxItem &GetBox() const { return aBox; } + const SvxBrushItem &GetBackground() const { return aBackground; } + void GetValueFormat( String& rFmt, LanguageType& rLng, LanguageType& rSys ) const + { rFmt = sNumFmtString; rLng = eNumFmtLanguage; rSys = eSysLanguage; } + + // die SetMethoden + void SetFont( const SvxFontItem& rNew ) { aFont = rNew; } + void SetHeight( const SvxFontHeightItem& rNew ) { aHeight = rNew; } + void SetWeight( const SvxWeightItem& rNew ) { aWeight = rNew; } + void SetPosture( const SvxPostureItem& rNew ) { aPosture = rNew; } + void SetUnderline( const SvxUnderlineItem& rNew ) { aUnderline = rNew; } + void SetCrossedOut( const SvxCrossedOutItem& rNew ) { aCrossedOut = rNew; } + void SetContour( const SvxContourItem& rNew ) { aContour = rNew; } + void SetShadowed( const SvxShadowedItem& rNew ) { aShadowed = rNew; } + void SetColor( const SvxColorItem& rNew ) { aColor = rNew; } + void SetAdjust( const SvxAdjustItem& rNew ) + { + aAdjust.SetAdjust( rNew.GetAdjust() ); + aAdjust.SetOneWord( rNew.GetOneWord() ); + aAdjust.SetLastBlock( rNew.GetLastBlock() ); + } + void SetBox( const SvxBoxItem& rNew ) { aBox = rNew; } + void SetBackground( const SvxBrushItem& rNew ) { aBackground = rNew; } + void SetValueFormat( const String& rFmt, LanguageType eLng, LanguageType eSys ) + { sNumFmtString = rFmt; eNumFmtLanguage = eLng; eSysLanguage = eSys; } + + BOOL Load( SvStream& rStream, const SwAfVersions& rVersions, USHORT nVer ); + BOOL Save( SvStream& rStream ) const; + BOOL SaveVerionNo( SvStream& rStream ) const; + +#ifdef READ_OLDVERS + // lade alte Version + BOOL LoadOld( SvStream& rStream, USHORT aLoadVer[] ); +#endif +}; + +class SwTableAutoFmt +{ + friend void _FinitCore(); // zum Zerstoeren des dflt. Pointers + static SwBoxAutoFmt* pDfltBoxAutoFmt; + + String aName; + USHORT nStrResId; + BOOL bInclFont : 1; + BOOL bInclJustify : 1; + BOOL bInclFrame : 1; + BOOL bInclBackground : 1; + BOOL bInclValueFormat : 1; + + // StarCalc Spezifisches + BOOL bInclWidthHeight : 1; + + SwBoxAutoFmt* aBoxAutoFmt[ 16 ]; + +public: + SwTableAutoFmt( const String& rName ); + SwTableAutoFmt( const SwTableAutoFmt& rNew ); + ~SwTableAutoFmt(); + + SwTableAutoFmt& operator=( const SwTableAutoFmt& rNew ); + + void SetBoxFmt( const SwBoxAutoFmt& rNew, BYTE nPos ); + const SwBoxAutoFmt& GetBoxFmt( BYTE nPos ) const; + + void SetName( const String& rNew ) { aName = rNew; nStrResId = USHRT_MAX; } + const String& GetName() const { return aName; } + + enum UpdateFlags { UPDATE_CHAR = 1, UPDATE_BOX = 2, UPDATE_ALL = 3 }; + SwBoxAutoFmt& UpdateFromSet( BYTE nPos, const SfxItemSet& rSet, + UpdateFlags eFlags, SvNumberFormatter* ); + void UpdateToSet( BYTE nPos, SfxItemSet& rSet, UpdateFlags eFlags, + SvNumberFormatter* ) const ; + + BOOL IsFont() const { return bInclFont; } + BOOL IsJustify() const { return bInclJustify; } + BOOL IsFrame() const { return bInclFrame; } + BOOL IsBackground() const { return bInclBackground; } + BOOL IsValueFormat() const { return bInclValueFormat; } + BOOL IsWidthHeight() const { return bInclWidthHeight; } + + void SetFont( const BOOL bNew ) { bInclFont = bNew; } + void SetJustify( const BOOL bNew ) { bInclJustify = bNew; } + void SetFrame( const BOOL bNew ) { bInclFrame = bNew; } + void SetBackground( const BOOL bNew ) { bInclBackground = bNew; } + void SetValueFormat( const BOOL bNew ) { bInclValueFormat = bNew; } + void SetWidthHeight( const BOOL bNew ) { bInclWidthHeight = bNew; } + + BOOL Load( SvStream& rStream, const SwAfVersions& ); + BOOL Save( SvStream& rStream ) const; + +#ifdef READ_OLDVERS + // lade alte Version + BOOL LoadOld( SvStream& rStream, USHORT aLoadVer[] ); +#endif +}; +typedef SwTableAutoFmt* SwTableAutoFmtPtr ; + +SV_DECL_PTRARR_DEL( _SwTableAutoFmtTbl, SwTableAutoFmtPtr, 1, 5 ) + +class SwTableAutoFmtTbl : public _SwTableAutoFmtTbl +{ + BOOL Load( SvStream& rStream ); + BOOL Save( SvStream& rStream ) const; +public: + SwTableAutoFmtTbl(); + + BOOL Load(); + BOOL Save() const; +}; + + + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/inc/tblafmt.hxx,v 1.1.1.1 2000-09-18 17:14:28 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.22 2000/09/18 16:03:31 willem.vandorp + OpenOffice header added. + + Revision 1.21 2000/09/08 13:24:29 willem.vandorp + Header and footer replaced + + Revision 1.20 1999/10/11 15:23:51 jp + TableautoFormatnames with resource ids + + Revision 1.19 1998/09/29 08:12:48 NN + #53381# bei Zahlformat Systemsprache beim Erzeugen mitspeichern + + + Rev 1.18 29 Sep 1998 10:12:48 NN + #53381# bei Zahlformat Systemsprache beim Erzeugen mitspeichern + + Rev 1.17 15 Sep 1998 21:23:02 ER + #47738# gedrehter Text in Tabellen-AutoFormat + + Rev 1.16 02 Jun 1998 10:35:02 JP + TabellenAutoFormat: Load/Save ohne Stream - erzeugen diesen selbst + + Rev 1.15 14 May 1998 15:16:48 JP + neu: Numberformat vom Boxen unterstuetzen + + Rev 1.14 12 May 1998 23:34:52 JP + neu: Zuweisungsoperator fuer SwTableAutoFmt + + Rev 1.13 04 Sep 1997 09:02:58 MA + includes + + Rev 1.12 09 Aug 1997 12:45:06 OS + paraitem/frmitems/textitem aufgeteilt + + Rev 1.11 07 Aug 1997 14:43:12 OM + Headerfile-Umstellung + + Rev 1.10 24 Jun 1996 18:35:28 MA + includes + + Rev 1.9 13 Dec 1995 09:55:02 MA + opt: Bessere Defaults fuer Arrays + + Rev 1.8 11 Dec 1995 13:38:48 HJS + anpassung fuer unix + + Rev 1.7 30 Nov 1995 20:22:30 JP + DefaultTblAutoFmt erst auf Bedarf anlegen + + Rev 1.6 31 Jul 1995 10:17:50 AMA + International-Umstellung wg. Update 253 + + Rev 1.5 20 Jul 1995 19:39:48 JP + Aederung fuer gemeinsamen Import/Export der Tabellen-Autoformatierung von Calc/Writer + + Rev 1.4 10 Jun 1995 16:05:20 JP + Save/Load nochmals umgestellt + + Rev 1.3 10 Jun 1995 12:51:26 JP + SwBoxAutoFmt::Load - Load-Version mit geben + + Rev 1.2 06 Mar 1995 05:07:02 JP + Load & Save als Dummy + + Rev 1.1 04 Mar 1995 20:42:22 JP + Adjust nachgetragen + + Rev 1.0 04 Mar 1995 15:46:14 JP + Initial revision. + +*************************************************************************/ + // #ifndef _... +#endif diff --git a/sw/inc/tblenum.hxx b/sw/inc/tblenum.hxx new file mode 100644 index 000000000000..bd08f50730c2 --- /dev/null +++ b/sw/inc/tblenum.hxx @@ -0,0 +1,111 @@ +/************************************************************************* + * + * $RCSfile: tblenum.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TBLENUM_HXX +#define _TBLENUM_HXX + +//fuers aendern der Tabellen/Spalten/Zeilen Breiten/Hoehen +enum TblChgWidthHeightType +{ + WH_COL_LEFT, + WH_COL_RIGHT, + WH_ROW_TOP, + WH_ROW_BOTTOM, + WH_CELL_LEFT, + WH_CELL_RIGHT, + WH_CELL_TOP, + WH_CELL_BOTTOM, + + + // folgende koennen hinein verodert werden + WH_FLAG_INSDEL = 0x4000, // Insert/Del-Modus: das Bigger-Flag + // besagt was passiert: + // bBigger -> Box wird entfernt + // !bBigger-> Box wird eingefuegt + WH_FLAG_BIGGER = 0x8000 // Box wird groesser -> sonst kleiner +}; + +enum TblChgMode +{ + TBLFIX_CHGABS, // Tabelle feste Breite, den Nachbar andern + TBLFIX_CHGPROP, // Tabelle feste Breite, alle Nachbarn aendern + TBLVAR_CHGABS // Tabelle variable, alle Nachbarn aendern +}; + + +enum SplitTbl_HeadlineOption +{ + HEADLINE_NONE = 0, // lasse alles wie es ist + HEADLINE_BORDERCOPY, // von der davor obere Line der vorhergehen Line + HEADLINE_CNTNTCOPY, // kopiere die 1. Line komplett mit Inhalt + HEADLINE_BOXATTRCOPY, // kopiere von der 1. Line die Box Attribute + HEADLINE_BOXATRCOLLCOPY // kopiere von der 1. Line die Box Attribute + // und die Absatzvorlagen +}; + +enum TableMergeErr +{ + TBLMERGE_OK, + TBLMERGE_NOSELECTION, + TBLMERGE_TOOCOMPLEX +}; + + +#endif diff --git a/sw/inc/tblsel.hxx b/sw/inc/tblsel.hxx new file mode 100644 index 000000000000..e9c471c472df --- /dev/null +++ b/sw/inc/tblsel.hxx @@ -0,0 +1,269 @@ +/************************************************************************* + * + * $RCSfile: tblsel.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TBLSEL_HXX +#define _TBLSEL_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _SWTABLE_HXX +#include +#endif +#ifndef _SWRECT_HXX +#include +#endif + +class SwCrsrShell; +class SwCursor; +class SwTableCursor; +class SwFrm; +class SwTabFrm; +class SwTableBox; +class SwTableLine; +class SwLayoutFrm; +class SwPaM; +class SwNode; +class SwTable; +class SwUndoTblMerge; +class SwCellFrm; + +SV_DECL_PTRARR( SwCellFrms, SwCellFrm*, 16, 16 ) +SV_DECL_PTRARR_SORT( SwSelBoxes, SwTableBoxPtr, 10, 20 ) + + +//Sucht alle Boxen zusammen, die in der Tabelle selektiert sind. +//Je nach enum-Parameter wird die Selektion in der angegebenen Richtung +//erweitert. +//Die Boxen werden ueber das Layout zusammengsucht, es wird auch bei +//aufgespaltenen Tabellen korrekt gearbeitet (siehe: MakeSelUnions()). +enum SwTblSearchType +{ + TBLSEARCH_NONE = 0x1, // keine Erweiterung + TBLSEARCH_ROW = 0x2, // erweiter auf Zeilen + TBLSEARCH_COL = 0x3, // erweiter auf Spalten + + // als Flag zu den anderen Werten!! + TBLSEARCH_PROTECT = 0x8, // auch geschuetzte Boxen einsammeln + TBLSEARCH_NO_UNION_CORRECT = 0x10 // die zusammenges. Union nicht korrigieren +}; + +void GetTblSel( const SwCrsrShell& rShell, SwSelBoxes& rBoxes, + const SwTblSearchType = TBLSEARCH_NONE ); + +void GetTblSel( const SwCursor& rCrsr, SwSelBoxes& rBoxes, + const SwTblSearchType = TBLSEARCH_NONE ); + +//wie vor, jedoch wird nicht von der Selektion sondern von den +//Start- EndFrms ausgegangen. +void GetTblSel( const SwLayoutFrm* pStart, const SwLayoutFrm* pEnd, + SwSelBoxes& rBoxes, const SwTblSearchType = TBLSEARCH_NONE ); + +// Desgleichen nocheinmal direkt per PaM's +void GetTblSelCrs( const SwCrsrShell& rShell, SwSelBoxes& rBoxes ); +void GetTblSelCrs( const SwTableCursor& rTblCrsr, SwSelBoxes& rBoxes ); + +// suche fuer eine AutoSumme die beteiligten Boxen zusammen +BOOL GetAutoSumSel( const SwCrsrShell&, SwCellFrms& ); + +// check if the SelBoxes contains protected Boxes +BOOL HasProtectedCells( const SwSelBoxes& rBoxes ); + +// teste, ob die Selektion ausgeglichen ist +SV_DECL_PTRARR( SwChartBoxes, SwTableBoxPtr, 16, 16); +SV_DECL_PTRARR_DEL( SwChartLines, SwChartBoxes*, 25, 50); + +BOOL ChkChartSel( const SwNode& rSttNd, const SwNode& rEndNd, + SwChartLines* pGetCLines = 0 ); + +// teste ob die Celle in die SSelection gehoert +// (wurde eine Funktion, damit GetTblSel() und MakeTblCrsr() immer +// das "gleiche Verstaendnis" fuer die Selektion haben) +BOOL IsFrmInTblSel( const SwRect& rUnion, const SwFrm* pCell ); + +// bestimme die Boxen, die zusammen gefasst werden sollen. +// Dabei wird auf Layout Basis das Rechteck "angepasst". D.H. es +// werden Boxen zugefuegt wenn welche an den Seiten ueberlappen +// Zusaetzlich wird die neue Box erzeugt und mit dem entsprechenden +// Inhalt gefuellt. +void GetMergeSel( const SwPaM& rPam, SwSelBoxes& rBoxes, + SwTableBox** ppMergeBox, SwUndoTblMerge* pUndo = 0 ); + +// teste ob die selektierten Boxen ein gueltiges Merge erlauben +USHORT CheckMergeSel( const SwPaM& rPam ); +USHORT CheckMergeSel( const SwSelBoxes& rBoxes ); + +// teste ob ein Split oder InsertCol dazu fuehrt, das eine Box +// kleiner als MINLAY wird. +BOOL CheckSplitCells( const SwCrsrShell& rShell, USHORT nDiv, + const SwTblSearchType = TBLSEARCH_NONE ); +BOOL CheckSplitCells( const SwCursor& rCrsr, USHORT nDiv, + const SwTblSearchType = TBLSEARCH_NONE ); + +//Fuer das Arbeiten auf TabSelektion auch fuer aufgespaltene Tabellen. +class SwSelUnion +{ + SwRect aUnion; //Das die Sel umschliessende Rechteck. + SwTabFrm *pTable; //Die (Follow-)Table zu der Union. + +public: + SwSelUnion( const SwRect &rRect, SwTabFrm *pTab ) : + aUnion( rRect ), pTable( pTab ) {} + + const SwRect& GetUnion() const { return aUnion; } + SwRect& GetUnion() { return aUnion; } + const SwTabFrm *GetTable() const { return pTable; } + SwTabFrm *GetTable() { return pTable; } +}; + +SV_DECL_PTRARR_DEL( SwSelUnions, SwSelUnion*, 10, 20 ) + +//Ermittelt die von einer Tabellenselektion betroffenen Tabellen und die +//Union-Rechteckte der Selektionen - auch fuer aufgespaltene Tabellen. +//Wenn ein Parameter != TBLSEARCH_NONE uebergeben wird, so wird die +//Selektion in der angegebenen Richtung erweitert. +void MakeSelUnions( SwSelUnions&, const SwLayoutFrm *pStart, + const SwLayoutFrm *pEnd, + const SwTblSearchType = TBLSEARCH_NONE ); + + +// ------------------------------------------------------------------- +// Diese Klassen kopieren die aktuelle Tabellen-Selektion (rBoxes) +// unter Beibehaltung der Tabellen-Strubktur in eine eigene Struktur + +class _FndBox; +class _FndLine; + +SV_DECL_PTRARR_DEL( _FndBoxes, _FndBox*, 10, 20 ) +SV_DECL_PTRARR_DEL( _FndLines, _FndLine*,10, 20 ) + +class _FndBox +{ + SwTableBox* pBox; + _FndLines aLines; + _FndLine* pUpper; + + SwTableLine *pLineBefore; //Zum Loeschen/Restaurieren des Layouts. + SwTableLine *pLineBehind; + +public: + _FndBox( SwTableBox* pB, _FndLine* pFL ) : + pBox(pB), pUpper(pFL), pLineBefore( 0 ), pLineBehind( 0 ) {} + + const _FndLines& GetLines() const { return aLines; } + _FndLines& GetLines() { return aLines; } + const SwTableBox* GetBox() const { return pBox; } + SwTableBox* GetBox() { return pBox; } + const _FndLine* GetUpper() const { return pUpper; } + _FndLine* GetUpper() { return pUpper; } + + void SetTableLines( const SwSelBoxes &rBoxes, const SwTable &rTable ); + void SetTableLines( const SwTable &rTable ); + void DelFrms ( SwTable &rTable ); + void MakeFrms( SwTable &rTable ); + void MakeNewFrms( SwTable &rTable, const USHORT nNumber, + const BOOL bBehind ); + BOOL AreLinesToRestore( const SwTable &rTable ) const; + + //Auch die Charts zu der Tabelle muessen etwas von den Veraenderungen + //mitbekommen. + void SaveChartData( const SwTable &rTable ); + void RestoreChartData( const SwTable &rTable ); +}; + + +class _FndLine +{ + SwTableLine* pLine; + _FndBoxes aBoxes; + _FndBox* pUpper; +public: + _FndLine(SwTableLine* pL, _FndBox* pFB=0) : pLine(pL), pUpper(pFB) {} + const _FndBoxes& GetBoxes() const { return aBoxes; } + _FndBoxes& GetBoxes() { return aBoxes; } + const SwTableLine* GetLine() const { return pLine; } + SwTableLine* GetLine() { return pLine; } + const _FndBox* GetUpper() const { return pUpper; } + _FndBox* GetUpper() { return pUpper; } + + void SetUpper( _FndBox* pUp ) { pUpper = pUp; } +}; + + +struct _FndPara +{ + _FndBox* pFndBox; + _FndLine* pFndLine; + const SwSelBoxes& rBoxes; + + _FndPara( const SwSelBoxes& rBxs, _FndBox* pFB ) + : rBoxes( rBxs ), pFndBox( pFB ) {} + _FndPara( const _FndPara& rPara, _FndBox* pFB ) + : rBoxes(rPara.rBoxes), pFndLine(rPara.pFndLine), pFndBox(pFB) {} + _FndPara( const _FndPara& rPara, _FndLine* pFL ) + : rBoxes(rPara.rBoxes), pFndLine(pFL), pFndBox(rPara.pFndBox) {} +}; + +BOOL _FndBoxCopyCol( const SwTableBox*& rpBox, void* pPara ); +BOOL _FndLineCopyCol( const SwTableLine*& rpLine, void* pPara ); + + +#endif // _TBLSEL_HXX diff --git a/sw/inc/tox.hxx b/sw/inc/tox.hxx new file mode 100644 index 000000000000..d7d1aecd78ba --- /dev/null +++ b/sw/inc/tox.hxx @@ -0,0 +1,702 @@ +/************************************************************************* + * + * $RCSfile: tox.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TOX_HXX +#define _TOX_HXX + +#ifndef _SVARRAY_HXX //autogen +#include +#endif + +#ifndef _STRING_HXX //autogen +#include +#endif + +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif + +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _TOXE_HXX +#include +#endif +#ifndef _CALBCK_HXX +#include +#endif +#ifndef _ERRHDL_HXX +#include +#endif + +class SwTOXType; +class SwTOXMark; +class SwTxtTOXMark; +class SwDoc; + +SV_DECL_PTRARR(SwTOXMarks, SwTOXMark*, 0, 10) + +/*-------------------------------------------------------------------- + Beschreibung: Eintrag fuer Inhaltsverzeichnis oder Benutzerverz. + --------------------------------------------------------------------*/ + +#define IVER_TOXMARK_STRPOOL ((USHORT)1) +#define IVER_TOXMARK_NEWTOX ((USHORT)2) + +class SwTOXMark : public SfxPoolItem, public SwClient +{ + friend void _InitCore(); + friend class SwTxtTOXMark; + + String aAltText; // Der Text des Eintrages ist unterschiedlich + String aPrimaryKey, aSecondaryKey; + + SwTxtTOXMark* pTxtAttr; + + USHORT nLevel; + BOOL bAutoGenerated : 1; // generated using a concordance file + BOOL bMainEntry : 1; // main entry emphasized by character style + + + SwTOXMark(); // for crete the dflt. atr. in _InitCore + +public: + TYPEINFO(); // fuers rtti + + SwTOXMark( const SwTOXType* pTyp ); + SwTOXMark( const SwTOXMark& rCopy ); + virtual ~SwTOXMark(); + + // "pure virtual Methoden" vom SfxPoolItem + virtual int operator==( const SfxPoolItem& ) const; + virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const; + virtual SfxPoolItem* Create(SvStream &, USHORT nVer) const; + virtual SvStream& Store(SvStream &, USHORT nIVer) const; + virtual USHORT GetVersion( USHORT nFFVer ) const; + + SwTOXMark& operator=( const SwTOXMark& rCopy ); + String GetText() const; + + inline BOOL IsAlternativeText() const; + inline const String& GetAlternativeText() const; + + inline void SetAlternativeText( const String& rAlt ); + + // Inhalts-/Benutzerverzeichnis - spezifisch + inline void SetLevel(USHORT nLevel); + inline USHORT GetLevel() const; + + // Index - spezifisch + inline void SetPrimaryKey(const String& rStr ); + inline void SetSecondaryKey(const String& rStr); + inline const String& GetPrimaryKey() const; + inline const String& GetSecondaryKey() const; + + BOOL IsAutoGenerated() const {return bAutoGenerated;} + void SetAutoGenerated(BOOL bSet) {bAutoGenerated = bSet;} + + BOOL IsMainEntry() const {return bMainEntry;} + void SetMainEntry(BOOL bSet) { bMainEntry = bSet;} + + inline const SwTOXType* GetTOXType() const; + + const SwTxtTOXMark* GetTxtTOXMark() const { return pTxtAttr; } + SwTxtTOXMark* GetTxtTOXMark() { return pTxtAttr; } +}; + +/*-------------------------------------------------------------------- + Beschreibung: Typen einzelner Verzeichnisse + --------------------------------------------------------------------*/ + +class SwTOXType : public SwModify +{ +public: + SwTOXType(TOXTypes eTyp, const String& aName); + SwTOXType(const SwTOXType& rCopy); + + inline const String& GetTypeName() const; + void SetTypeName(const String& rName); + inline TOXTypes GetType() const; + +private: + String aName; + TOXTypes eType; +}; + +/*-------------------------------------------------------------------- + Beschreibung: Muster fuer Zeilen eines Verzeichnisses + --------------------------------------------------------------------*/ + +#define FORM_TITLE 0 +#define FORM_ALPHA_DELIMITTER 1 +#define FORM_PRIMARY_KEY 2 +#define FORM_SECONDARY_KEY 3 +#define FORM_ENTRY 4 + +/* + Pattern structure + + - entry number + - entry text + - entry text and number + - tab stop + - chapter info n = {0, 1, 2, 3, 4 } values of SwChapterFormat + - text token + <#> - Page number <# CharStyleName,PoolId> + - Link start + - Link end + - Authority entry field + */ + +// These enum values are stored and must not change! +enum FormTokenType +{ + TOKEN_ENTRY_NO, + TOKEN_ENTRY_TEXT, + TOKEN_ENTRY, + TOKEN_TAB_STOP, + TOKEN_TEXT, + TOKEN_PAGE_NUMS, + TOKEN_CHAPTER_INFO, + TOKEN_LINK_START, + TOKEN_LINK_END, + TOKEN_AUTHORITY, + TOKEN_END +}; + +struct SwFormToken +{ + String sText; + String sCharStyleName; + SwTwips nTabStopPosition; + FormTokenType eTokenType; + USHORT nPoolId; + USHORT eTabAlign; + USHORT nChapterFormat; //SwChapterFormat; + USHORT nAuthorityField; //enum ToxAuthorityField + sal_Unicode cTabFillChar; + + SwFormToken(FormTokenType eType ) : + eTokenType(eType), + nTabStopPosition(ULONG_MAX), + nPoolId(USHRT_MAX), + eTabAlign(0 /*SVX_TAB_ADJUST_LEFT*/), + cTabFillChar(' '), + nChapterFormat(0 /*CF_NUMBER*/), + nAuthorityField(0)/*AUTH_FIELD_IDENTIFIER*/{} + + String GetString() const; +}; + +class SwFormTokenEnumerator +{ + String sPattern; + xub_StrLen nCurPatternPos; + xub_StrLen nCurPatternLen; + + FormTokenType _SearchNextToken( xub_StrLen nStt, xub_StrLen& rEnd, + xub_StrLen* pTokenLen = 0 ) const; + SwFormToken BuildToken( FormTokenType, xub_StrLen ) const; + +public: + SwFormTokenEnumerator( const String& rPattern ); + BOOL HasNextToken() const + { return nCurPatternPos + nCurPatternLen < sPattern.Len(); } + + SwFormToken GetNextToken(); + SwFormToken GetCurToken() const; + + FormTokenType GetCurTokenType(); + FormTokenType GetNextTokenType(); + FormTokenType GetPrevTokenType(); + void RemoveCurToken(); + void InsertToken( const SwFormToken& rToken ); + const String& GetPattern() const { return sPattern; } +}; + +class SwForm +{ + String aPattern[ AUTH_TYPE_END + 1 ]; + String aTemplate[ AUTH_TYPE_END + 1 ]; + USHORT nType, nFormMaxLevel; + //USHORT nFirstTabPos; -> Value in tab token +// BOOL bHasFirstTabPos : 1; + BOOL bGenerateTabPos : 1; + BOOL bIsRelTabPos : 1; + BOOL bCommaSeparated : 1; + +public: + SwForm( USHORT nType = TOX_CONTENT ); + SwForm( const SwForm& rForm ); + + SwForm& operator=( const SwForm& rForm ); + + inline void SetTemplate(USHORT nLevel, const String& rName); + inline const String& GetTemplate(USHORT nLevel) const; + + inline void SetPattern(USHORT nLevel, const String& rName); + inline const String& GetPattern(USHORT nLevel) const; + + //convert pattern string from old to new format or vice versa + static String ConvertPatternTo51(const String& rSource); + static String ConvertPatternFrom51(const String& rSource, TOXTypes eType); + + // fill tab stop positions from template to pattern + void AdjustTabStops(SwDoc& rDoc); + + SwFormTokenEnumerator CreateTokenEnumerator(USHORT nLevel) const + {return SwFormTokenEnumerator(GetPattern(nLevel));} + + inline USHORT GetTOXType() const; + inline USHORT GetFormMax() const; + + USHORT GetFirstTabPos() const ; //{ return nFirstTabPos; } + void SetFirstTabPos( USHORT n ); //{ nFirstTabPos = n; } + + BOOL IsFirstTabPosFlag() const ; //{ return bHasFirstTabPos; } + void SetFirstTabPosFlag( BOOL b ); //{ bHasFirstTabPos = b; } + + BOOL IsGenerateTabPos() const { return bGenerateTabPos; } + void SetGenerateTabPos( BOOL b ) { bGenerateTabPos = b; } + + BOOL IsRelTabPos() const { return bIsRelTabPos; } + void SetRelTabPos( BOOL b ) { bIsRelTabPos = b; } + + BOOL IsCommaSeparated() const { return bCommaSeparated;} + void SetCommaSeparated( BOOL b) { bCommaSeparated = b;} + + static USHORT GetFormMaxLevel( USHORT nType ); + + static const sal_Char* aFormEntry; // + static BYTE nFormEntryLen; // 3 Zeichen + static const sal_Char* aFormTab; // + static BYTE nFormTabLen; // 3 Zeichen + static const sal_Char* aFormPageNums; //

+ static BYTE nFormPageNumsLen; // 3 Zeichen + static const sal_Char* aFormLinkStt; // + static BYTE nFormLinkSttLen; // 4 Zeichen + static const sal_Char* aFormLinkEnd; // + static BYTE nFormLinkEndLen; // 4 Zeichen + static const sal_Char* aFormEntryNum; // + static BYTE nFormEntryNumLen; // 4 Zeichen + static const sal_Char* aFormEntryTxt; // + static BYTE nFormEntryTxtLen; // 4 Zeichen + static const sal_Char* aFormChapterMark; // + static BYTE nFormChapterMarkLen; // 3 Zeichen + static const sal_Char* aFormText; // + static BYTE nFormTextLen; // 4 Zeichen + static const sal_Char* aFormAuth; // xx - decimal enum value + static BYTE nFormAuthLen; // 3 chars +}; + +/*-------------------------------------------------------------------- + Beschreibung: Inhalte aus denen Verzeichnisse generiert werden + --------------------------------------------------------------------*/ + +enum SwTOXElement +{ + TOX_MARK = 1, + TOX_OUTLINELEVEL = 2, + TOX_TEMPLATE = 4, + TOX_OLE = 8, + TOX_TABLE = 16, + TOX_GRAPHIC = 32, + TOX_FRAME = 64, + TOX_SEQUENCE = 128 +}; + +enum SwTOIOptions +{ + TOI_SAME_ENTRY = 1, + TOI_FF = 2, + TOI_CASE_SENSITIVE = 4, + TOI_KEY_AS_ENTRY = 8, + TOI_ALPHA_DELIMITTER = 16, + TOI_DASH = 32, + TOI_INITIAL_CAPS = 64 +}; + +//which part of the caption is to be displayed +enum SwCaptionDisplay +{ + CAPTION_COMPLETE, + CAPTION_NUMBER, + CAPTION_TEXT +}; + +enum SwTOOElements +{ + TOO_MATH = 0x01, + TOO_CHART = 0x02, + TOO_IMAGE = 0x04, + TOO_CALC = 0x08, + TOO_DRAW_IMPRESS= 0x10, +// TOO_IMPRESS = 0x20, + + TOO_OTHER = 0x80 +}; + +#define TOX_STYLE_DELIMITER ((sal_Unicode)0x01) //JP 19.07.00: use a control char + +/*-------------------------------------------------------------------- + Beschreibung: Klasse aller Verzeichnisse + --------------------------------------------------------------------*/ + +class SwTOXBase : public SwClient +{ + // not implemented + SwTOXBase& operator=(const SwTOXBase& rSource); + +//protected: + + SwForm aForm; // Aussehen der Eintragzeile + String aName; // unique name + String aTitle; // Der Verzeichnistitel + + String sMainEntryCharStyle; // name of the character style applied to main index entries + + String aStyleNames[MAXLEVEL]; // (additional) style names TOX_CONTENT, TOX_USER + String sSequenceName; // FieldTypeName of a caption sequence + + union { + USHORT nLevel; // Gliederungsebenen beachten + USHORT nOptions; // Optionen fuer Index + } aData; + + USHORT nCreateType; // Quellen aus dem das Verzeichnis generiert wird + USHORT nOLEOptions; // OLE sources + SwCaptionDisplay eCaptionDisplay; // + BOOL bProtected : 1; // index protected ? + BOOL bFromChapter : 1; // create from chapter or document + BOOL bFromObjectNames : 1; // create a table or object index + // from the names rather than the caption + BOOL bLevelFromChapter : 1; // User index: get the level from the source chapter +public: + SwTOXBase( const SwTOXType* pTyp, const SwForm& rForm, + USHORT nCreaType, const String& rTitle ); + SwTOXBase( const SwTOXBase& rCopy, SwDoc* pDoc = 0 ); + virtual ~SwTOXBase(); + + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + // a kind of CopyCtor - check if the TOXBase is at TOXType of the doc. + // If not, so create it an copy all other used things. The return is this + SwTOXBase& CopyTOXBase( SwDoc*, const SwTOXBase& ); + + const SwTOXType* GetTOXType() const; // + + USHORT GetCreateType() const; // Aus Inhaltsformen generieren + + const String& GetTOXName() const {return aName;} + void SetTOXName(const String& rSet) {aName = rSet;} + + const String& GetTitle() const; // Titel des Verzeichnisses + const String& GetTypeName() const; // Name des Verzeichnisses + const SwForm& GetTOXForm() const; // Aussehen der Zeile + + void SetCreate(USHORT); + void SetTitle(const String& rTitle); + void SetTOXForm(const SwForm& rForm); + + TOXTypes GetType() const; + + const String& GetMainEntryCharStyle() const {return sMainEntryCharStyle;} + void SetMainEntryCharStyle(const String& rSet) {sMainEntryCharStyle = rSet;} + + // Inhaltsverzeichnis - spezifisch + inline void SetLevel(USHORT); // Gliederungsebene beachten + inline USHORT GetLevel() const; + + // Index - spezifisch + inline USHORT GetOptions() const; // Optionen fuer Index + inline void SetOptions(USHORT nOpt); + + // index of objects + USHORT GetOLEOptions() const {return nOLEOptions;} + void SetOLEOptions(USHORT nOpt) {nOLEOptions = nOpt;} + + // index of objects + + // Benutzerverzeichnis - spezifisch + inline void SetTemplateName(const String& rName); // Absatzlayout beachten + inline String GetTemplateName() const; + + const String& GetStyleNames(USHORT nLevel) const + { + DBG_ASSERT( nLevel < MAXLEVEL, "Which level?"); + return aStyleNames[nLevel]; + } + void SetStyleNames(const String& rSet, USHORT nLevel) + { + DBG_ASSERT( nLevel < MAXLEVEL, "Which level?"); + aStyleNames[nLevel] = rSet; + } + BOOL HasAnyStyleNames() const; + + BOOL IsFromChapter() const { return bFromChapter;} + void SetFromChapter(BOOL bSet) { bFromChapter = bSet;} + + BOOL IsFromObjectNames() const {return bFromObjectNames;} + void SetFromObjectNames(BOOL bSet) {bFromObjectNames = bSet;} + + BOOL IsLevelFromChapter() const {return bLevelFromChapter;} + void SetLevelFromChapter(BOOL bSet) {bLevelFromChapter = bSet;} + + BOOL IsProtected() const { return bProtected; } + void SetProtected(BOOL bSet) { bProtected = bSet; } + + const String& GetSequenceName() const {return sSequenceName;} + void SetSequenceName(const String& rSet) {sSequenceName = rSet;} + + SwCaptionDisplay GetCaptionDisplay() const { return eCaptionDisplay;} + void SetCaptionDisplay(SwCaptionDisplay eSet) {eCaptionDisplay = eSet;} + + BOOL IsTOXBaseInReadonly() const; + + const SfxItemSet* GetAttrSet() const; + void SetAttrSet( const SfxItemSet& ); + + static const String& GetTOXName(TOXTypes eType); // toxmgr.cxx + +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Inlines + --------------------------------------------------------------------*/ + +// +//SwTOXMark +// +inline const String& SwTOXMark::GetAlternativeText() const + { return aAltText; } + +inline const SwTOXType* SwTOXMark::GetTOXType() const + { return (SwTOXType*)GetRegisteredIn(); } + +inline BOOL SwTOXMark::IsAlternativeText() const + { return aAltText.Len() > 0; } + +inline void SwTOXMark::SetAlternativeText(const String& rAlt) +{ + aAltText = rAlt; +} + +inline void SwTOXMark::SetLevel( USHORT nLvl ) +{ + ASSERT( !GetTOXType() || GetTOXType()->GetType() != TOX_INDEX, "Falscher Feldtyp"); + nLevel = nLvl; +} + +inline void SwTOXMark::SetPrimaryKey( const String& rKey ) +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + aPrimaryKey = rKey; +} + +inline void SwTOXMark::SetSecondaryKey( const String& rKey ) +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + aSecondaryKey = rKey; +} + +inline USHORT SwTOXMark::GetLevel() const +{ + ASSERT( !GetTOXType() || GetTOXType()->GetType() != TOX_INDEX, "Falscher Feldtyp"); + return nLevel; +} + +inline const String& SwTOXMark::GetPrimaryKey() const +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + return aPrimaryKey; +} + +inline const String& SwTOXMark::GetSecondaryKey() const +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + return aSecondaryKey; +} + + +// +//SwForm +// +inline void SwForm::SetTemplate(USHORT nLevel, const String& rName) +{ + ASSERT(nLevel < GetFormMax(), "Index >= FORM_MAX"); + aTemplate[nLevel] = rName; +} + +inline void SwForm::SetPattern(USHORT nLevel, const String& rName) +{ + ASSERT(nLevel < GetFormMax(), "Index >= FORM_MAX"); + aPattern[nLevel] = rName; +} + +inline const String& SwForm::GetPattern(USHORT nLevel) const +{ + ASSERT(nLevel < GetFormMax(), "Index >= FORM_MAX"); + return aPattern[nLevel]; +} + +inline const String& SwForm::GetTemplate(USHORT nLevel) const +{ + ASSERT(nLevel < GetFormMax(), "Index >= FORM_MAX"); + return aTemplate[nLevel]; +} + +inline USHORT SwForm::GetTOXType() const +{ + return nType; +} + +inline USHORT SwForm::GetFormMax() const +{ + return nFormMaxLevel; +} + + +// +//SwTOXType +// +inline const String& SwTOXType::GetTypeName() const + { return aName; } + +inline void SwTOXType::SetTypeName(const String& rName) + { aName = rName; } + +inline TOXTypes SwTOXType::GetType() const + { return eType; } + +// +// SwTOXBase +// +inline const SwTOXType* SwTOXBase::GetTOXType() const + { return (SwTOXType*)GetRegisteredIn(); } + +inline USHORT SwTOXBase::GetCreateType() const + { return nCreateType; } + +inline const String& SwTOXBase::GetTitle() const + { return aTitle; } + +inline const String& SwTOXBase::GetTypeName() const + { return GetTOXType()->GetTypeName(); } + +inline const SwForm& SwTOXBase::GetTOXForm() const + { return aForm; } + +inline void SwTOXBase::SetCreate(USHORT nCreate) + { nCreateType = nCreate; } + +inline void SwTOXBase::SetTitle(const String& rTitle) + { aTitle = rTitle; } + +inline void SwTOXBase::SetTOXForm(const SwForm& rForm) + { aForm = rForm; } + +inline TOXTypes SwTOXBase::GetType() const + { return GetTOXType()->GetType(); } + +inline void SwTOXBase::SetLevel(USHORT nLev) +{ + ASSERT(GetTOXType()->GetType() != TOX_INDEX, "Falscher Feldtyp"); + aData.nLevel = nLev; +} + +inline USHORT SwTOXBase::GetLevel() const +{ + ASSERT(GetTOXType()->GetType() != TOX_INDEX, "Falscher Feldtyp"); + return aData.nLevel; +} + +inline void SwTOXBase::SetTemplateName(const String& rName) +{ +// ASSERT(GetTOXType()->GetType() == TOX_USER, "Falscher Feldtyp"); +// ASSERT(aData.pTemplateName, "pTemplateName == 0"); +// (*aData.pTemplateName) = rName; + DBG_WARNING("SwTOXBase::SetTemplateName obsolete") + aStyleNames[0] = rName; + +} + +inline String SwTOXBase::GetTemplateName() const +{ +// ASSERT(GetTOXType()->GetType() == TOX_USER, "Falscher Feldtyp"); +// return *aData.pTemplateName; + DBG_WARNING("SwTOXBase::GetTemplateName obsolete") + return aStyleNames[0].GetToken(0, TOX_STYLE_DELIMITER); +} + +inline USHORT SwTOXBase::GetOptions() const +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + return aData.nOptions; +} + +inline void SwTOXBase::SetOptions(USHORT nOpt) +{ + ASSERT(GetTOXType()->GetType() == TOX_INDEX, "Falscher Feldtyp"); + aData.nOptions = nOpt; +} + + +#endif // _TOX_HXX diff --git a/sw/inc/toxe.hxx b/sw/inc/toxe.hxx new file mode 100644 index 000000000000..6a8c8bedf354 --- /dev/null +++ b/sw/inc/toxe.hxx @@ -0,0 +1,159 @@ +/************************************************************************* + * + * $RCSfile: toxe.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TOXE_HXX +#define _TOXE_HXX + +enum SwTOXSearch +{ + TOX_NXT, + TOX_PRV, + TOX_SAME_NXT, + TOX_SAME_PRV +}; + +enum SwTOIKeyType +{ + TOI_PRIMARY, + TOI_SECONDARY +}; + +enum TOXTypes +{ + TOX_INDEX, + TOX_USER, + TOX_CONTENT, + TOX_ILLUSTRATIONS, + TOX_OBJECTS, + TOX_TABLES, + TOX_AUTHORITIES +}; +// this enum contains all types of sources +enum ToxAuthorityType +{ + //BiBTeX - fields + AUTH_TYPE_ARTICLE, + AUTH_TYPE_BOOK, + AUTH_TYPE_BOOKLET, + AUTH_TYPE_CONFERENCE, + AUTH_TYPE_INBOOK, + AUTH_TYPE_INCOLLECTION, + AUTH_TYPE_INPROCEEDINGS, + AUTH_TYPE_JOURNAL, + AUTH_TYPE_MANUAL, + AUTH_TYPE_MASTERSTHESIS, + AUTH_TYPE_MISC, + AUTH_TYPE_PHDTHESIS, + AUTH_TYPE_PROCEEDINGS, + AUTH_TYPE_TECHREPORT, + AUTH_TYPE_UNPUBLISHED, + //additional types + AUTH_TYPE_EMAIL, + AUTH_TYPE_WWW, + AUTH_TYPE_CUSTOM1, + AUTH_TYPE_CUSTOM2, + AUTH_TYPE_CUSTOM3, + AUTH_TYPE_CUSTOM4, + AUTH_TYPE_CUSTOM5, + AUTH_TYPE_END +}; + +//this enum contains the fields of an authority entry +enum ToxAuthorityField +{ + AUTH_FIELD_IDENTIFIER, + AUTH_FIELD_AUTHORITY_TYPE, //ToxAuthorityType + //BibTex types + AUTH_FIELD_ADDRESS, + AUTH_FIELD_ANNOTE, + AUTH_FIELD_AUTHOR, + AUTH_FIELD_BOOKTITLE, + AUTH_FIELD_CHAPTER, + AUTH_FIELD_EDITION, + AUTH_FIELD_EDITOR, + AUTH_FIELD_HOWPUBLISHED, + AUTH_FIELD_INSTITUTION, + AUTH_FIELD_JOURNAL, +// AUTH_FIELD_KEY, // BiBTeX - Field + AUTH_FIELD_MONTH, + AUTH_FIELD_NOTE, + AUTH_FIELD_NUMBER, + AUTH_FIELD_ORGANIZATIONS, + AUTH_FIELD_PAGES, + AUTH_FIELD_PUBLISHER, + AUTH_FIELD_SCHOOL, + AUTH_FIELD_SERIES, + AUTH_FIELD_TITLE, + AUTH_FIELD_REPORT_TYPE, + AUTH_FIELD_VOLUME, + AUTH_FIELD_YEAR, + //additional types + AUTH_FIELD_URL, + AUTH_FIELD_CUSTOM1, + AUTH_FIELD_CUSTOM2, + AUTH_FIELD_CUSTOM3, + AUTH_FIELD_CUSTOM4, + AUTH_FIELD_CUSTOM5, + AUTH_FIELD_ISBN, + AUTH_FIELD_END +}; + + +#endif diff --git a/sw/inc/toxinit.hxx b/sw/inc/toxinit.hxx new file mode 100644 index 000000000000..25128fa9f434 --- /dev/null +++ b/sw/inc/toxinit.hxx @@ -0,0 +1,71 @@ +/************************************************************************* + * + * $RCSfile: toxinit.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TOXINIT_HXX +#define _TOXINIT_HXX + +class UniString; + +void SetTOUTableStr(const UniString& rStr); +void SetTOUGraphicStr(const UniString& rStr); +void SetTOUOLEStr(const UniString& rStr); + + +#endif // _TOXINIT_HXX diff --git a/sw/inc/txatbase.hxx b/sw/inc/txatbase.hxx new file mode 100644 index 000000000000..81909ed02949 --- /dev/null +++ b/sw/inc/txatbase.hxx @@ -0,0 +1,482 @@ +/************************************************************************* + * + * $RCSfile: txatbase.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:28 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXATBASE_HXX +#define _TXATBASE_HXX + +#ifndef _SOLAR_H +#include +#endif +#ifndef _SFXPOOLITEM_HXX //autogen +#include +#endif +#ifndef _HINTIDS_HXX +#include +#endif +#ifndef _ERRHDL_HXX +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif + +class SwFont; +class SfxItemPool; + +class SvxBrushItem; +class SvxFontItem; +class SvxPostureItem; +class SvxWeightItem; +class SvxUnderlineItem; +class SvxFontHeightItem; +class SvxPropSizeItem; +class SvxShadowedItem; +class SvxAutoKernItem; +class SvxWordLineModeItem; +class SvxContourItem; +class SvxCrossedOutItem; +class SvxColorItem; +class SvxCharSetColorItem; +class SvXMLAttrContainerItem; + +class SwFmtCharFmt; +class SwFmtINetFmt; + +class SvxKerningItem; +class SvxCaseMapItem; +class SvxLanguageItem; +class SvxEscapementItem; +class SvxBlinkItem; +class SvxNoHyphenItem; + +class SwFmtSoftHyph; +class SwFmtHardBlank; +class SwFmtFld; +class SwFmtFtn; +class SwFmtFlyCnt; +class SwTOXMark; +class SwFmtRefMark; + +class SwTxtAttr +{ + const SfxPoolItem* pAttr; + xub_StrLen nStart; + BOOL bDontExpand : 1; + +protected: + SwTxtAttr( const SfxPoolItem& rAttr, xub_StrLen nStart ); + +public: + virtual ~SwTxtAttr(); + + // RemoveFromPool muss immer vorm DTOR Aufruf erfolgen!! + void RemoveFromPool( SfxItemPool& rPool ); + + // Start Position erfragen + xub_StrLen* GetStart() { return &nStart; } + const xub_StrLen* GetStart() const { return &nStart; } + + // End Position erfragen + virtual xub_StrLen* GetEnd(); + inline const xub_StrLen* GetEnd() const; + inline const xub_StrLen* GetAnyEnd() const; + + BOOL DontExpand() const { return bDontExpand; } + void SetDontExpand( BOOL bNew ) { bDontExpand = bNew; } + + inline const SfxPoolItem& GetAttr() const; + inline USHORT Which() const { return GetAttr().Which(); } + + virtual int operator==( const SwTxtAttr& ) const; + + virtual void ChgFnt( SwFont * ); + virtual void RstFnt( SwFont * ); + + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); + + inline const SvxFontItem &GetFont() const; + inline const SvxPostureItem &GetPosture() const; + inline const SvxWeightItem &GetWeight() const; + inline const SvxUnderlineItem &GetUnderline() const; + inline const SvxFontHeightItem &GetFontSize() const; + inline const SvxPropSizeItem &GetPropSize() const; + inline const SvxShadowedItem &GetShadowed() const; + inline const SvxAutoKernItem &GetAutoKern() const; + inline const SvxWordLineModeItem &GetWordLineMode() const; + inline const SvxContourItem &GetContour() const; + inline const SvxCrossedOutItem &GetCrossedOut() const; + inline const SvxColorItem &GetColor() const; + inline const SvxCharSetColorItem &GetCharSetColor() const; + inline const SwFmtCharFmt &GetCharFmt() const; + inline const SvxKerningItem &GetKerning() const; + inline const SvxCaseMapItem &GetCaseMap() const; + inline const SvxLanguageItem &GetLanguage() const; + inline const SvxEscapementItem &GetEscapement() const; + inline const SvxBlinkItem &GetBlink() const; + inline const SvxBrushItem &GetChrBackground() const; + inline const SvxNoHyphenItem &GetNoHyphenHere() const; + inline const SwFmtSoftHyph &GetSoftHyph() const; + inline const SwFmtHardBlank &GetHardBlank() const; + inline const SwFmtFld &GetFld() const; + inline const SwFmtFtn &GetFtn() const; + inline const SwFmtFlyCnt &GetFlyCnt() const; + inline const SwTOXMark &GetTOXMark() const; + inline const SwFmtRefMark &GetRefMark() const; + inline const SwFmtINetFmt &GetINetFmt() const; + inline const SvXMLAttrContainerItem &GetXMLAttrContainer() const; + +private: + SwTxtAttr( const SwTxtAttr& ); + SwTxtAttr& operator=( const SwTxtAttr& ); +}; + +class SwTxtAttrEnd : public SwTxtAttr +{ +protected: + xub_StrLen nEnd; + SwTxtAttrEnd( const SfxPoolItem& rAttr, USHORT nStart, USHORT nEnd ); + +public: + + virtual xub_StrLen* GetEnd(); +}; + + +// --------------- Inline Implementierungen ------------------------ + +inline const xub_StrLen* SwTxtAttr::GetEnd() const +{ + return ((SwTxtAttr*)this)->GetEnd(); +} + +inline const xub_StrLen* SwTxtAttr::GetAnyEnd() const +{ + const xub_StrLen* pEnd = GetEnd(); + return pEnd ? pEnd : &nStart; +} + +inline const SfxPoolItem& SwTxtAttr::GetAttr() const +{ + ASSERT( pAttr, "wo ist mein Attribut?" ); + return *pAttr; +} + +inline const SvxFontItem& SwTxtAttr::GetFont() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_FONT, "Falsche Abfrage" ); + return (const SvxFontItem&)*pAttr; +} + +inline const SvxPostureItem& SwTxtAttr::GetPosture() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_POSTURE, "Falsche Abfrage" ); + return (const SvxPostureItem&)*pAttr; +} + +inline const SvxWeightItem& SwTxtAttr::GetWeight() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_WEIGHT, "Falsche Abfrage" ); + return (const SvxWeightItem&)*pAttr; +} + +inline const SvxUnderlineItem& SwTxtAttr::GetUnderline() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_UNDERLINE, "Falsche Abfrage" ); + return (const SvxUnderlineItem&)*pAttr; +} + +inline const SvxFontHeightItem& SwTxtAttr::GetFontSize() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_FONTSIZE, "Falsche Abfrage" ); + return (const SvxFontHeightItem&)*pAttr; +} + +inline const SvxPropSizeItem& SwTxtAttr::GetPropSize() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_PROPORTIONALFONTSIZE, "Falsche Abfrage" ); + return (const SvxPropSizeItem&)*pAttr; +} + +inline const SvxShadowedItem& SwTxtAttr::GetShadowed() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_SHADOWED, "Falsche Abfrage" ); + return (const SvxShadowedItem&)*pAttr; +} + +inline const SvxAutoKernItem& SwTxtAttr::GetAutoKern() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_AUTOKERN, "Falsche Abfrage" ); + return (const SvxAutoKernItem&)*pAttr; +} + +inline const SvxWordLineModeItem& SwTxtAttr::GetWordLineMode() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_WORDLINEMODE, "Falsche Abfrage" ); + return (const SvxWordLineModeItem&)*pAttr; +} + +inline const SvxContourItem& SwTxtAttr::GetContour() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_CONTOUR, "Falsche Abfrage" ); + return (const SvxContourItem&)*pAttr; +} + +inline const SvxCrossedOutItem& SwTxtAttr::GetCrossedOut() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_CROSSEDOUT, "Falsche Abfrage" ); + return (const SvxCrossedOutItem&)*pAttr; +} + +inline const SvxColorItem& SwTxtAttr::GetColor() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_COLOR, "Falsche Abfrage" ); + return (const SvxColorItem&)*pAttr; +} + +inline const SvxCharSetColorItem& SwTxtAttr::GetCharSetColor() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_CHARSETCOLOR, "Falsche Abfrage" ); + return (const SvxCharSetColorItem&)*pAttr; +} + +inline const SwFmtCharFmt& SwTxtAttr::GetCharFmt() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_CHARFMT, "Falsche Abfrage" ); + return (const SwFmtCharFmt&)*pAttr; +} + +inline const SvxKerningItem& SwTxtAttr::GetKerning() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_KERNING, "Falsche Abfrage" ); + return (const SvxKerningItem&)*pAttr; +} + +inline const SvxCaseMapItem& SwTxtAttr::GetCaseMap() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_CASEMAP, "Falsche Abfrage" ); + return (const SvxCaseMapItem&)*pAttr; +} + +inline const SvxLanguageItem& SwTxtAttr::GetLanguage() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_LANGUAGE, "Falsche Abfrage" ); + return (const SvxLanguageItem&)*pAttr; +} + +inline const SvxEscapementItem& SwTxtAttr::GetEscapement() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_ESCAPEMENT, "Falsche Abfrage" ); + return (const SvxEscapementItem&)*pAttr; +} + +inline const SvxBlinkItem& SwTxtAttr::GetBlink() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_BLINK, "Falsche Abfrage" ); + return (const SvxBlinkItem&)*pAttr; +} + +inline const SvxBrushItem& SwTxtAttr::GetChrBackground() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_BACKGROUND, "Falsche Abfrage" ); + return (const SvxBrushItem&)*pAttr; +} + +inline const SvxNoHyphenItem& SwTxtAttr::GetNoHyphenHere() const +{ + ASSERT( pAttr && pAttr->Which() == RES_CHRATR_NOHYPHEN, "Falsche Abfrage" ); + return (const SvxNoHyphenItem&)*pAttr; +} + +inline const SwFmtSoftHyph& SwTxtAttr::GetSoftHyph() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_SOFTHYPH, "Falsche Abfrage" ); + return (const SwFmtSoftHyph&)*pAttr; +} + +inline const SwFmtHardBlank& SwTxtAttr::GetHardBlank() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_HARDBLANK, "Falsche Abfrage" ); + return (const SwFmtHardBlank&)*pAttr; +} + +inline const SwFmtFld& SwTxtAttr::GetFld() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_FIELD, "Falsche Abfrage" ); + return (const SwFmtFld&)*pAttr; +} + +inline const SwFmtFtn& SwTxtAttr::GetFtn() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_FTN, "Falsche Abfrage" ); + return (const SwFmtFtn&)*pAttr; +} + +inline const SwFmtFlyCnt& SwTxtAttr::GetFlyCnt() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_FLYCNT, "Falsche Abfrage" ); + return (const SwFmtFlyCnt&)*pAttr; +} + +inline const SwTOXMark& SwTxtAttr::GetTOXMark() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_TOXMARK, "Falsche Abfrage" ); + return (const SwTOXMark&)*pAttr; +} + +inline const SwFmtRefMark& SwTxtAttr::GetRefMark() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_REFMARK, "Falsche Abfrage" ); + return (const SwFmtRefMark&)*pAttr; +} + +inline const SwFmtINetFmt& SwTxtAttr::GetINetFmt() const +{ + ASSERT( pAttr && pAttr->Which() == RES_TXTATR_INETFMT, "Falsche Abfrage" ); + return (const SwFmtINetFmt&)*pAttr; +} + +inline const SvXMLAttrContainerItem& SwTxtAttr::GetXMLAttrContainer() const +{ + ASSERT( pAttr && pAttr->Which() == RES_UNKNOWNATR_CONTAINER, + "Falsche Abfrage" ); + return (const SvXMLAttrContainerItem&)*pAttr; +} + +/************************************************************************* + + $Log: not supported by cvs2svn $ + Revision 1.23 2000/09/18 16:03:31 willem.vandorp + OpenOffice header added. + + Revision 1.22 2000/09/08 13:24:29 willem.vandorp + Header and footer replaced + + Revision 1.21 2000/05/10 12:47:25 ama + Unicode changes + + Revision 1.20 1999/12/07 21:09:51 jp + Task #70258#: textattr for XMLAttrContainer + + Revision 1.19 1998/01/23 16:39:36 AMA + New: Redlining + Zeichenattribute + + + Rev 1.18 23 Jan 1998 17:39:36 AMA + New: Redlining + Zeichenattribute + + Rev 1.17 04 Aug 1997 16:43:08 MH + chg: header + + Rev 1.16 27 Sep 1996 14:21:12 JP + bDontExpand Flag in die TxtAttr-Basisklasse verschoben + + Rev 1.15 17 Sep 1996 19:16:44 HJS + add: forward + + Rev 1.14 17 Sep 1996 16:51:12 AMA + Chg: Zeichenhintergrund als Zeichenattribut + + Rev 1.13 02 Aug 1996 14:50:20 AMA + New: INet-Felder werden zu attributiertem Text. + + Rev 1.12 15 Jul 1996 17:16:24 AMA + Umbau: NoBlink -> Blink TXTATR -> CHRATR ... + + Rev 1.11 04 Jul 1996 16:33:46 AMA + New: Aus dem NoLinebreak wird ein NoBlink-Attribut + + Rev 1.10 24 Jun 1996 18:37:26 MA + includes + + Rev 1.9 08 Aug 1995 17:23:26 AMA + Umbau: GetPresentation statt GetValueText + + Rev 1.8 19 Jun 1995 16:50:54 MA + Umbau fuer daemliche Compiler + + Rev 1.7 27 Jan 1995 17:39:36 AMA + Neues Textattribut: SvxAutoKernItem + + Rev 1.6 06 Jan 1995 18:42:36 AMA + SEXPORT wg. DLL + + Rev 1.5 02 Nov 1994 12:18:16 AMA + Reimport Absatzattr. als Svx (paraitem.hxx) + SvxSizeItem->SvxFontHeight (textitem.hxx) + + Rev 1.4 14 Oct 1994 14:18:34 AMA + Umstellung auf SvxItems + + Rev 1.3 07 Sep 1994 17:45:02 SWG + Umstellung Attribute + + Rev 1.2 29 Aug 1994 19:30:38 JP + DTOR muss virtual sein. + + Rev 1.1 29 Aug 1994 10:02:48 JP + Ist der Return-Wert eine Referenz, muss auch dereferenziert werden! + + Rev 1.0 25 Aug 1994 16:54:32 JP + Umstellung Attribute (von SwHint -> SfxPoolItem) + +*************************************************************************/ + // #ifndef _TXATBASE_HXX +#endif diff --git a/sw/inc/txtatr.hxx b/sw/inc/txtatr.hxx new file mode 100644 index 000000000000..8a7e2935168f --- /dev/null +++ b/sw/inc/txtatr.hxx @@ -0,0 +1,427 @@ +/************************************************************************* + * + * $RCSfile: txtatr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTATR_HXX +#define _TXTATR_HXX + +#ifndef _SV_GEN_HXX +#include +#endif +#ifndef _TOOLS_COLOR_HXX +#include +#endif +#ifndef _LANG_HXX +#include +#endif +#ifndef _SV_FONTTYPE_HXX //autogen +#include +#endif +#ifndef _SVX_SVXENUM_HXX //autogen +#include +#endif + +#ifndef _TXATBASE_HXX +#include // SwTxtAttr/SwTxtAttrEnd +#endif + +class SwTxtNode; // fuer SwTxtFld +class SvxFont; +class SwCharSetCol; + +// ATT_FONT *********************************************************** + +class SwTxtFont: public SwTxtAttrEnd +{ + // Hier werden die alten Werte aus dem Font bei ChgFnt() gemerkt. + FontFamily ePrevFamily; + FontPitch ePrevPitch; + CharSet ePrevCharSet; + String aPrevName; + String aPrevStyleName; +public: + SwTxtFont( const SvxFontItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + ~SwTxtFont( ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_POSTURE *********************************************************** + +class SwTxtPosture : public SwTxtAttrEnd +{ + FontItalic ePrevPosture; +public: + SwTxtPosture( const SvxPostureItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_WEIGHT ************************************************************ + +class SwTxtWeight : public SwTxtAttrEnd +{ + // Hier merkt es sich das SV-Attribut Weight aus dem Font. + FontWeight ePrevWeight; +public: + SwTxtWeight( const SvxWeightItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_SHADOWED ********************************************************** + +class SwTxtShadowed : public SwTxtAttrEnd +{ + BOOL bPrevShadow; +public: + SwTxtShadowed( const SvxShadowedItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_AUTOKERN ********************************************************** + +class SwTxtAutoKern : public SwTxtAttrEnd +{ + BOOL bPrevAutoKern; +public: + SwTxtAutoKern( const SvxAutoKernItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); +}; + +// ATT_WORDLINEMODE ********************************************************** + +class SwTxtWordLineMode : public SwTxtAttrEnd +{ + BOOL bPrevWordLineMode; +public: + SwTxtWordLineMode( const SvxWordLineModeItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_CONTOUR *********************************************************** + +class SwTxtContour : public SwTxtAttrEnd +{ + BOOL bPrevContour; +public: + SwTxtContour( const SvxContourItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_CROSSEDOUT ******************************************************** + +class SwTxtCrossedOut : public SwTxtAttrEnd +{ + FontStrikeout ePrevCrossedOut; +public: + SwTxtCrossedOut( const SvxCrossedOutItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_UNDERLINE ********************************************************* + +class SwTxtUnderline : public SwTxtAttrEnd +{ + FontUnderline ePrevUnderline; +public: + SwTxtUnderline( const SvxUnderlineItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_SIZE ************************************************************** + +class SwTxtSize : public SwTxtAttrEnd +{ + Size aPrevSize; +public: + SwTxtSize( const SvxFontHeightItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_COLOR ************************************************************* + +class SwTxtColor : public SwTxtAttrEnd +{ + friend class SwTxtCharSetColor; + Color aPrevColor; +public: + SwTxtColor( const SvxColorItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_CHARSETCOLOR ****************************************************** + +class SwTxtCharSetColor : public SwTxtAttrEnd +{ + SwCharSetCol *pPrevCharSetCol; +public: + SwTxtCharSetColor( const SvxCharSetColorItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + ~SwTxtCharSetColor(); + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_CHARFMT ********************************************* + +class SwTxtCharFmt : public SwTxtAttrEnd +{ + SvxFont* pPrevFont; + const void* pFontNo; + SwTxtNode* pMyTxtNd; + Color* pPrevColor; + USHORT nFntIndex; + BOOL bPrevNoHyph : 1; + BOOL bPrevBlink : 1; + BOOL bPrevURL : 1; + BOOL bColor : 1; + +public: + SwTxtCharFmt( const SwFmtCharFmt& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + ~SwTxtCharFmt( ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + + // werden vom SwFmtCharFmt hierher weitergeleitet + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); // SwClient + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + // erfrage und setze den TxtNode Pointer + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } + +}; + + +// ATT_KERNING *********************************************************** + +class SwTxtKerning : public SwTxtAttrEnd +{ + short nPrevKern; +public: + SwTxtKerning( const SvxKerningItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_CASEMAP *********************************************************** + +class SwTxtCaseMap : public SwTxtAttrEnd +{ + SvxCaseMap ePrevCaseMap; +public: + SwTxtCaseMap( const SvxCaseMapItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_LANGUAGE ********************************************************** + +class SwTxtLanguage : public SwTxtAttrEnd +{ + LanguageType ePrevLang; +public: + SwTxtLanguage( const SvxLanguageItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); +}; + + +// ATT_ESCAPEMENT ******************************************************** + +class SwTxtEscapement : public SwTxtAttrEnd +{ + short nPrevEsc; + BYTE nPrevPropr; + +public: + SwTxtEscapement( const SvxEscapementItem& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_BLINK *********************** + +class SwTxtBlink : public SwTxtAttrEnd +{ + BOOL bPrev; +public: + SwTxtBlink( const SvxBlinkItem& rAttr, + xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_BACKGROUND *********************** + +class SwTxtBackground : public SwTxtAttrEnd +{ + Color *pPrevColor; +public: + SwTxtBackground( const SvxBrushItem& rAttr, + xub_StrLen nStart, xub_StrLen nEnd ); + ~SwTxtBackground(); + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + virtual void ChgTxtAttr( SwTxtAttr & ); + virtual void RstTxtAttr( SwTxtAttr & ); +}; + +// ATT_NOHYPHENHERE ************************** + +class SwTxtNoHyphenHere : public SwTxtAttrEnd +{ + BOOL bPrev; +public: + SwTxtNoHyphenHere( const SvxNoHyphenItem& rAttr, + xub_StrLen nStart, xub_StrLen nEnd ); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); +}; + +// ATT_HARDBLANK ****************************** + +class SwTxtHardBlank : public SwTxtAttr +{ + sal_Unicode cChar; +public: + SwTxtHardBlank( const SwFmtHardBlank& rAttr, xub_StrLen nStart ); + inline sal_Unicode GetChar() const { return cChar; } +}; + + +// ATT_XNLCONTAINERITEM ****************************** + +class SwTxtXMLAttrContainer : public SwTxtAttrEnd +{ +public: + SwTxtXMLAttrContainer( const SvXMLAttrContainerItem& rAttr, + xub_StrLen nStart, xub_StrLen nEnd ); +}; + + + +// --------------- Inline Implementierungen ------------------------ + + +inline const SwTxtNode& SwTxtCharFmt::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtCharFmt:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + + + +#endif diff --git a/sw/inc/txtflcnt.hxx b/sw/inc/txtflcnt.hxx new file mode 100644 index 000000000000..334735e52b19 --- /dev/null +++ b/sw/inc/txtflcnt.hxx @@ -0,0 +1,104 @@ +/************************************************************************* + * + * $RCSfile: txtflcnt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTFLCNT_HXX +#define _TXTFLCNT_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif + +class SwFlyInCntFrm; +class SwFrm; +class SwTxtNode; +class SwDoc; + +// SWTXT_FLYCNT ******************************** +// Attribut fuer zeilengebundene Frames (ohne Endindex) + +class SwTxtFlyCnt : public SwTxtAttr +{ + SwFlyInCntFrm *_GetFlyFrm( const SwFrm *pCurrFrm ); + +public: + SwTxtFlyCnt( const SwFmtFlyCnt& rAttr, xub_StrLen nStart ); + + // Setzt den Anker im pFmt und + void SetAnchor( const SwTxtNode *pNode ); + + inline SwFlyInCntFrm *GetFlyFrm( const SwFrm *pCurrFrm ); + inline const SwFlyInCntFrm *GetFlyFrm( const SwFrm *pCurrFrm ) const; + + // erzeugt sich ein neues FlyFrameFormat + void CopyFlyFmt( SwDoc* pDoc ); +}; + +inline SwFlyInCntFrm *SwTxtFlyCnt::GetFlyFrm( const SwFrm *pCurrFrm ) +{ + return _GetFlyFrm( pCurrFrm ); +} + +inline const SwFlyInCntFrm *SwTxtFlyCnt::GetFlyFrm( const SwFrm *pCurrFrm ) const +{ + return ((SwTxtFlyCnt*)this)->_GetFlyFrm( pCurrFrm ); +} + +#endif + diff --git a/sw/inc/txtfld.hxx b/sw/inc/txtfld.hxx new file mode 100644 index 000000000000..4e73a9a46fe7 --- /dev/null +++ b/sw/inc/txtfld.hxx @@ -0,0 +1,106 @@ +/************************************************************************* + * + * $RCSfile: txtfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTFLD_HXX +#define _TXTFLD_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif + +class SwTxtNode; + +// ATT_FLD *********************************** + +class SwTxtFld : public SwTxtAttr +{ + String aExpand; + SwTxtNode *pMyTxtNd; +public: + SwTxtFld( const SwFmtFld& rAttr, xub_StrLen nStart ); + ~SwTxtFld(); + + void CopyFld( SwTxtFld *pDest ) const; + void Expand(); + inline void ExpandAlways(); + + // erfrage und setze den TxtNode Pointer + const SwTxtNode* GetpTxtNode() const { return pMyTxtNd; } + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } +}; + +inline const SwTxtNode& SwTxtFld::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtFld:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + +inline void SwTxtFld::ExpandAlways() +{ + aExpand += ' '; + Expand(); +} + +#endif + diff --git a/sw/inc/txtftn.hxx b/sw/inc/txtftn.hxx new file mode 100644 index 000000000000..c04d0e2c7cc8 --- /dev/null +++ b/sw/inc/txtftn.hxx @@ -0,0 +1,121 @@ +/************************************************************************* + * + * $RCSfile: txtftn.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTFTN_HXX +#define _TXTFTN_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif + +class SwNodeIndex; +class SwTxtNode; +class SwNodes; +class SwDoc; + +// ATT_FTN ********************************************************** + +class SwTxtFtn : public SwTxtAttr +{ + SwNodeIndex *pStartNode; + SwTxtNode* pMyTxtNd; + USHORT nSeqNo; + + // Zuweisung und Copy-Ctor sind nicht erlaubt. + SwTxtFtn& operator=( const SwTxtFtn &rTxtFtn ); + SwTxtFtn( const SwTxtFtn &rTxtFtn ); + +public: + SwTxtFtn( const SwFmtFtn& rAttr, xub_StrLen nStart ); + ~SwTxtFtn(); + + inline SwNodeIndex *GetStartNode() const { return pStartNode; } + void SetStartNode( const SwNodeIndex *pNode, BOOL bDelNodes = TRUE ); + void SetNumber( const USHORT nNumber, const String* = 0 ); + void CopyFtn( SwTxtFtn *pDest ); + + // erfrage und setze den TxtNode Pointer + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } + + // lege eine neue leere TextSection fuer diese Fussnote an + void MakeNewTextSection( SwNodes& rNodes ); + + // loesche die FtnFrame aus der Seite + void DelFrms(); + // bedingten Absatzvorlagen checken + void CheckCondColl(); + + // fuer die Querverweise auf Fussnoten + USHORT SetSeqRefNo(); + void SetSeqNo( USHORT n ) { nSeqNo = n; } // fuer die Reader + USHORT GetSeqRefNo() const { return nSeqNo; } + + static void SetUniqueSeqRefNo( SwDoc& rDoc ); +}; + +inline const SwTxtNode& SwTxtFtn::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtFtn:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + +#endif + diff --git a/sw/inc/txtinet.hxx b/sw/inc/txtinet.hxx new file mode 100644 index 000000000000..a39d7fd1328b --- /dev/null +++ b/sw/inc/txtinet.hxx @@ -0,0 +1,127 @@ +/************************************************************************* + * + * $RCSfile: txtinet.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTINET_HXX +#define _TXTINET_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif + +class SvxFont; +class SwTxtNode; +class SwCharFmt; +class Color; + +// ATT_INETFMT ********************************************* + +class SwTxtINetFmt : public SwTxtAttrEnd, public SwClient +{ + SvxFont* pPrevFont; + Color* pPrevBackColor; + SwTxtNode* pMyTxtNd; + const void* pFontNo; + USHORT nFntIndex; + BOOL bPrevNoHyph : 1; + BOOL bPrevBlink : 1; + BOOL bPrevURL : 1; + BOOL bVisited : 1; // Besuchter Link? + BOOL bValidVis : 1; // Ist das bVisited-Flag gueltig? + BOOL bColor : 1; + +public: + SwTxtINetFmt( const SwFmtINetFmt& rAttr, xub_StrLen nStart, xub_StrLen nEnd ); + virtual ~SwTxtINetFmt(); + TYPEINFO(); + + virtual void ChgFnt(SwFont *); + virtual void RstFnt(SwFont *); + + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + virtual BOOL GetInfo( SfxPoolItem& rInfo ) const; + + // erfrage und setze den TxtNode Pointer + const SwTxtNode* GetpTxtNode() const { return pMyTxtNd; } + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } + + SwCharFmt* GetCharFmt(); + const SwCharFmt* GetCharFmt() const + { return ((SwTxtINetFmt*)this)->GetCharFmt(); } + + const BOOL IsVisited() const { return bVisited; } + void SetVisited( BOOL bNew ) { bVisited = bNew; } + + const BOOL IsValidVis() const { return bValidVis; } + void SetValidVis( BOOL bNew ) { bValidVis = bNew; } + + BOOL IsProtect() const; +}; +inline const SwTxtNode& SwTxtINetFmt::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtINetFmt:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + +#endif + diff --git a/sw/inc/txtrfmrk.hxx b/sw/inc/txtrfmrk.hxx new file mode 100644 index 000000000000..52e6ea84a5e6 --- /dev/null +++ b/sw/inc/txtrfmrk.hxx @@ -0,0 +1,98 @@ +/************************************************************************* + * + * $RCSfile: txtrfmrk.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTRFMRK_HXX +#define _TXTRFMRK_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif + +class SwTxtNode; + +// SWTXT_REFMARK ************************************* +// Attribut fuer Inhalts-/Positions-Referenzen im Text + +class SwTxtRefMark : public SwTxtAttrEnd +{ + SwTxtNode* pMyTxtNd; + USHORT* pEnd; // fuer InhaltsReferenz / PositionRef. ohne Ende +public: + SwTxtRefMark( const SwFmtRefMark& rAttr, + xub_StrLen nStart, xub_StrLen * pEnd = 0 ); + + virtual xub_StrLen *GetEnd(); // SwTxtAttr + inline const xub_StrLen* GetEnd() const { return pEnd; } + + virtual void ChgFnt(SwFont *); // SwTxtAttr + virtual void RstFnt(SwFont *); // SwTxtAttr + + // erfrage und setze den TxtNode Pointer + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } +}; +inline const SwTxtNode& SwTxtRefMark::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtRefMark:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + +#endif + diff --git a/sw/inc/txttxmrk.hxx b/sw/inc/txttxmrk.hxx new file mode 100644 index 000000000000..a65fa3ce33c7 --- /dev/null +++ b/sw/inc/txttxmrk.hxx @@ -0,0 +1,104 @@ +/************************************************************************* + * + * $RCSfile: txttxmrk.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _TXTTXMRK_HXX +#define _TXTTXMRK_HXX + +#ifndef _TXATBASE_HXX //autogen +#include +#endif + +class SwTxtNode; +class SwDoc; + +// SWTXT_TOXMARK ******************************* +// Attribut fuer die Verzeichnisse + +class SwTxtTOXMark : public SwTxtAttrEnd +{ + xub_StrLen* pEnd; // wenn AlternativText vom SwTOXMark dann 0 !! + SwTxtNode* pMyTxtNd; +public: + SwTxtTOXMark( const SwTOXMark& rAttr, + xub_StrLen nStart, xub_StrLen * pEnd = 0 ); + virtual ~SwTxtTOXMark(); + + virtual xub_StrLen *GetEnd(); // SwTxtAttr + inline const xub_StrLen* GetEnd() const { return pEnd; } + + virtual void ChgFnt(SwFont *); // SwTxtAttr + virtual void RstFnt(SwFont *); // SwTxtAttr + + void CopyTOXMark( SwDoc* pDestDoc ); + + // erfrage und setze den TxtNode Pointer + inline const SwTxtNode* GetpTxtNd() const { return pMyTxtNd; } + inline const SwTxtNode& GetTxtNode() const; + void ChgTxtNode( const SwTxtNode* pNew ) { pMyTxtNd = (SwTxtNode*)pNew; } +}; + +inline const SwTxtNode& SwTxtTOXMark::GetTxtNode() const +{ + ASSERT( pMyTxtNd, "SwTxtTOXMark:: wo ist mein TextNode?" ); + return *pMyTxtNd; +} + +#endif + diff --git a/sw/inc/undobj.hxx b/sw/inc/undobj.hxx new file mode 100644 index 000000000000..6064c6377af2 --- /dev/null +++ b/sw/inc/undobj.hxx @@ -0,0 +1,1624 @@ +/************************************************************************* + * + * $RCSfile: undobj.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNDOBJ_HXX +#define _UNDOBJ_HXX + +#ifndef _SVMEMPOOL_HXX //autogen +#include +#endif +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_USHORTS +#define _SVSTDARR_ULONGS +#define _SVSTDARR_BOOLS +#define _SVSTDARR_BYTES +#define _SVSTDARR_USHORTSSORT +#include +#endif +#ifndef _SFXITEMSET_HXX //autogen +#include +#endif +#ifndef _NUMRULE_HXX +#include +#endif +#ifndef _REDLENUM_HXX +#include +#endif + +class SwUndoIter; +class SwHistory; + +class SwIndex; +class SwPaM; +struct SwPosition; +class SwDoc; +class SwNodes; +class SwFmt; +class SwFmtColl; +class SwTxtFmtColl; +class SwTxtNode; +class SwpHints; +class SwBookmark; +class SwTableNode; +class SwTable; +class SwTableBox; +struct SwSortOptions; +class SwFrmFmt; +class SwHstryBookmark; +class SwSection; +class SwSectionFmt; +class SvxTabStopItem; +class SwNumSection; +class SwDDEFieldType; +class Graphic; +class SwGrfNode; +class SwUndos; +class SwUndoRange; +class SwFtnInfo; +class SwEndNoteInfo; +class SwNodeIndex; +class SwNodeRange; + +struct SwUndoGroupObjImpl; +class SdrMarkList; +class SdrObject; +class SdrObjGroup; +class SdrUndoAction; +class SwDrawFrmFmt; +class _SaveTable; +class SwTableAutoFmt; +class SwSelBoxes; +class SwTableSortBoxes; +class SwUndoSaveSections; +class SwUndoMoves; +class SwStartNode; +class _SaveFlyArr; +class SwTblToTxtSaves; +class SwRedlineData; +class SwRedlineSaveData; +class SwRedline; + +#ifndef PRODUCT +class Writer; +class SwUndo; +#define OUT_UNDOBJ( name ) \ + friend Writer& OutUndo_ ## name( Writer&, const SwUndo& ); +#else +#define OUT_UNDOBJ( name ) +#endif + + +typedef SwRedlineSaveData* SwRedlineSaveDataPtr; +SV_DECL_PTRARR_DEL( SwRedlineSaveDatas, SwRedlineSaveDataPtr, 8, 8 ) + +class SwUndo +{ + USHORT nId; + USHORT nOrigRedlineMode; +protected: + void RemoveIdxFromSection( SwDoc&, ULONG nSttIdx, ULONG* pEndIdx = 0 ); + void RemoveIdxFromRange( SwPaM& rPam, BOOL bMoveNext ); + void RemoveIdxRel( ULONG, const SwPosition& ); + + void SetId( USHORT nNew ) { nId = nNew; } + + static BOOL CanRedlineGroup( SwRedlineSaveDatas& rCurr, + const SwRedlineSaveDatas& rCheck, + BOOL bCurrIsEnd ); +public: + SwUndo( USHORT nI ) { nId = nI; nOrigRedlineMode = REDLINE_NONE; } + virtual ~SwUndo(); + + USHORT GetId() const { return nId; } + virtual void Undo( SwUndoIter& ) = 0; + virtual void Redo( SwUndoIter& ) = 0; + virtual void Repeat( SwUndoIter& ); + + // das UndoObject merkt sich, welcher Mode eingeschaltet war. + // In Undo/Redo/Repeat wird dann immer auf diesen zurueck geschaltet + USHORT GetRedlineMode() const { return nOrigRedlineMode; } + void SetRedlineMode( USHORT eMode ) { nOrigRedlineMode = eMode; } + + // sicher und setze die RedlineDaten + static BOOL FillSaveData( const SwPaM& rRange, SwRedlineSaveDatas& rSData, + BOOL bDelRange = TRUE, BOOL bCopyNext = TRUE ); + static BOOL FillSaveDataForFmt( const SwPaM& , SwRedlineSaveDatas& ); + static void SetSaveData( SwDoc& rDoc, const SwRedlineSaveDatas& rSData ); + static BOOL HasHiddenRedlines( const SwRedlineSaveDatas& rSData ); +}; + + +// diese Klasse muss in ein Undo-Object vererbt werden, wenn dieses Inhalt +// fuers Redo/Undo ... speichert +class SwUndoSaveCntnt +{ +protected: + + SwHistory* pHistory; + + // wird fuer das loeschen von Inhalt benoetigt. Fuer das ReDo werden + // Inhalte in das UndoNodesArray verschoben. Diese Methoden fuegen + // am Ende eines TextNodes ein Trenner fuer die Attribute. Damit werden + // Attribute nicht expandiert. + // MoveTo.. verschiebt aus dem NodesArray in das UndoNodesArray + // MoveFrom.. verschiebt aus dem UndoNodesArray in das NodesArray + void MoveToUndoNds( SwPaM& rPam, + SwNodeIndex* pNodeIdx = 0, SwIndex* pCntIdx = 0, + ULONG* pEndNdIdx = 0, xub_StrLen * pEndCntIdx = 0 ); + void MoveFromUndoNds( SwDoc& rDoc, ULONG nNodeIdx, xub_StrLen nCntntIdx, + SwPosition& rInsPos, + ULONG* pEndNdIdx = 0, xub_StrLen * pEndCntIdx = 0 ); + + // diese beiden Methoden bewegen den SPoint vom Pam zurueck/vor. Damit + // kann fuer ein Undo/Redo ein Bereich aufgespannt werden. (Der + // SPoint liegt dann vor dem manipuliertem Bereich !!) + // Das Flag gibt an, ob noch vorm SPoint Inhalt steht. + BOOL MovePtBackward( SwPaM& rPam ); + void MovePtForward( SwPaM& rPam, BOOL bMvBkwrd ); + + // vor dem Move ins UndoNodes-Array muss dafuer gesorgt werden, das + // die Inhaltstragenden Attribute aus dem Nodes-Array entfernt werden. + enum DelCntntType{ DELCNT_FTN = 0x01, + DELCNT_FLY = 0x02, + DELCNT_TOC = 0x04, + DELCNT_BKM = 0x08, + DELCNT_ALL = 0x0F, + DELCNT_CHKNOCNTNT = 0x80 // nur den NodeIndex beachten + }; + void DelCntntIndex( const SwPosition& pMark, const SwPosition& pPoint, + DelCntntType nDelCntntType = DELCNT_ALL ); + +public: + SwUndoSaveCntnt(); + ~SwUndoSaveCntnt(); + OUT_UNDOBJ( SaveCntnt ) +}; + + +// sicher eine vollstaendige Section im Nodes-Array +class SwUndoSaveSection : private SwUndoSaveCntnt +{ + SwNodeIndex *pMvStt; + SwRedlineSaveDatas* pRedlSaveData; + ULONG nMvLen; // Index ins UndoNodes-Array + ULONG nStartPos; + +protected: + SwNodeIndex* GetMvSttIdx() const { return pMvStt; } + ULONG GetMvNodeCnt() const { return nMvLen; } + +public: + SwUndoSaveSection(); + ~SwUndoSaveSection(); + + void SaveSection( SwDoc* pDoc, const SwNodeIndex& rSttIdx ); + void SaveSection( SwDoc* pDoc, const SwNodeRange& rRange ); + void RestoreSection( SwDoc* pDoc, SwNodeIndex* pIdx, USHORT nSectType ); + void RestoreSection( SwDoc* pDoc, const SwNodeIndex& rInsPos ); + + const SwHistory* GetHistory() const { return pHistory; } + SwHistory* GetHistory() { return pHistory; } + OUT_UNDOBJ( SaveSection ) +}; + + +// Diese Klasse speichert den Pam als USHORT's und kann diese wieder zu +// einem PaM zusammensetzen +class SwUndRng +{ +public: + ULONG nSttNode, nEndNode; + xub_StrLen nSttCntnt, nEndCntnt; + + SwUndRng(); + SwUndRng( const SwPaM& ); + + void SetValues( const SwPaM& rPam ); + void SetPaM( SwPaM&, BOOL bCorrToCntnt = FALSE ) const; + void SetPaM( SwUndoIter&, BOOL bCorrToCntnt = FALSE ) const; +}; + + +class SwUndoStart: public SwUndo +{ + // Um innerhalb von Undo zuerkennen, wann ein Start vorliegt, gibt + // GetId() immer die UNDO_START zurueck. Die UserId kann ueber + // GetUserId() erfragt werden. + USHORT nUserId; + // fuer die "Verpointerung" von Start- und End-Undos + USHORT nEndOffset; +public: + SwUndoStart( USHORT nId ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + USHORT GetUserId() const { return nUserId; } + // Setzen vom End-Undo-Offset geschieht im Doc::EndUndo + USHORT GetEndOffset() const { return nEndOffset; } + void SetEndOffset( USHORT n ) { nEndOffset = n; } + OUT_UNDOBJ( Start ) +}; + +class SwUndoEnd: public SwUndo +{ + // Um innerhalb von Undo zuerkennen, wann ein Ende vorliegt, gibt + // GetId() immer die UNDO_END zurueck. Die UserId kann ueber + // GetUserId() erfragt werden. + USHORT nUserId; + // fuer die "Verpointerung" von Start- und End-Undos + USHORT nSttOffset; +public: + SwUndoEnd( USHORT nId ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + USHORT GetUserId() const { return nUserId; } + // Setzen vom Start-Undo-Offset geschieht im Doc::EndUndo + USHORT GetSttOffset() const { return nSttOffset; } + void SetSttOffset( USHORT n ) { nSttOffset = n; } + OUT_UNDOBJ( End ) +}; + +class SwUndoInsert: public SwUndo, private SwUndoSaveCntnt +{ + SwPosition *pPos; // Inhalt fuers Redo + String* pTxt; + SwRedlineData* pRedlData; + ULONG nNode; + xub_StrLen nCntnt, nLen; + BOOL bIsWordDelim : 1; + BOOL bIsAppend : 1; + + friend class SwDoc; // eigentlich nur SwDoc::Insert( String ) + BOOL CanGrouping( sal_Unicode cIns ); + BOOL CanGrouping( const SwPosition& rPos ); + +public: + SwUndoInsert( const SwNodeIndex& rNode, xub_StrLen nCntnt, xub_StrLen nLen, + BOOL bWDelim = TRUE ); + SwUndoInsert( const SwNodeIndex& rNode ); + virtual ~SwUndoInsert(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + BOOL CanGrouping( const SwPosition&, sal_Unicode cIns ); + OUT_UNDOBJ( Insert ) + + DECL_FIXEDMEMPOOL_NEWDEL(SwUndoInsert) +}; + + +class SwUndoDelete: public SwUndo, private SwUndRng, private SwUndoSaveCntnt +{ + SwNodeIndex* pMvStt; // Position der Nodes im UndoNodes-Array + String *pSttStr, *pEndStr; + SwRedlineData* pRedlData; + SwRedlineSaveDatas* pRedlSaveData; + + ULONG nNode; + ULONG nNdDiff; // Differenz von Nodes vor-nach Delete + ULONG nSectDiff; // Diff. von Nodes vor/nach Move mit SectionNodes + USHORT nSetPos; + + BOOL bGroup : 1; // TRUE: ist schon eine Gruppe; wird in CanGrouping() ausgwertet !! + BOOL bBackSp : 1; // TRUE: wenn Gruppierung und der Inhalt davor geloescht wird + BOOL bJoinNext: 1; // TRUE: wenn der Bereich von Oben nach unten geht + BOOL bSectNdFnd : 1; // TRUE: Sonderbehandlung fuer SectionNodes + BOOL bMvAroundSectNd :1;// TRUE: Sonderbehandlung fuer SectionNodes + BOOL bTblDelLastNd : 1; // TRUE: TextNode hinter der Tabelle einf./loeschen + BOOL bDelFullPara : 1; // TRUE: gesamte Nodes wurden geloescht + BOOL bResetPgDesc : 1; // TRUE: am nachfolgenden Node das PgDsc zuruecksetzen + BOOL bResetPgBrk : 1; // TRUE: am nachfolgenden Node das PgBreak zuruecksetzen + + BOOL SaveCntnt( const SwPosition* pStt, const SwPosition* pEnd, + SwTxtNode* pSttTxtNd, SwTxtNode* pEndTxtNd ); +public: + SwUndoDelete( SwPaM&, BOOL bFullPara = FALSE ); + virtual ~SwUndoDelete(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + BOOL CanGrouping( SwDoc*, const SwPaM& ); + + void SetTblDelLastNd() { bTblDelLastNd = TRUE; } + + // fuer die PageDesc/PageBreak Attribute einer Tabelle + void SetPgBrkFlags( BOOL bPageBreak, BOOL bPageDesc ) + { bResetPgDesc = bPageDesc; bResetPgBrk = bPageBreak; } + + OUT_UNDOBJ( Delete ) + + DECL_FIXEDMEMPOOL_NEWDEL(SwUndoDelete) +}; + + +class SwUndoOverwrite: public SwUndo, private SwUndoSaveCntnt +{ + String aDelStr, aInsStr; + SwRedlineSaveDatas* pRedlSaveData; + ULONG nSttNode; + xub_StrLen nSttCntnt; + BOOL bInsChar : 1; // kein Overwrite mehr; sondern Insert + BOOL bGroup : 1; // TRUE: ist schon eine Gruppe; wird in + // CanGrouping() ausgwertet !! +public: + SwUndoOverwrite( SwDoc*, SwPosition&, sal_Unicode cIns ); + virtual ~SwUndoOverwrite(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + BOOL CanGrouping( SwDoc*, SwPosition&, sal_Unicode cIns ); + OUT_UNDOBJ( Overwrite ) +}; + + +class SwUndoSplitNode: public SwUndo +{ + SwHistory* pHistory; + SwRedlineData* pRedlData; + ULONG nNode; + xub_StrLen nCntnt; + BOOL bTblFlag : 1; + BOOL bChkTblStt : 1; +public: + SwUndoSplitNode( SwDoc* pDoc, const SwPosition& rPos, BOOL bChkTbl ); + virtual ~SwUndoSplitNode(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + void SetTblFlag() { bTblFlag = TRUE; } + OUT_UNDOBJ( SplitNode ) +}; + + +class SwUndoMove : public SwUndo, private SwUndRng, private SwUndoSaveCntnt +{ + // nDest.. - Bereich, in den verschoben wurde (nach dem Move!) + // nIns.. - Position, von der verschoben wurde und wieder die neue InsPos. ist + // nMv.. Position auf die verschoben wird (vor dem Move!) ; fuers REDO + ULONG nDestSttNode, nDestEndNode, nInsPosNode, nMvDestNode; + xub_StrLen nDestSttCntnt, nDestEndCntnt, nInsPosCntnt, nMvDestCntnt; + + USHORT nFtnStt; // StartPos der Fussnoten in der History + + BOOL bJoinNext : 1, + bJoinPrev : 1, + bMoveRange : 1; + + void DelFtn( const SwPaM& ); +public: + SwUndoMove( const SwPaM&, const SwPosition& ); + SwUndoMove( SwDoc* pDoc, const SwNodeRange&, const SwNodeIndex& ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + // setze den Destination-Bereich nach dem Verschieben. + void SetDestRange( const SwPaM&, const SwPosition&, BOOL, BOOL ); + void SetDestRange( const SwNodeIndex& rStt, const SwNodeIndex& rEnd, + const SwNodeIndex& rInsPos ); + + BOOL IsMoveRange() const { return bMoveRange; } + ULONG GetEndNode() const { return nEndNode; } + ULONG GetDestSttNode() const { return nDestSttNode; } + xub_StrLen GetDestSttCntnt() const { return nDestSttCntnt; } + void AddTblMrgFlyHstry( SwHistory& rHstr ); + + OUT_UNDOBJ( Move ) +}; + + +class SwUndoAttr : public SwUndo, private SwUndRng +{ + SfxItemSet aSet; // Attribute fuers Redo + SwHistory* pHistory; // History fuers Undo + SwRedlineData* pRedlData; // Redlining + SwRedlineSaveDatas* pRedlSaveData; + ULONG nNdIdx; // fuers Redlining - Offset + USHORT nInsFlags; // Einfuege Flags + + void RemoveIdx( SwDoc& rDoc ); +public: + SwUndoAttr( const SwPaM&, const SfxItemSet&, USHORT nFlags = 0 ); + SwUndoAttr( const SwPaM&, const SfxPoolItem&, USHORT nFlags = 0 ); + virtual ~SwUndoAttr(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + SwHistory* GetHistory() { return pHistory; } + void SaveRedlineData( const SwPaM& rPam, BOOL bInsCntnt ); + + OUT_UNDOBJ( InsAttr ) +}; + +class SwUndoRstAttr : public SwUndo, private SwUndRng +{ + SwHistory* pHistory; + SvUShortsSort aIds; + USHORT nFmtId; // Format-Id fuer das Redo +public: + SwUndoRstAttr( const SwPaM&, USHORT nFmtId ); + SwUndoRstAttr( const SwDoc&, const SwPosition&, USHORT nWhichId ); + virtual ~SwUndoRstAttr(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + void SetAttrs( const SvUShortsSort& rArr ); + SwHistory* GetHistory() { return pHistory; } + OUT_UNDOBJ( ResetAttr ) +}; + + +class SwUndoFmtAttr : public SwUndo +{ + friend class SwUndoDefaultAttr; + SwFmt* pFmt; + SfxItemSet* pOldSet; // die alten Attribute + ULONG nNode; + USHORT nFmtWhich; + BOOL bSaveDrawPt; + + int IsFmtInDoc( SwDoc* ); // ist das Attribut-Format noch im Doc ? + void SaveFlyAnchor( BOOL bSaveDrawPt = FALSE ); + void RestoreFlyAnchor( SwUndoIter& rIter ); + void Init(); + +public: + // meldet sich im Format an und sichert sich die alten Attribute + SwUndoFmtAttr( const SfxItemSet& rOldSet, SwFmt& rFmt, + BOOL bSaveDrawPt = TRUE ); + SwUndoFmtAttr( const SfxPoolItem& rItem, SwFmt& rFmt, + BOOL bSaveDrawPt = TRUE ); + virtual ~SwUndoFmtAttr(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( InsFmtAttr ) + + void PutAttr( const SfxPoolItem& rItem ); + SwFmt* GetFmt( SwDoc& rDoc ); // prueft, ob es noch im Doc ist! +}; + +class SwUndoDontExpandFmt : public SwUndo +{ + ULONG nNode; + xub_StrLen nCntnt; +public: + SwUndoDontExpandFmt( const SwPosition& rPos ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); +}; + +// Hilfs-Klasse, um die geaenderten Sets zu "empfangen" +struct _UndoFmtAttr : public SwClient +{ + SwUndoFmtAttr* pUndo; + BOOL bSaveDrawPt; + + _UndoFmtAttr( SwFmt& rFmt, BOOL bSaveDrawPt = TRUE ); + virtual void Modify( SfxPoolItem*, SfxPoolItem* ); +}; + + +class SwUndoFmtColl : public SwUndo, private SwUndRng +{ + SwHistory* pHistory; + SwFmtColl* pFmtColl; +public: + SwUndoFmtColl( const SwPaM&, SwFmtColl* ); + virtual ~SwUndoFmtColl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + SwHistory* GetHistory() { return pHistory; } + OUT_UNDOBJ( SetFmtColl ) +}; + + +class SwUndoMoveLeftMargin : public SwUndo, private SwUndRng +{ + SwHistory* pHistory; + BOOL bModulus; +public: + SwUndoMoveLeftMargin( const SwPaM&, BOOL bRight, BOOL bModulus ); + virtual ~SwUndoMoveLeftMargin(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + SwHistory* GetHistory() { return pHistory; } + OUT_UNDOBJ( MoveLeftMargin ) +}; + +// Basis-Klasse fuer Insert von Dokument, Glossaries und Kopieren +class SwUndoInserts : public SwUndo, public SwUndRng, private SwUndoSaveCntnt +{ + SwTxtFmtColl *pTxtFmtColl, *pLastNdColl; + SvPtrarr* pFrmFmts; + SwUndos* pFlyUndos; + SwRedlineData* pRedlData; + BOOL bSttWasTxtNd; +protected: + ULONG nNdDiff; + SwPosition *pPos; // Inhalt fuers Redo + USHORT nSetPos; // Start in der History-Liste + + SwUndoInserts( USHORT nUndoId, const SwPaM& ); +public: + virtual ~SwUndoInserts(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + // setze den Destination-Bereich nach dem Einlesen. + void SetInsertRange( const SwPaM&, BOOL bScanFlys = TRUE, + BOOL bSttWasTxtNd = TRUE ); + OUT_UNDOBJ( Inserts ) +}; + +class SwUndoInsDoc : public SwUndoInserts +{ +public: + SwUndoInsDoc( const SwPaM& ); + OUT_UNDOBJ( InsDoc ) +}; + +class SwUndoCpyDoc : public SwUndoInserts +{ +public: + SwUndoCpyDoc( const SwPaM& ); + OUT_UNDOBJ( Copy ) +}; + +class SwUndoInsTbl : public SwUndo +{ + String sTblNm; + SwDDEFieldType* pDDEFldType; + SvUShorts* pColWidth; + SwRedlineData* pRedlData; + SwTableAutoFmt* pAutoFmt; + ULONG nSttNode; + USHORT nRows, nCols; + USHORT nAdjust; + USHORT nInsTblFlags; + +public: + SwUndoInsTbl( const SwPosition&, USHORT nCols, USHORT nRows, + USHORT eAdjust, USHORT nInsert, + const SwTableAutoFmt* pTAFmt, const SvUShorts* pColArr ); + virtual ~SwUndoInsTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( InsTable ) +}; + +class SwUndoTxtToTbl : public SwUndo, public SwUndRng +{ + String sTblNm; + SvULongs* pDelBoxes; + SwTableAutoFmt* pAutoFmt; + SwHistory* pHistory; + sal_Unicode cTrenner; + USHORT nAdjust; + USHORT nInsTblFlags; + BOOL bSplitEnd : 1; + +public: + SwUndoTxtToTbl( const SwPaM&, sal_Unicode , USHORT, USHORT nInsert, + const SwTableAutoFmt* pAFmt ); + virtual ~SwUndoTxtToTbl(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + SwHistory& GetHistory(); // wird ggfs. angelegt + void AddFillBox( const SwTableBox& rBox ); + OUT_UNDOBJ( TextToTable ) +}; + +class SwUndoTblToTxt : public SwUndo +{ + String sTblNm; + SwDDEFieldType* pDDEFldType; + _SaveTable* pTblSave; + SwTblToTxtSaves* pBoxSaves; + SwHistory* pHistory; + ULONG nSttNd, nEndNd; + USHORT nAdjust; + sal_Unicode cTrenner; + BOOL bCheckNumFmt : 1; + BOOL bHdlnRpt : 1; + +public: + SwUndoTblToTxt( const SwTable& rTbl, sal_Unicode cCh ); + virtual ~SwUndoTblToTxt(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + void SetRange( const SwNodeRange& ); + void AddBoxPos( SwDoc& rDoc, ULONG nNdIdx, + xub_StrLen nCntntIdx = STRING_MAXLEN); + OUT_UNDOBJ( TableToText ) +}; + +class SwUndoAttrTbl : public SwUndo +{ + ULONG nSttNode; + _SaveTable* pSaveTbl; + BOOL bClearTabCol : 1; +public: + SwUndoAttrTbl( const SwTableNode& rTblNd, BOOL bClearTabCols = FALSE ); + virtual ~SwUndoAttrTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( SetTableAttr ) +}; + +class SwUndoTblAutoFmt : public SwUndo +{ + ULONG nSttNode; + _SaveTable* pSaveTbl; + SwUndos* pUndos; + BOOL bSaveCntntAttr; + + void UndoRedo( BOOL bUndo, SwUndoIter& rUndoIter ); + +public: + SwUndoTblAutoFmt( const SwTableNode& rTblNd, const SwTableAutoFmt& ); + virtual ~SwUndoTblAutoFmt(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + void SaveBoxCntnt( const SwTableBox& rBox ); + OUT_UNDOBJ( TableAutoFmt ) +}; + +class SwUndoTblNdsChg : public SwUndo +{ + _SaveTable* pSaveTbl; + SvULongs aBoxes; + + union { + SvULongs* pNewSttNds; + SwUndoSaveSections* pDelSects; + } Ptrs; + SvBools aMvBoxes; // fuers SplitRow (aufgeteilte Nodes einer Box) + + ULONG nSttNode, nCurrBox; + USHORT nCount, nRelDiff, nAbsDiff, nSetColType; + BOOL bFlag; +public: + SwUndoTblNdsChg( USHORT UndoId, + const SwSelBoxes& rBoxes, + const SwTableNode& rTblNd, + USHORT nCnt, BOOL bFlg ); + + // fuer SetColWidth + SwUndoTblNdsChg( USHORT UndoId, const SwSelBoxes& rBoxes, + const SwTableNode& rTblNd ); + + virtual ~SwUndoTblNdsChg(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void SaveNewBoxes( const SwTableNode& rTblNd, const SwTableSortBoxes& rOld ); + void SaveNewBoxes( const SwTableNode& rTblNd, const SwTableSortBoxes& rOld, + const SwSelBoxes& rBoxes, const SvULongs& rNodeCnts ); + void SaveSection( SwStartNode* pSttNd ); + + void SetColWidthParam( ULONG nBoxIdx, USHORT nMode, USHORT nType, + SwTwips nAbsDif, SwTwips nRelDif ) + { + nCurrBox = nBoxIdx; + nCount = nMode; + nSetColType = nType; + nAbsDiff = (USHORT)nAbsDif; + nRelDiff = (USHORT)nRelDif; + } + OUT_UNDOBJ( TblNodesChg ) +}; + +class SwUndoTblMerge : public SwUndo, private SwUndRng +{ + ULONG nTblNode; + _SaveTable* pSaveTbl; + SvULongs aBoxes, aNewSttNds; + SwUndoMoves* pMoves; + SwHistory* pHistory; + +public: + SwUndoTblMerge( const SwPaM& rTblSel ); + virtual ~SwUndoTblMerge(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void MoveBoxCntnt( SwPaM& rPam, SwPosition& rPos, const _SaveFlyArr& ); + void MoveBoxCntnt( SwDoc* pDoc, SwNodeRange& rRg, SwNodeIndex& rPos ); + + void SetSelBoxes( const SwSelBoxes& rBoxes ); + + void AddNewBox( ULONG nSttNdIdx ) + { aNewSttNds.Insert( nSttNdIdx, aNewSttNds.Count() ); } + + void SaveCollection( const SwTableBox& rBox ); + + OUT_UNDOBJ( TblMerge ) +}; + + +class SwUndoTblNumFmt : public SwUndo +{ + SfxItemSet *pBoxSet; + SwHistory* pHistory; + String aStr, aNewFml; + + ULONG nFmtIdx, nNewFmtIdx; + double fNum, fNewNum; + ULONG nNode; + + BOOL bNewFmt : 1; + BOOL bNewFml : 1; + BOOL bNewValue : 1; + +public: + SwUndoTblNumFmt( const SwTableBox& rBox, const SfxItemSet* pNewSet = 0 ); + virtual ~SwUndoTblNumFmt(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void SetNumFmt( ULONG nNewFmtIdx, const double& rNewNumber ) + { nFmtIdx = nNewFmtIdx; fNum = rNewNumber; } + void SetBox( const SwTableBox& rBox ); + OUT_UNDOBJ( TblNumFmt ) +}; + +class _UndoTblCpyTbl_Entries; + +class SwUndoTblCpyTbl : public SwUndo +{ + _UndoTblCpyTbl_Entries* pArr; + SwUndoTblNdsChg* pInsRowUndo; +public: + SwUndoTblCpyTbl(); + virtual ~SwUndoTblCpyTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void AddBoxBefore( const SwTableBox& rBox, BOOL bDelCntnt ); + void AddBoxAfter( const SwTableBox& rBox, BOOL bDelCntnt ); + + BOOL IsEmpty() const; + BOOL InsertRow( SwTable& rTbl, const SwSelBoxes& rBoxes, USHORT nCnt ); + OUT_UNDOBJ( TblCpyTbl ) +}; + +class SwUndoCpyTbl : public SwUndo +{ + SwUndoDelete* pDel; + ULONG nTblNode; +public: + SwUndoCpyTbl(); + virtual ~SwUndoCpyTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void SetTableSttIdx( ULONG nIdx ) { nTblNode = nIdx; } + OUT_UNDOBJ( CpyTbl ) +}; + +class SwUndoSplitTbl : public SwUndo +{ + ULONG nTblNode, nOffset; + _SaveTable* pSavTbl; + SwHistory* pHistory; + USHORT nMode, nFmlEnd; + BOOL bCalcNewSize; +public: + SwUndoSplitTbl( const SwTableNode& rTblNd, USHORT nMode, BOOL bCalcNewSize ); + virtual ~SwUndoSplitTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + void SetTblNodeOffset( ULONG nIdx ) { nOffset = nIdx - nTblNode; } + SwHistory* GetHistory() { return pHistory; } + void SaveFormula( SwHistory& rHistory ); +}; + +class SwUndoMergeTbl : public SwUndo +{ + String aName; + ULONG nTblNode; + _SaveTable* pSavTbl, *pSavHdl; + SwHistory* pHistory; + USHORT nMode; + BOOL bWithPrev; +public: + SwUndoMergeTbl( const SwTableNode& rTblNd, const SwTableNode& rDelTblNd, + BOOL bWithPrev, USHORT nMode ); + virtual ~SwUndoMergeTbl(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + SwHistory* GetHistory() { return pHistory; } + void SaveFormula( SwHistory& rHistory ); +}; + + +class SwUndoBookmark : public SwUndo +{ + SwHstryBookmark* pHBookmark; +protected: + SwUndoBookmark( USHORT nUndoId, const SwBookmark& ); + + void SetInDoc( SwDoc* ); + void ResetInDoc( SwDoc* ); + +public: + virtual ~SwUndoBookmark(); +}; + + +class SwUndoDelBookmark : public SwUndoBookmark +{ +public: + SwUndoDelBookmark( const SwBookmark& ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( DelBookmark ) +}; + +class SwUndoInsBookmark : public SwUndoBookmark +{ +public: + SwUndoInsBookmark( const SwBookmark& ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( InsBookmark ) +}; + + +/*-------------------------------------------------------------------- + Beschreibung: Undo auf Sorting + --------------------------------------------------------------------*/ + +struct SwSortUndoElement +{ + union { + struct { + ULONG nKenn; + ULONG nSource, nTarget; + } TXT; + struct { + String *pSource, *pTarget; + } TBL; + } SORT_TXT_TBL; + + SwSortUndoElement( const String& aS, const String& aT ) + { + SORT_TXT_TBL.TBL.pSource = new String( aS ); + SORT_TXT_TBL.TBL.pTarget = new String( aT ); + } + SwSortUndoElement( ULONG nS, ULONG nT ) + { + SORT_TXT_TBL.TXT.nSource = nS; + SORT_TXT_TBL.TXT.nTarget = nT; + SORT_TXT_TBL.TXT.nKenn = 0xffffffff; + } + ~SwSortUndoElement(); +}; + +SV_DECL_PTRARR_DEL(SwSortList, SwSortUndoElement*, 10,30) +SV_DECL_PTRARR(SwUndoSortList, SwNodeIndex*, 10,30) + +class SwUndoSort : public SwUndo, private SwUndRng +{ + SwSortOptions* pSortOpt; // die Optionen mit den Sortier-Kriterien + SwSortList aSortList; + SwUndoAttrTbl* pUndoTblAttr; + SwRedlineData* pRedlData; + ULONG nTblNd; + + void RemoveIdx( SwPaM& rPam ); +public: + SwUndoSort( const SwPaM&, const SwSortOptions& ); + SwUndoSort( ULONG nStt, ULONG nEnd, const SwTableNode&, + const SwSortOptions&, BOOL bSaveTable ); + virtual ~SwUndoSort(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + void Insert( const String& rOrgPos, const String& rNewPos ); + void Insert( ULONG nOrgPos, ULONG nNewPos ); + + OUT_UNDOBJ( Sort ) +}; + + + +//-------------------------------------------------------------------- + +class SwUndoFlyBase : public SwUndo, private SwUndoSaveSection +{ +protected: + SwFrmFmt* pFrmFmt; // das gespeicherte FlyFormat + ULONG nNdPgPos; + xub_StrLen nCntPos; // Seite/am Absatz/im Absatz + USHORT nRndId; + BOOL bDelFmt; // loesche das gespeicherte Format + + void InsFly( SwUndoIter&, BOOL bShowSel = TRUE ); + void DelFly( SwDoc* ); + + SwUndoFlyBase( SwFrmFmt* pFormat, USHORT nUndoId ); + + SwNodeIndex* GetMvSttIdx() const { return SwUndoSaveSection::GetMvSttIdx(); } + ULONG GetMvNodeCnt() const { return SwUndoSaveSection::GetMvNodeCnt(); } + +public: + virtual ~SwUndoFlyBase(); + + virtual void Undo( SwUndoIter& ) = 0; + virtual void Redo( SwUndoIter& ) = 0; + OUT_UNDOBJ( FlyBase ) +}; + +class SwUndoInsLayFmt : public SwUndoFlyBase +{ +public: + SwUndoInsLayFmt( SwFrmFmt* pFormat ); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( InsLayFmt ) +}; + +class SwUndoDelLayFmt : public SwUndoFlyBase +{ + BOOL bShowSelFrm; +public: + SwUndoDelLayFmt( SwFrmFmt* pFormat ); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + void Redo(); // Schnittstelle fuers Rollback + + void ChgShowSel( BOOL bNew ) { bShowSelFrm = bNew; } + BOOL GetShowSel() const { return bShowSelFrm; } + OUT_UNDOBJ( DelLayFmt ) +}; + + +class SwUndoSetFlyFmt : public SwUndo, public SwClient +{ + SwFrmFmt* pFrmFmt; // das gespeicherte FlyFormat + SwFrmFmt* pOldFmt; // die alte Fly Vorlage + SwFrmFmt* pNewFmt; // die neue Fly Vorlage + SfxItemSet* pItemSet; // die zurueck-/ gesetzten Attribute + ULONG nOldNode, nNewNode; + xub_StrLen nOldCntnt, nNewCntnt; + USHORT nOldAnchorTyp, nNewAnchorTyp; + BOOL bAnchorChgd; + + void PutAttr( USHORT nWhich, const SfxPoolItem* pItem ); + void Modify( SfxPoolItem*, SfxPoolItem* ); + void GetAnchor( SwFmtAnchor& rAnhor, ULONG nNode, xub_StrLen nCntnt ); + +public: + SwUndoSetFlyFmt( SwFrmFmt& rFlyFmt, SwFrmFmt& rNewFrmFmt ); + virtual ~SwUndoSetFlyFmt(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); +}; + +//-------------------------------------------------------------------- + +class _UnReplaceData; +SV_DECL_PTRARR_DEL( _UnReplaceDatas, _UnReplaceData*, 10, 25 ); + +class SwUndoReplace : public SwUndo +{ + friend class SwDoc; + + BOOL bOldIterFlag; // Status vom Undo-Iter vorm 1. Aufruf + USHORT nAktPos; // fuer GetUndoRange und Undo/Redo + _UnReplaceDatas aArr; + SwRedlineData* pRedlData; + +public: + SwUndoReplace(); + virtual ~SwUndoReplace(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void AddEntry( const SwPaM& rPam, const String& rInsert, BOOL bRegExp ); + void SetEntryEnd( const SwPaM& rPam ); + + BOOL IsFull() const + { return ((USHRT_MAX / sizeof( void* )) - 50 ) < aArr.Count(); } + + OUT_UNDOBJ( Replace ) +}; + + +//-------------------------------------------------------------------- + + +class SwUndoTblHeadline : public SwUndo +{ + ULONG nTblNd; + BOOL bOldHeadline; +public: + SwUndoTblHeadline( const SwTable&, BOOL bOldHdl ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( SwUndoTblHeadline ) +}; + + +//------------ Undo von Insert-/Delete-Sections ---------------------- + +class SwUndoInsSection : public SwUndo, private SwUndRng +{ + SwHistory* pHistory; + SwSection* pSection; + SwRedlineData* pRedlData; + SfxItemSet* pAttr; + ULONG nSectNodePos; + BOOL bSplitAtStt : 1; + BOOL bSplitAtEnd : 1; + BOOL bUpdateFtn : 1; + + void Join( SwDoc& rDoc, ULONG nNode ); + +public: + SwUndoInsSection( const SwPaM&, const SwSection&, + const SfxItemSet* pSet ); + virtual ~SwUndoInsSection(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( SwUndoInsSection ) + + void SetSectNdPos( ULONG nPos ) { nSectNodePos = nPos; } + void SaveSplitNode( SwTxtNode* pTxtNd, BOOL bAtStt ); + void SetUpdtFtnFlag( BOOL bFlag ) { bUpdateFtn = bFlag; } +}; + +class SwUndoDelSection : public SwUndo +{ + ULONG nSttNd, nEndNd; + SwSection* pSection; + SfxItemSet* pAttr; +public: + SwUndoDelSection( const SwSectionFmt& ); + virtual ~SwUndoDelSection(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( SwUndoDelSection ) +}; + +class SwUndoChgSection : public SwUndo +{ + ULONG nSttNd; + SwSection* pSection; + SfxItemSet* pAttr; + BOOL bOnlyAttrChgd; +public: + SwUndoChgSection( const SwSectionFmt&, BOOL bOnlyAttrChgd ); + virtual ~SwUndoChgSection(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( SwUndoChgSection ) +}; + +class SwUndoChgSectPsswd : public SwUndo +{ + String sPasswd; +public: + SwUndoChgSectPsswd( const String& rOld ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( SwUndoChgSectPsswd ) +}; + +//------------ Undo von verschieben/stufen von Gliederung ---------------- + +class SwUndoOutlineLeftRight : public SwUndo, private SwUndRng +{ + short nOffset; +public: + SwUndoOutlineLeftRight( const SwPaM& rPam, short nOffset ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( SwUndoOutlineLeftRight ) +}; + +//-------------------------------------------------------------------- + +class SwUndoDefaultAttr : public SwUndo +{ + SfxItemSet* pOldSet; // die alten Attribute + SvxTabStopItem* pTabStop; +public: + // meldet sich im Format an und sichert sich die alten Attribute + SwUndoDefaultAttr( const SfxItemSet& rOldSet ); + virtual ~SwUndoDefaultAttr(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + OUT_UNDOBJ( DefaultAttr ) +}; + +//-------------------------------------------------------------------- +// ---------- Undo fuer Numerierung ---------------------------------- + +class SwUndoInsNum : public SwUndo, private SwUndRng +{ + SwNumRule aNumRule; + SwHistory* pHistory; + ULONG nSttSet; + SwNumRule* pOldNumRule; + String sReplaceRule; + USHORT nLRSavePos; +public: + SwUndoInsNum( const SwPaM& rPam, const SwNumRule& rRule ); + SwUndoInsNum( const SwNumRule& rOldRule, const SwNumRule& rNewRule ); + SwUndoInsNum( const SwPosition& rPos, const SwNumRule& rRule, + const String& rReplaceRule ); + virtual ~SwUndoInsNum(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + SwHistory* GetHistory(); // wird ggfs. neu angelegt! + void SetSttNum( ULONG nNdIdx ) { nSttSet = nNdIdx; } + void SaveOldNumRule( const SwNumRule& rOld ); + + void SetLRSpaceEndPos(); + + OUT_UNDOBJ( InsNum ) +}; + +class SwUndoDelNum : public SwUndo, private SwUndRng +{ + SvULongs aNodeIdx; + SvBytes aLevels; + SvBools aRstLRSpaces; + SwHistory* pHistory; +public: + SwUndoDelNum( const SwPaM& rPam ); + virtual ~SwUndoDelNum(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + void AddNode( const SwTxtNode& rNd, BOOL bResetLRSpace ); + SwHistory* GetHistory() { return pHistory; } + + OUT_UNDOBJ( DelNum ) +}; + +class SwUndoMoveNum : public SwUndo, private SwUndRng +{ + ULONG nNewStt; + long nOffset; +public: + SwUndoMoveNum( const SwPaM& rPam, long nOffset, BOOL bIsOutlMv = FALSE ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + void SetStartNode( ULONG nValue ) { nNewStt = nValue; } + OUT_UNDOBJ( MoveNum ) +}; + +class SwUndoNumUpDown : public SwUndo, private SwUndRng +{ + short nOffset; +public: + SwUndoNumUpDown( const SwPaM& rPam, short nOffset ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( NumUpDown ) +}; + +class SwUndoNumOrNoNum : public SwUndo +{ + ULONG nIdx; + BOOL bDel : 1; + BOOL bOutline : 1; +public: + SwUndoNumOrNoNum( const SwNodeIndex& rIdx, BOOL bDelete, BOOL bOutline ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( NumOrNoNum ) +}; + +class SwUndoNumRuleStart : public SwUndo +{ + ULONG nIdx; + USHORT nOldStt, nNewStt; + BOOL bSetSttValue : 1; + BOOL bFlag : 1; +public: + SwUndoNumRuleStart( const SwPosition& rPos, BOOL bDelete ); + SwUndoNumRuleStart( const SwPosition& rPos, USHORT nStt ); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + OUT_UNDOBJ( NumRuleStart ) +}; + +//-------------------------------------------------------------------- +// ---------- Undo fuer DrawObjecte ---------------------------------- + +class SwSdrUndo : public SwUndo +{ + SdrUndoAction* pSdrUndo; + SdrMarkList* pMarkList; // MarkList for all selected SdrObjects +public: + SwSdrUndo( SdrUndoAction* , const SdrMarkList* pMarkList ); + virtual ~SwSdrUndo(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + String GetComment() const; +}; + +class SwUndoDrawGroup : public SwUndo +{ + SwUndoGroupObjImpl* pObjArr; + USHORT nSize; + BOOL bDelFmt; + +public: + SwUndoDrawGroup( USHORT nCnt ); + virtual ~SwUndoDrawGroup(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void AddObj( USHORT nPos, SwDrawFrmFmt*, SdrObject* ); + void SetGroupFmt( SwDrawFrmFmt* ); +}; + +class SwUndoDrawUnGroup : public SwUndo +{ + SwUndoGroupObjImpl* pObjArr; + USHORT nSize; + BOOL bDelFmt; + +public: + SwUndoDrawUnGroup( SdrObjGroup* ); + virtual ~SwUndoDrawUnGroup(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void AddObj( USHORT nPos, SwDrawFrmFmt* ); +}; + +class SwUndoDrawDelete : public SwUndo +{ + SwUndoGroupObjImpl* pObjArr; + USHORT nSize; + BOOL bDelFmt; + +public: + SwUndoDrawDelete( USHORT nCnt ); + virtual ~SwUndoDrawDelete(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + void AddObj( USHORT nPos, SwDrawFrmFmt*, SdrObject* ); +}; + +//-------------------------------------------------------------------- + +class SwUndoReRead : public SwUndo +{ + Graphic *pGrf; + String *pNm, *pFltr; + ULONG nPos; + USHORT nMirr; + + void SaveGraphicData( const SwGrfNode& ); + void SetAndSave( SwUndoIter& ); + +public: + SwUndoReRead( const SwPaM& rPam, const SwGrfNode& pGrfNd ); + virtual ~SwUndoReRead(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); +}; + +//-------------------------------------------------------------------- + +class SwUndoInsertLabel : public SwUndo +{ + union { + struct { + // fuer NoTxtFrms + SwUndoInsLayFmt* pUndoFly; + SwUndoFmtAttr* pUndoAttr; + } OBJECT; + struct { + // fuer Tabelle/TextRahmen + SwUndoDelete* pUndoInsNd; + ULONG nNode; + } NODE; + }; + + String sText; + Point aPos; // fuer Zeichen-Objekte + USHORT nFldId; + SwLabelType eType; + BYTE nLayerId; // fuer Zeichen-Objekte + BOOL bBefore :1; + BOOL bUndoKeep :1; + BOOL bCpyBrd :1; + +public: + SwUndoInsertLabel( const SwLabelType eTyp, const String &rText, + const BOOL bBefore, const USHORT nId, + const BOOL bCpyBrd ); + virtual ~SwUndoInsertLabel(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + void SetNodePos( ULONG nNd ) + { if( LTYPE_OBJECT != eType ) NODE.nNode = nNd; } + + void SetUndoKeep() { bUndoKeep = TRUE; } + void SetFlys( SwFrmFmt& rOldFly, SfxItemSet& rChgSet, SwFrmFmt& rNewFly ); + void SetDrawObj( const Point& rPos, BYTE nLayerId ); +}; + +//-------------------------------------------------------------------- + +class SwUndoChgFtn : public SwUndo, private SwUndRng +{ + SwHistory* pHistory; + String sTxt; + USHORT nNo; + BOOL bEndNote; +public: + SwUndoChgFtn( const SwPaM& rRange, const String& rTxt, + USHORT nNum, BOOL bIsEndNote ); + virtual ~SwUndoChgFtn(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + virtual void Repeat( SwUndoIter& ); + + SwHistory* GetHistory() { return pHistory; } +}; + +class SwUndoFtnInfo : public SwUndo +{ + SwFtnInfo *pFtnInfo; + +public: + SwUndoFtnInfo( const SwFtnInfo &rInfo ); + virtual ~SwUndoFtnInfo(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); +}; + +class SwUndoEndNoteInfo : public SwUndo +{ + SwEndNoteInfo *pEndNoteInfo; + +public: + SwUndoEndNoteInfo( const SwEndNoteInfo &rInfo ); + virtual ~SwUndoEndNoteInfo(); + + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); +}; + + +//-------------------------------------------------------------------- + +class SwUndoRedline : public SwUndo, public SwUndRng +{ +protected: + SwRedlineData* pRedlData; + SwRedlineSaveDatas* pRedlSaveData; + USHORT nUserId; + BOOL bHiddenRedlines; + + virtual void _Undo( SwUndoIter& ); + virtual void _Redo( SwUndoIter& ); + +public: + SwUndoRedline( USHORT nUserId, const SwPaM& rRange ); + virtual ~SwUndoRedline(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); + + USHORT GetUserId() const { return nUserId; } + USHORT GetRedlSaveCount() const + { return pRedlSaveData ? pRedlSaveData->Count() : 0; } +}; + +class SwUndoRedlineDelete : public SwUndoRedline +{ + BOOL bCanGroup : 1; + BOOL bIsDelim : 1; + BOOL bIsBackspace : 1; + + virtual void _Undo( SwUndoIter& ); + virtual void _Redo( SwUndoIter& ); + +public: + SwUndoRedlineDelete( const SwPaM& rRange, USHORT nUserId = 0 ); + + BOOL CanGrouping( const SwUndoRedlineDelete& rPrev ); +}; + +class SwUndoRedlineSort : public SwUndoRedline +{ + SwSortOptions* pOpt; + ULONG nSaveEndNode, nOffset; + xub_StrLen nSaveEndCntnt; + + virtual void _Undo( SwUndoIter& ); + virtual void _Redo( SwUndoIter& ); + +public: + SwUndoRedlineSort( const SwPaM& rRange, const SwSortOptions& rOpt ); + virtual ~SwUndoRedlineSort(); + virtual void Repeat( SwUndoIter& ); + + void SetSaveRange( const SwPaM& rRange ); + void SetOffset( const SwNodeIndex& rIdx ); +}; + +class SwUndoAcceptRedline : public SwUndoRedline +{ + virtual void _Redo( SwUndoIter& ); +public: + SwUndoAcceptRedline( const SwPaM& rRange ); + virtual void Repeat( SwUndoIter& ); +}; + +class SwUndoRejectRedline : public SwUndoRedline +{ + virtual void _Redo( SwUndoIter& ); +public: + SwUndoRejectRedline( const SwPaM& rRange ); + virtual void Repeat( SwUndoIter& ); +}; + +//-------------------------------------------------------------------- + +class SwUndoCompDoc : public SwUndo, public SwUndRng +{ + SwRedlineData* pRedlData; + SwUndoDelete* pUnDel; + SwRedlineSaveDatas* pRedlSaveData; + BOOL bInsert; +public: + SwUndoCompDoc( const SwPaM& rRg, BOOL bIns ); + SwUndoCompDoc( const SwRedline& rRedl ); + + virtual ~SwUndoCompDoc(); + virtual void Undo( SwUndoIter& ); + virtual void Redo( SwUndoIter& ); +}; + + +//-------------------------------------------------------------------- + +// Object der als Iterator durch die Undo-Liste laeuft, bis die +// letze oder die angegebene Klammerung/Id erreicht ist. + +class SwUndoIter +{ + friend class SwDoc; // um im SwDoc::Undo bWeiter zu stezen + friend void SwUndoEnd::Undo( SwUndoIter& ); + friend void SwUndoStart::Undo( SwUndoIter& ); + friend void SwUndoEnd::Redo( SwUndoIter& ); + friend void SwUndoStart::Redo( SwUndoIter& ); + friend void SwUndoEnd::Repeat( SwUndoIter& ); + friend void SwUndoStart::Repeat( SwUndoIter& ); + friend void SwUndoReplace::Undo( SwUndoIter& ); + friend void SwUndoReplace::Redo( SwUndoIter& ); + + USHORT nUndoId; + USHORT nEndCnt; + BOOL bWeiter : 1; + BOOL bUpdateAttr : 1; // Setze das GCAttr an der CursorShell + +public: + SwPaM * pAktPam; // Member fuer das Undo + SwUndo* pLastUndoObj; // fuers Redo, das vorherige UndoObj. + SwFrmFmt* pSelFmt; // ggfs. das Format Rahmen/Object-Selektionen + SdrMarkList* pMarkList; // MarkList for all selected SdrObjects + + SwUndoIter( SwPaM * pPam, USHORT nId = 0 ); + + BOOL IsNextUndo() const { return bWeiter; } + BOOL IsUpdateAttr() const { return bUpdateAttr; } + void SetUpdateAttr( BOOL bNew ) { bUpdateAttr = bNew; } + + inline SwDoc& GetDoc() const; + USHORT GetId() const { return nUndoId; } + USHORT GetLastUndoId() const + { return pLastUndoObj ? pLastUndoObj->GetId() : 0 ; } + void ClearSelections() { pSelFmt = 0; pMarkList = 0; } +}; + + + + +#endif diff --git a/sw/inc/unoatxt.hxx b/sw/inc/unoatxt.hxx new file mode 100644 index 000000000000..dd68f25c0e37 --- /dev/null +++ b/sw/inc/unoatxt.hxx @@ -0,0 +1,277 @@ +/************************************************************************* + * + * $RCSfile: unoatxt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOATXT_HXX +#define _UNOATXT_HXX + +#ifndef _COM_SUN_STAR_TEXT_XAUTOTEXTGROUP_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XAUTOTEXTENTRY_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XAUTOTEXTCONTAINER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXT_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XNAMED_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XINDEXACCESS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ +#include +#endif +#ifndef _SFX_ITEMPROP_HXX +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE3_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif + +#ifndef _CPPUHELPER_IMPLBASE6_HXX_ +#include // helper for implementations +#endif + + +class SwTextBlocks; +class SwGlossaries; +class SwDoc; +/****************************************************************************** + * + ******************************************************************************/ +::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > + SAL_CALL SwXAutoTextContainer_CreateInstance( + const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & ); + +class SwXAutoTextContainer : public cppu::WeakImplHelper3 +< + ::com::sun::star::text::XAutoTextContainer, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XIndexAccess +> +{ + SwGlossaries *pGlossaries; +public: + SwXAutoTextContainer(); + virtual ~SwXAutoTextContainer(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XAutoTextContainer + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XAutoTextGroup > SAL_CALL insertNewByName(const rtl::OUString& aGroupName) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::ElementExistException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeByName(const rtl::OUString& aGroupName) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; + +/* -----------------26.05.98 15:55------------------- + * + * --------------------------------------------------*/ +class SwXAutoTextGroup : public cppu::WeakImplHelper6 +< + ::com::sun::star::text::XAutoTextGroup, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::container::XNamed, + ::com::sun::star::lang::XUnoTunnel +> +{ + SfxItemPropertySet aPropSet; + SwGlossaries* pGlossaries; + rtl::OUString sName; + String sGroupName; + +public: + SwXAutoTextGroup(const rtl::OUString& rName, SwGlossaries* pGloss/*SwTextBlocks* pGroup*/); + virtual ~SwXAutoTextGroup(); + + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XAutoTextGroup + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getTitles(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL renameByName(const rtl::OUString& aElementName, const rtl::OUString& aNewElementName, const rtl::OUString& aNewElementTitle) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::ElementExistException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XAutoTextEntry > SAL_CALL insertNewByName(const rtl::OUString& aName, const rtl::OUString& aTitle, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::container::ElementExistException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeByName(const rtl::OUString& aEntryName) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException ); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + // + void Invalidate(); +}; + +/* -----------------17.06.98 12:03------------------- + * + * --------------------------------------------------*/ +class SwXAutoTextEntry : public cppu::WeakImplHelper4 +< + ::com::sun::star::text::XAutoTextEntry, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::text::XText +> +{ + SwGlossaries* pGlossaries; + String sGroupName; + String sEntryName; + +public: + SwXAutoTextEntry(SwGlossaries* , const String& rGroupName, const String& rEntryName); + virtual ~SwXAutoTextEntry(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL insertString(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, const rtl::OUString& aString, BOOL bAbsorb) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL insertControlCharacter(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, sal_Int16 nControlCharacter, BOOL bAbsorb) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL insertTextContent(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > & xContent, BOOL bAbsorb) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeTextContent(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > & xContent) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XAutoTextEntry + virtual void SAL_CALL applyTo(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange)throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void Invalidate() {pGlossaries = 0;} + const String& GetGroupName() {return sGroupName;} + const String& GetEntryName() {return sEntryName;} + +}; +#endif + + diff --git a/sw/inc/unocoll.hxx b/sw/inc/unocoll.hxx new file mode 100644 index 000000000000..7a2ccd198197 --- /dev/null +++ b/sw/inc/unocoll.hxx @@ -0,0 +1,562 @@ +/************************************************************************* + * + * $RCSfile: unocoll.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOCOLL_HXX +#define _UNOCOLL_HXX + +#ifndef _SOLAR_H +#include +#endif +#ifndef _FLYENUM_HXX //autogen +#include +#endif +#ifndef _SV_TIMER_HXX +#include +#endif +#ifndef _COM_SUN_STAR_UTIL_XPROTECTABLE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XNAMEACCESS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XINDEXACCESS_HPP_ +#include +#endif +#ifndef _STRING_HXX +#include +#endif + +#ifndef _CPPUHELPER_IMPLBASE2_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE3_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif +/*************************************************** + *************************************************** + * + ***************************************************/ +class SwDoc; +class SwFrmFmt; +namespace com{namespace sun {namespace star {namespace text +{ + class XTextTable; + class XTextSection; + class XFootnote; +}}}} +class SwXFrame; +class SwFrmFmt; +class SwFmtFtn; +class XBookmark; +class SwXReferenceMark; +class SwSectionFmt; +class SwBookmark; +class SwFmtRefMark; +class SwXReferenceMark; +class SwXBookmark; +/*-----------------11.03.98 11:19------------------- + +--------------------------------------------------*/ +class SwUnoCollection +{ + sal_Bool bObjectValid; + SwDoc* pDoc; + + public: + SwUnoCollection(SwDoc* p) : + pDoc(p), + bObjectValid(sal_True){} + + virtual void Invalidate(); + sal_Bool IsValid() const {return bObjectValid;} + + + SwDoc* GetDoc() const {return pDoc;} +}; + +/****************************************************************************** + * + ******************************************************************************/ +#define SW_SERVICE_TYPE_TEXTTABLE 0 // +#define SW_SERVICE_TYPE_TEXTFRAME 1 // +#define SW_SERVICE_TYPE_GRAPHIC 2 +#define SW_SERVICE_TYPE_OLE 3 +#define SW_SERVICE_TYPE_BOOKMARK 4 +#define SW_SERVICE_TYPE_FOOTNOTE 5 +#define SW_SERVICE_TYPE_ENDNOTE 6 +#define SW_SERVICE_TYPE_INDEXMARK 7 // Stichwortverzeichniseintrag +#define SW_SERVICE_TYPE_INDEX 8 // Stichwortverzeichnis +#define SW_SERVICE_REFERENCE_MARK 9 +#define SW_SERVICE_STYLE_CHARACTER_STYLE 10 +#define SW_SERVICE_STYLE_PARAGRAPH_STYLE 11 +#define SW_SERVICE_STYLE_FRAME_STYLE 12 +#define SW_SERVICE_STYLE_PAGE_STYLE 13 +#define SW_SERVICE_STYLE_NUMBERING_STYLE 14 +#define SW_SERVICE_CONTENT_INDEX_MARK 15 +#define SW_SERVICE_CONTENT_INDEX 16 +#define SW_SERVICE_USER_INDEX_MARK 17 +#define SW_SERVICE_USER_INDEX 18 +#define SW_SERVICE_TEXT_SECTION 19 +#define SW_SERVICE_FIELDTYPE_DATETIME 20 +#define SW_SERVICE_FIELDTYPE_USER 21 +#define SW_SERVICE_FIELDTYPE_SET_EXP 22 +#define SW_SERVICE_FIELDTYPE_GET_EXP 23 +#define SW_SERVICE_FIELDTYPE_FILE_NAME 24 +#define SW_SERVICE_FIELDTYPE_PAGE_NUM 25 +#define SW_SERVICE_FIELDTYPE_AUTHOR 26 +#define SW_SERVICE_FIELDTYPE_CHAPTER 27 +#define SW_SERVICE_FIELDTYPE_DUMMY_0 28 +#define SW_SERVICE_FIELDTYPE_GET_REFERENCE 29 +#define SW_SERVICE_FIELDTYPE_CONDITIONED_TEXT 30 +#define SW_SERVICE_FIELDTYPE_ANNOTATION 31 +#define SW_SERVICE_FIELDTYPE_INPUT 32 +#define SW_SERVICE_FIELDTYPE_MACRO 33 +#define SW_SERVICE_FIELDTYPE_DDE 34 +#define SW_SERVICE_FIELDTYPE_HIDDEN_PARA 35 +#define SW_SERVICE_FIELDTYPE_DOC_INFO 36 +#define SW_SERVICE_FIELDTYPE_TEMPLATE_NAME 37 +#define SW_SERVICE_FIELDTYPE_USER_EXT 38 +#define SW_SERVICE_FIELDTYPE_REF_PAGE_SET 39 +#define SW_SERVICE_FIELDTYPE_REF_PAGE_GET 40 +#define SW_SERVICE_FIELDTYPE_JUMP_EDIT 41 +#define SW_SERVICE_FIELDTYPE_SCRIPT 42 +#define SW_SERVICE_FIELDTYPE_DATABASE_NEXT_SET 43 +#define SW_SERVICE_FIELDTYPE_DATABASE_NUM_SET 44 +#define SW_SERVICE_FIELDTYPE_DATABASE_SET_NUM 45 +#define SW_SERVICE_FIELDTYPE_DATABASE 46 +#define SW_SERVICE_FIELDTYPE_DATABASE_NAME 47 +#define SW_SERVICE_FIELDTYPE_TABLEFIELD 48 +#define SW_SERVICE_FIELDTYPE_PAGE_COUNT 49 +#define SW_SERVICE_FIELDTYPE_PARAGRAPH_COUNT 50 +#define SW_SERVICE_FIELDTYPE_WORD_COUNT 51 +#define SW_SERVICE_FIELDTYPE_CHARACTER_COUNT 52 +#define SW_SERVICE_FIELDTYPE_TABLE_COUNT 53 +#define SW_SERVICE_FIELDTYPE_GRAPHIC_OBJECT_COUNT 54 +#define SW_SERVICE_FIELDTYPE_EMBEDDED_OBJECT_COUNT 55 +#define SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_AUTHOR 56 +#define SW_SERVICE_FIELDTYPE_DOCINFO_CHANGE_DATE_TIME 57 +#define SW_SERVICE_FIELDTYPE_DOCINFO_EDIT_TIME 58 +#define SW_SERVICE_FIELDTYPE_DOCINFO_DESCRIPTION 59 +#define SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_AUTHOR 60 +#define SW_SERVICE_FIELDTYPE_DOCINFO_CREATE_DATE_TIME 61 +#define SW_SERVICE_FIELDTYPE_DOCINFO_INFO_0 62 +#define SW_SERVICE_FIELDTYPE_DOCINFO_INFO_1 63 +#define SW_SERVICE_FIELDTYPE_DOCINFO_INFO_2 64 +#define SW_SERVICE_FIELDTYPE_DOCINFO_INFO_3 65 +#define SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_AUTHOR 66 +#define SW_SERVICE_FIELDTYPE_DOCINFO_PRINT_DATE_TIME 67 +#define SW_SERVICE_FIELDTYPE_DOCINFO_KEY_WORDS 68 +#define SW_SERVICE_FIELDTYPE_DOCINFO_SUBJECT 69 +#define SW_SERVICE_FIELDTYPE_DOCINFO_TITLE 70 +#define SW_SERVICE_FIELDTYPE_DOCINFO_REVISION 71 +#define SW_SERVICE_FIELDTYPE_DUMMY_1 72 +#define SW_SERVICE_FIELDTYPE_DUMMY_2 73 +#define SW_SERVICE_FIELDTYPE_DUMMY_3 74 +#define SW_SERVICE_FIELDTYPE_DUMMY_4 75 +#define SW_SERVICE_FIELDTYPE_DUMMY_5 76 +#define SW_SERVICE_FIELDTYPE_DUMMY_6 77 +#define SW_SERVICE_FIELDTYPE_DUMMY_7 78 +#define SW_SERVICE_FIELDTYPE_DUMMY_8 79 +#define SW_SERVICE_FIELDMASTER_USER 80 +#define SW_SERVICE_FIELDMASTER_DDE 81 +#define SW_SERVICE_FIELDMASTER_SET_EXP 82 +#define SW_SERVICE_FIELDMASTER_DATABASE 83 +#define SW_SERVICE_FIELDMASTER_DUMMY1 84 +#define SW_SERVICE_FIELDMASTER_DUMMY2 85 +#define SW_SERVICE_FIELDMASTER_DUMMY3 86 +#define SW_SERVICE_FIELDMASTER_DUMMY4 87 +#define SW_SERVICE_FIELDMASTER_DUMMY5 88 +#define SW_SERVICE_INDEX_ILLUSTRATIONS 89 +#define SW_SERVICE_INDEX_OBJECTS 90 +#define SW_SERVICE_INDEX_TABLES 91 +#define SW_SERVICE_INDEX_BIBLIOGRAPHY 92 +#define SW_SERVICE_PARAGRAPH 93 +#define SW_SERVICE_FIELDTYPE_INPUT_USER 94 +#define SW_SERVICE_FIELDTYPE_HIDDEN_TEXT 95 +#define SW_SERVICE_STYLE_CONDITIONAL_PARAGRAPH_STYLE 96 +#define SW_SERVICE_NUMBERING_RULES 97 + +#define SW_SERVICE_LAST SW_SERVICE_NUMBERING_RULES + + +#define SW_SERVICE_INVALID USHRT_MAX + +class SwXServiceProvider +{ +public: + static rtl::OUString GetProviderName(sal_uInt16 nObjectType); + static sal_uInt16 GetProviderType(const rtl::OUString& rServiceName); + static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > MakeInstance(sal_uInt16 nObjectType, SwDoc* pDoc); + static ::com::sun::star::uno::Sequence GetAllServiceNames(); + +}; +/*-----------------11.12.97 09:38------------------- + +--------------------------------------------------*/ +typedef +cppu::WeakImplHelper3 +< + ::com::sun::star::container::XNameAccess, + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::lang::XServiceInfo +> +SwCollectionBaseClass; +class SwXTextTables : public SwCollectionBaseClass, + public SwUnoCollection +{ +public: + SwXTextTables(SwDoc* pDoc); + virtual ~SwXTextTables(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static ::com::sun::star::text::XTextTable* GetObject( SwFrmFmt& rFmt ); +}; + +/*-----------------11.12.97 10:14------------------- + +--------------------------------------------------*/ +class SwXFrames : public SwCollectionBaseClass, + public SwUnoCollection +{ + const FlyCntType eType; +protected: + + SwXFrame* GetFrmByName( const String& rName ); + SwXFrame* GetFrmByIndex( sal_Int32 nIndex ); + + void RemoveFrame(const rtl::OUString& rName, FlyCntType eType); + +public: + SwXFrames(SwDoc* pDoc, FlyCntType eSet); + virtual ~SwXFrames(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + FlyCntType GetType()const{return eType;} + static SwXFrame* GetObject( SwFrmFmt& rFmt, FlyCntType eType ); + +}; + +/*-----------------20.02.98 10:51------------------- + +--------------------------------------------------*/ +class SwXTextFrames : public SwXFrames +{ +public: + SwXTextFrames(SwDoc* pDoc); + virtual ~SwXTextFrames(); + +// SMART_UNO_DECLARATION( SwXTextFrames, UsrObject ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +/*-----------------20.02.98 10:55------------------- + +--------------------------------------------------*/ +class SwXTextGraphicObjects : public SwXFrames +{ +public: + SwXTextGraphicObjects(SwDoc* pDoc); + virtual ~SwXTextGraphicObjects(); + +// SMART_UNO_DECLARATION( SwXTextGraphicObjects, UsrObject ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +/*-----------------20.02.98 10:57------------------- + +--------------------------------------------------*/ +class SwXTextEmbeddedObjects : public SwXFrames +{ + +public: + SwXTextEmbeddedObjects(SwDoc* pDoc); + virtual ~SwXTextEmbeddedObjects(); + +// SMART_UNO_DECLARATION( SwXTextEmbeddedObjects, UsrObject ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +/*-----------------12.02.98 07:58------------------- + +--------------------------------------------------*/ +class SwXTextSections : public cppu::WeakImplHelper4 +< + ::com::sun::star::container::XNameAccess, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::util::XProtectable +>, + public SwUnoCollection +{ + Timer aWrongPasswdTimer; + sal_uInt16 nWrongPasswd; + DECL_LINK(WrongPasswordTimerHdl, Timer*); +public: + SwXTextSections(SwDoc* pDoc); + virtual ~SwXTextSections(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XProtectable + virtual void SAL_CALL protect(const rtl::OUString& aPassword) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL unprotect(const rtl::OUString& aPassword) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL isProtected(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static ::com::sun::star::text::XTextSection* GetObject( SwSectionFmt& rFmt ); +}; +/*-----------------12.02.98 07:51------------------- + +--------------------------------------------------*/ +class SwXBookmarks : public SwCollectionBaseClass, + public SwUnoCollection +{ +public: + SwXBookmarks(SwDoc* pDoc); + virtual ~SwXBookmarks(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static SwXBookmark* GetObject( SwBookmark& rBkm, SwDoc* pDoc ); +}; + +/*-----------------12.02.98 08:01------------------- + +--------------------------------------------------*/ +typedef +cppu::WeakImplHelper2 +< + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::lang::XServiceInfo +> +SwSimpleIndexAccessBaseClass; +class SwXFootnotes : public SwSimpleIndexAccessBaseClass, + public SwUnoCollection +{ + sal_Bool bEndnote; + +public: + SwXFootnotes(sal_Bool bEnd, SwDoc* pDoc); + virtual ~SwXFootnotes(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static ::com::sun::star::uno::Reference< ::com::sun::star::text::XFootnote> GetObject( SwDoc& rDoc, const SwFmtFtn& rFmt ); +}; + +/* -----------------27.08.98 13:10------------------- + * + * --------------------------------------------------*/ +class SwXReferenceMarks : public SwCollectionBaseClass, + public SwUnoCollection +{ +public: + SwXReferenceMarks(SwDoc* pDoc); + virtual ~SwXReferenceMarks(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static SwXReferenceMark* GetObject( SwDoc* pDoc, const SwFmtRefMark* pMark ); +}; + +/* -----------------01.09.98 14:06------------------- + * + * --------------------------------------------------*/ +class SwXRedlines : public SwSimpleIndexAccessBaseClass, + public SwUnoCollection +{ +public: + SwXRedlines(SwDoc* pDoc); + virtual ~SwXRedlines(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; +#endif + + + + + + diff --git a/sw/inc/unocrsr.hxx b/sw/inc/unocrsr.hxx new file mode 100644 index 000000000000..558d6644e98e --- /dev/null +++ b/sw/inc/unocrsr.hxx @@ -0,0 +1,124 @@ +/************************************************************************* + * + * $RCSfile: unocrsr.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOCRSR_HXX +#define _UNOCRSR_HXX + +#include "swcrsr.hxx" +#include "calbck.hxx" + + +class SwUnoCrsr : public virtual SwCursor, public SwModify +{ + BOOL bRemainInSection; +public: + SwUnoCrsr( const SwPosition &rPos, SwPaM* pRing = 0 ); + SwUnoCrsr( SwUnoCrsr& ); + virtual ~SwUnoCrsr(); + + virtual operator SwUnoCrsr* (); + +// virtual SwCursor* Create( SwPaM* pRing = 0 ) const; + + // gibt es eine Selection vom Content in die Tabelle + // Return Wert gibt an, ob der Crsr auf der alten Position verbleibt + virtual FASTBOOL IsSelOvr( int eFlags = + ( SELOVER_CHECKNODESSECTION | + SELOVER_TOGGLE | SELOVER_CHANGEPOS )); + + BOOL IsRemainInSection() const { return bRemainInSection; } + void SetRemainInSection( BOOL bFlag ) { bRemainInSection = bFlag; } + + DECL_FIXEDMEMPOOL_NEWDEL( SwUnoCrsr ) +}; + + + +class SwUnoTableCrsr : public virtual SwUnoCrsr, public virtual SwTableCursor +{ + // die Selection hat die gleiche Reihenfolge wie die + // TabellenBoxen. D.h., wird aus dem einen Array an einer Position + // etwas geloescht, dann muss es auch im anderen erfolgen!! + SwCursor aTblSel; + +public: + SwUnoTableCrsr( const SwPosition& rPos ); + virtual ~SwUnoTableCrsr(); + +// virtual SwCursor* Create( SwPaM* pRing = 0 ) const; + + virtual operator SwUnoCrsr* (); + virtual operator SwUnoTableCrsr* (); + virtual operator SwTableCursor* (); + + // gibt es eine Selection vom Content in die Tabelle + // Return Wert gibt an, ob der Crsr auf der alten Position verbleibt + virtual FASTBOOL IsSelOvr( int eFlags = + ( SELOVER_CHECKNODESSECTION | + SELOVER_TOGGLE | SELOVER_CHANGEPOS )); + + void MakeBoxSels(); + SwCursor& GetSelRing() { return aTblSel; } + const SwCursor& GetSelRing() const { return aTblSel; } +}; + + + +#endif diff --git a/sw/inc/unodraw.hxx b/sw/inc/unodraw.hxx new file mode 100644 index 000000000000..00d50c2ecd48 --- /dev/null +++ b/sw/inc/unodraw.hxx @@ -0,0 +1,248 @@ +/************************************************************************* + * + * $RCSfile: unodraw.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNODRAW_HXX +#define _UNODRAW_HXX + +#ifndef _SVX_FMDPAGE_HXX //autogen +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif +#ifndef _FRMFMT_HXX //autogen +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTCONTENT_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_DRAWING_XSHAPE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE3_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif +#ifndef _SFX_ITEMPROP_HXX +#include +#endif + +class SdrMarkList; +class SdrView; +class SwDoc; +/****************************************************************************** + * + ******************************************************************************/ +class SwFmDrawPage : public SvxFmDrawPage +{ + SdrPageView* pPageView; +protected: + + // Erzeugen eines SdrObjects anhand einer Description. Kann von + // abgeleiteten Klassen dazu benutzt werden, eigene ::com::sun::star::drawing::Shapes zu + // unterstuetzen (z.B. Controls) + virtual SdrObject *_CreateSdrObject( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > & xShape ); + + // Die folgende Methode wird gerufen, wenn ein SvxShape-Objekt angelegt + // werden soll. abgeleitete Klassen koennen hier eine Ableitung oder + // ein ein SvxShape aggregierendes Objekt anlegen. + virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > _CreateShape( SdrObject *pObj ) const; + + +public: + SwFmDrawPage( SdrPage* pPage ); + virtual ~SwFmDrawPage(); + + const SdrMarkList& PreGroup(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > & xShapes); + void PreUnGroup(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapeGroup > xShapeGroup); +// void PostGroup(); ?? wird es noch gebraucht ?? + + SdrView* GetDrawView() {return pView;} + SdrPageView* GetPageView(); + void RemovePageView(); + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > GetInterface( SdrObject* pObj ); +}; + +/* -----------------09.12.98 08:57------------------- + * + * --------------------------------------------------*/ +typedef cppu::WeakAggImplHelper3 +< + ::com::sun::star::drawing::XDrawPage, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::drawing::XShapeGrouper +> +SwXDrawPageBaseClass; +class SwXDrawPage : public SwXDrawPageBaseClass +{ + SwDoc* pDoc; + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation > xPageAgg; + SwFmDrawPage* pDrawPage; +public: + SwXDrawPage(SwDoc* pDoc); + ~SwXDrawPage(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XShapes + virtual void SAL_CALL add(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > & xShape) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL remove(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > & xShape) throw( ::com::sun::star::uno::RuntimeException ); + + //XShapeGrouper + virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapeGroup > SAL_CALL group(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes > & xShapes) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL ungroup(const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapeGroup > & aGroup) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + SwFmDrawPage* GetSvxPage(); + void Invalidate() {pDoc = 0;} +}; +/* -----------------22.01.99 10:20------------------- + * + * --------------------------------------------------*/ +class SwShapeDescriptor_Impl; +typedef +cppu::WeakAggImplHelper4 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::text::XTextContent, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel +> +SwXShapeBaseClass; +class SwXShape : public SwXShapeBaseClass, + public SwClient +{ + friend class SwHTMLImageWatcher; + friend class SwHTMLParser; + + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation > xShapeAgg; + SfxItemPropertySet aPropSet; + const SfxItemPropertyMap* _pMap; + + SwShapeDescriptor_Impl* pImpl; + + sal_Bool m_bDescriptor; + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + + SvxShape* GetSvxShape(); +public: + SwXShape(::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & xShape); + virtual ~SwXShape(); + + TYPEINFO(); + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + SwShapeDescriptor_Impl* GetDescImpl() {return pImpl;} + ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation > GetAggregationInterface() {return xShapeAgg;} +}; +#endif + + diff --git a/sw/inc/unofield.hxx b/sw/inc/unofield.hxx new file mode 100644 index 000000000000..74897d9228e9 --- /dev/null +++ b/sw/inc/unofield.hxx @@ -0,0 +1,331 @@ +/************************************************************************* + * + * $RCSfile: unofield.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOFIELD_HXX +#define _UNOFIELD_HXX + +#ifndef _COM_SUN_STAR_TEXT_XDEPENDENTTEXTFIELD_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_UTIL_XREFRESHABLE_HPP_ +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif +#ifndef _UNOOBJ_HXX +#include +#endif +#ifndef _UNOCOLL_HXX +#include +#endif + +class SwFieldType; +class SwDoc; +class SwFmtFld; +class SwField; +/* -----------------04.12.98 12:49------------------- + * + * --------------------------------------------------*/ +class SwXFieldMaster : public cppu::WeakImplHelper4 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::lang::XComponent +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + sal_uInt16 nResTypeId; + SwDoc* m_pDoc; + + sal_Bool m_bIsDescriptor; + + String sParam1; //Content / Database / NumberingSeparator + String sParam2; // - /DataTablename + String sParam3; // - /DataFieldName + double fParam1; // Value / - + sal_Int8 nParam1; // ChapterNumberingLevel + sal_Bool bParam1; // IsExpression + +public: +// automatisch auskommentiert - [getImplementation] - Wird von OWeakObject nicht weiter unterstützt! +// // fuer getImplementation() und fuer den ServiceProvider + + SwXFieldMaster(SwDoc* pDoc, sal_uInt16 nResId); + SwXFieldMaster(SwFieldType& rType, SwDoc* pDoc); + virtual ~SwXFieldMaster(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + SwFieldType* GetFldType() const { return (SwFieldType*)GetRegisteredIn(); } + SwDoc* GetDoc() {return m_pDoc;} + + sal_Bool IsDescriptor()const {return m_bIsDescriptor;} + sal_uInt16 GetResId() const {return nResTypeId;} +}; + +/* -----------------04.12.98 12:49------------------- + * + * --------------------------------------------------*/ +struct SwFieldProperties_Impl; +class SwXTextField : public cppu::WeakImplHelper4 +< + ::com::sun::star::text::XDependentTextField, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + const SwFmtFld* pFmtFld; + SwDoc* m_pDoc; + + sal_Bool m_bIsDescriptor; + sal_uInt16 m_nServiceId; + SwFieldProperties_Impl* m_pProps; + String m_sTypeName; + + + SwFieldType* GetFldType() const { return (SwFieldType*)GetRegisteredIn(); } + SwDoc* GetDoc() {return m_pDoc;} +public: + SwXTextField(sal_uInt16 nServiceId); + SwXTextField(const SwFmtFld& rFmt, SwDoc* pDoc); + virtual ~SwXTextField(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XDependentTextField + virtual void SAL_CALL attachTextFieldMaster(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & xFieldMaster) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL getTextFieldMaster(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextField + virtual rtl::OUString SAL_CALL getPresentation(sal_Bool bShowCommand) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + const SwField* GetField() const; + const SwFmtFld* GetFldFmt(){return GetField() ? pFmtFld : 0; }; +}; +/* -----------------21.12.98 10:26------------------- + * + * --------------------------------------------------*/ +typedef +cppu::WeakImplHelper2 +< + ::com::sun::star::container::XNameAccess, + ::com::sun::star::lang::XServiceInfo +> +SwXTextFieldMastersBaseClass; +class SwXTextFieldMasters : public SwXTextFieldMastersBaseClass, + public SwUnoCollection +{ +public: + SwXTextFieldMasters(SwDoc* pDoc); + virtual ~SwXTextFieldMasters(); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; + +/* -----------------21.12.98 10:26------------------- + * + * --------------------------------------------------*/ +typedef +cppu::WeakImplHelper3 +< + ::com::sun::star::container::XEnumerationAccess, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::util::XRefreshable +> +SwXTextFieldTypesBaseClass; +class SwXTextFieldTypes : public SwXTextFieldTypesBaseClass, + public SwUnoCollection +{ +public: + SwXTextFieldTypes(SwDoc* pDoc); + virtual ~SwXTextFieldTypes(); + + //XEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + // ::com::sun::star::util::XRefreshable + virtual void SAL_CALL refresh( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addRefreshListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XRefreshListener >& l ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeRefreshListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XRefreshListener >& l ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; + +/* -----------------21.12.98 14:49------------------- + * + * --------------------------------------------------*/ +class SwXFieldEnumeration : public cppu::WeakImplHelper2 +< + ::com::sun::star::container::XEnumeration, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + SwDoc* pDoc; + const SwFieldType* pLastFieldType; + const SwFieldType* pNextFieldType; + const SwFmtFld* pLastFieldFmt; + const SwFmtFld* pNextFieldFmt; + +public: + SwXFieldEnumeration(SwDoc* pDoc); + virtual ~SwXFieldEnumeration(); + + //XEnumeration + virtual BOOL SAL_CALL hasMoreElements(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL nextElement(void) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; +#endif + + + diff --git a/sw/inc/unoframe.hxx b/sw/inc/unoframe.hxx new file mode 100644 index 000000000000..fff9dd43f080 --- /dev/null +++ b/sw/inc/unoframe.hxx @@ -0,0 +1,363 @@ +/************************************************************************* + * + * $RCSfile: unoframe.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOFRAME_HXX +#define _UNOFRAME_HXX + +#ifndef _UNOOBJ_HXX +#include +#endif +#ifndef _SFX_OBJSH_HXX +#include +#endif +#ifndef _COM_SUN_STAR_DOCUMENT_XEMBEDDEDOBJECTSUPPLIER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTEMBEDDEDOBJECT_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTFRAME_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_DRAWING_XSHAPE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_UTIL_XMODIFYLISTENER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_FRAME_XMODEL_HPP_ +#include +#endif + +/*-----------------12.02.98 11:21------------------- + +--------------------------------------------------*/ +class BaseFrameProperties_Impl; +class SwXFrame : public cppu::WeakImplHelper6 +< + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::beans::XPropertyState, + ::com::sun::star::drawing::XShape, + ::com::sun::star::container::XNamed, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + const SfxItemPropertyMap* _pMap; + + const FlyCntType eType; + + // Descriptor-interface + BaseFrameProperties_Impl* pProps; + sal_Bool bIsDescriptor; + String sName; + +public: + SwXFrame(); + SwXFrame(FlyCntType eSet, + const SfxItemPropertyMap* pMap); //Descriptor-If + SwXFrame(SwFrmFmt& rFrmFmt, FlyCntType eSet, + const SfxItemPropertyMap* pMap); + virtual ~SwXFrame(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + TYPEINFO(); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XShape + virtual ::com::sun::star::awt::Point SAL_CALL getPosition( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPosition( const ::com::sun::star::awt::Point& aPosition ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setSize( const ::com::sun::star::awt::Size& aSize ) throw(::com::sun::star::beans::PropertyVetoException, ::com::sun::star::uno::RuntimeException); + + //XShapeDescriptor + virtual rtl::OUString SAL_CALL getShapeType(void) throw( ::com::sun::star::uno::RuntimeException ); + + //Basisimplementierung + //XComponent + virtual void SAL_CALL dispose( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + FlyCntType GetFlyCntType()const {return eType;} + + sal_Bool IsDescriptor() const {return bIsDescriptor;} + void ResetDescriptor(); +}; +/*-----------------20.02.98 11:28------------------- + +--------------------------------------------------*/ +typedef cppu::WeakImplHelper2 +< + ::com::sun::star::text::XTextFrame, + ::com::sun::star::container::XEnumerationAccess +> +SwXTextFrameBaseClass; + +class SwXTextFrame : public SwXTextFrameBaseClass, + public SwXText, + public SwXFrame +{ + const SfxItemPropertyMap* _pMap; + +protected: + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > createCursor(); +public: + SwXTextFrame(); + SwXTextFrame(SwFrmFmt& rFmt); + virtual ~SwXTextFrame(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(); + virtual void SAL_CALL release( ) throw(); + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XTextFrame + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + + //XEnumerationAccess - frueher XParagraphEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xTextRange ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& xListener ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void * SAL_CALL operator new( size_t ) throw(); + void SAL_CALL operator delete( void * ) throw(); +}; +/*-----------------20.02.98 11:28------------------- + +--------------------------------------------------*/ +typedef cppu::WeakImplHelper1 +< + ::com::sun::star::text::XTextContent +> +SwXTextGraphicObjectBaseClass; +class SwXTextGraphicObject : public SwXTextGraphicObjectBaseClass, + public SwXFrame +{ +public: + SwXTextGraphicObject(); + SwXTextGraphicObject(SwFrmFmt& rFmt); + virtual ~SwXTextGraphicObject(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(); + virtual void SAL_CALL release( ) throw(); + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void * SAL_CALL operator new( size_t ) throw(); + void SAL_CALL operator delete( void * ) throw(); +}; +/*-----------------20.02.98 11:28------------------- + +--------------------------------------------------*/ +typedef cppu::WeakImplHelper2 +< + ::com::sun::star::text::XTextEmbeddedObject, + ::com::sun::star::document::XEmbeddedObjectSupplier +>SwXTextEmbeddedObjectBaseClass; + +class SwXTextEmbeddedObject : public SwXTextEmbeddedObjectBaseClass, + public SwXFrame +{ +public: + SwXTextEmbeddedObject(); + SwXTextEmbeddedObject(SwFrmFmt& rFmt); + virtual ~SwXTextEmbeddedObject(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(); + virtual void SAL_CALL release( ) throw(); + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XEmbeddedObjectSupplier, + virtual ::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent > SAL_CALL getEmbeddedObject(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XEmbeddedObject + virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getObject( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setObject( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& xObject ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void * SAL_CALL operator new( size_t ) throw(); + void SAL_CALL operator delete( void * ) throw(); +}; + + + +class SwXOLEListener : public cppu::WeakImplHelper1 +< + ::com::sun::star::util::XModifyListener +>, + public SwClient +{ + SvPtrarr aFmts; + ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > GetModel( const SwFmt& rFmt, SwOLENode** ppNd = 0 ) const; + SfxObjectShell* GetObjShell( const SwFmt& rFmt, + SwOLENode** ppNd = 0 ) const; + sal_uInt16 FindEntry( const ::com::sun::star::lang::EventObject& Source, SwOLENode** ppNd = 0 ); +public: + +// ::com::sun::star::lang::XEventListener + virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException); + +// ::com::sun::star::util::XModifyListener + virtual void SAL_CALL modified( const ::com::sun::star::lang::EventObject& aEvent ) throw(::com::sun::star::uno::RuntimeException); + + sal_Bool AddOLEFmt( SwFrmFmt& rFmt ); + void Modify( SfxPoolItem*, SfxPoolItem* ); +}; + + + +#endif + diff --git a/sw/inc/unoidx.hxx b/sw/inc/unoidx.hxx new file mode 100644 index 000000000000..ec211a034fcd --- /dev/null +++ b/sw/inc/unoidx.hxx @@ -0,0 +1,366 @@ +/************************************************************************* + * + * $RCSfile: unoidx.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOIDX_HXX +#define _UNOIDX_HXX + +#ifndef _COM_SUN_STAR_TEXT_XDOCUMENTINDEXMARK_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XDOCUMENTINDEX_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XINDEXREPLACE_HPP_ +#include +#endif +#ifndef _UNOOBJ_HXX +#include +#endif +#ifndef _UNOCOLL_HXX +#include +#endif +#ifndef _TOXE_HXX +#include +#endif +class SwTOXBaseSection; +class SwTOXMark; +class SwTOXType; +/* -----------------07.12.98 10:08------------------- + * + * --------------------------------------------------*/ +class SwDocIdxProperties_Impl; +class SwXIndexStyleAccess_Impl; +class SwXIndexTokenAccess_Impl; + +class SwXDocumentIndex : public cppu::WeakImplHelper5 +< + ::com::sun::star::text::XDocumentIndex, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::container::XNamed, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + friend class SwXIndexStyleAccess_Impl; + friend class SwXIndexTokenAccess_Impl; + + SwEventListenerContainer aLstnrCntnr; + const SfxItemPropertyMap* _pMap; + SwDoc* m_pDoc; + const SwTOXBaseSection* pBase; + TOXTypes eTOXType; + + //Descriptor-Interface + sal_Bool bIsDescriptor; + SwDocIdxProperties_Impl* pProps; + + SwXIndexStyleAccess_Impl* pStyleAccess; + SwXIndexTokenAccess_Impl* pTokenAccess; + + SwSectionFmt* GetFmt()const {return (SwSectionFmt*)GetRegisteredIn();} + + sal_Bool IsDescriptor() const {return bIsDescriptor;} + const SwDocIdxProperties_Impl* GetProperties_Impl() const { return pProps;} + SwDocIdxProperties_Impl* GetProperties_Impl() { return pProps;} + TOXTypes GetTOXType() const {return eTOXType;} + + SwXIndexStyleAccess_Impl* GetStyleAccess() const {return pStyleAccess;} + void SetStyleAccess(SwXIndexStyleAccess_Impl* pSet) + {pStyleAccess = pSet;} + + SwXIndexTokenAccess_Impl* GetTokenAccess() const {return pTokenAccess;} + void SetTokenAccess(SwXIndexTokenAccess_Impl* pSet) + {pTokenAccess = pSet;} +public: + SwXDocumentIndex(const SwTOXBaseSection* = 0, SwDoc* = 0); + //Descriptor-Ctor + SwXDocumentIndex(TOXTypes eToxType, SwDoc& rDoc); + virtual ~SwXDocumentIndex(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XDocumentIndex + virtual ::rtl::OUString SAL_CALL getServiceName( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL update( ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); +}; +/* -----------------07.12.98 10:08------------------- + * + * --------------------------------------------------*/ +class SwXDocumentIndexMark : public cppu::WeakImplHelper4 +< + ::com::sun::star::text::XDocumentIndexMark, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SwDoc* m_pDoc; + const SwTOXMark* m_pTOXMark; + const SfxItemPropertyMap* _pMap; + + sal_Bool bIsDescriptor; + TOXTypes eType; + sal_uInt16 nLevel; + String sAltText; + String sPrimaryKey; + String sSecondaryKey; + String sUserIndexName; + + void InitMap(TOXTypes eToxType); +public: + SwXDocumentIndexMark(TOXTypes eToxType); + SwXDocumentIndexMark(const SwTOXType* pType, + const SwTOXMark* pMark, + SwDoc* pDc); + virtual ~SwXDocumentIndexMark(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + virtual rtl::OUString SAL_CALL getMarkEntry(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setMarkEntry(const rtl::OUString& aIndexEntry) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + SwTOXType* GetTOXType() const {return (SwTOXType*)GetRegisteredIn();} + const SwTOXMark* GetTOXMark() const {return m_pTOXMark;} + + static SwXDocumentIndexMark* GetObject(SwTOXType* pType, const SwTOXMark* pMark, + SwDoc* pDoc); +}; +/* -----------------05.05.99 12:27------------------- + * + * --------------------------------------------------*/ + +class SwXDocumentIndexes : public SwCollectionBaseClass, + public SwUnoCollection +{ +public: + SwXDocumentIndexes(SwDoc* pDoc); + virtual ~SwXDocumentIndexes(); + +// SMART_UNO_DECLARATION( SwXDocumentIndexes, UsrObject ); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > > getIdlClasses(void) + +// throw( ::com::sun::star::uno::RuntimeException ); +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual sal_Bool queryInterface( ::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rOut ); + + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; +/* -----------------13.09.99 16:39------------------- + + --------------------------------------------------*/ +class SwXIndexStyleAccess_Impl : public cppu::WeakImplHelper2 +< + ::com::sun::star::container::XIndexReplace, + ::com::sun::star::lang::XServiceInfo +> +{ + SwXDocumentIndex& rParent; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XDocumentIndex > xParent; +public: + SwXIndexStyleAccess_Impl(SwXDocumentIndex& rParentIdx); + virtual ~SwXIndexStyleAccess_Impl(); + + //XIndexReplace + virtual void SAL_CALL replaceByIndex( sal_Int32 Index, const ::com::sun::star::uno::Any& Element ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +/* -----------------13.09.99 16:39------------------- + + --------------------------------------------------*/ +class SwXIndexTokenAccess_Impl : public cppu::WeakImplHelper2 +< + ::com::sun::star::container::XIndexReplace, + ::com::sun::star::lang::XServiceInfo +> +{ + SwXDocumentIndex& rParent; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XDocumentIndex > xParent; + sal_Int32 nCount; +public: + SwXIndexTokenAccess_Impl(SwXDocumentIndex& rParentIdx); + virtual ~SwXIndexTokenAccess_Impl(); + + + //XIndexReplace + virtual void SAL_CALL replaceByIndex( sal_Int32 Index, const ::com::sun::star::uno::Any& Element ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +#endif + + diff --git a/sw/inc/unomap.hxx b/sw/inc/unomap.hxx new file mode 100644 index 000000000000..5259c1c3134c --- /dev/null +++ b/sw/inc/unomap.hxx @@ -0,0 +1,290 @@ +/************************************************************************* + * + * $RCSfile: unomap.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOMAP_HXX +#define _UNOMAP_HXX + +#ifndef _SFX_ITEMPROP_HXX //autogen +#include +#endif + +#define PROPERTY_NONE 0 + +#define PROPERTY_MAP_TEXT_CURSOR 0 +#define PROPERTY_MAP_CHAR_STYLE 1 +#define PROPERTY_MAP_PARA_STYLE 2 +#define PROPERTY_MAP_FRAME_STYLE 3 +#define PROPERTY_MAP_PAGE_STYLE 4 +#define PROPERTY_MAP_NUM_STYLE 5 +#define PROPERTY_MAP_SECTION 6 +#define PROPERTY_MAP_TEXT_TABLE 7 +#define PROPERTY_MAP_TABLE_CELL 8 +#define PROPERTY_MAP_TABLE_RANGE 9 +#define PROPERTY_MAP_TEXT_SEARCH 10 +#define PROPERTY_MAP_TEXT_FRAME 11 +#define PROPERTY_MAP_TEXT_GRAPHIC 12 +#define PROPERTY_MAP_TEXT_SHAPE 13 +#define PROPERTY_MAP_INDEX_USER 14 +#define PROPERTY_MAP_INDEX_CNTNT 15 +#define PROPERTY_MAP_INDEX_IDX 16 +#define PROPERTY_MAP_USER_MARK 17 +#define PROPERTY_MAP_CNTIDX_MARK 18 +#define PROPERTY_MAP_INDEX_MARK 19 +#define PROPERTY_MAP_TEXT_TABLE_ROW 20 +#define PROPERTY_MAP_TEXT_SHAPE_DESCRIPTOR 21 +#define PROPERTY_MAP_TEXT_TABLE_CURSOR 22 +#define PROPERTY_MAP_BOOKMARK 23 +#define PROPERTY_MAP_PARAGRAPH_EXTENSIONS 24 +#define PROPERTY_MAP_INDEX_ILLUSTRATIONS 25 +#define PROPERTY_MAP_INDEX_OBJECTS 26 +#define PROPERTY_MAP_INDEX_TABLES 27 +#define PROPERTY_MAP_BIBLIOGRAPHY 28 +#define PROPERTY_MAP_TEXT_DOCUMENT 29 +#define PROPERTY_MAP_LINK_TARGET 30 +#define PROPERTY_MAP_AUTO_TEXT_GROUP 31 +#define PROPERTY_MAP_PRINT_SETTINGS 32 +#define PROPERTY_MAP_VIEW_SETTINGS 33 +#define PROPERTY_MAP_TEXTPORTION_EXTENSIONS 34 +#define PROPERTY_MAP_FOOTNOTE 35 +#define PROPERTY_MAP_END 36 + +#define PROPERTY_SET_CHAR_STYLE 1 +#define PROPERTY_SET_PARA_STYLE 2 +#define PROPERTY_SET_FRAME_STYLE 3 +#define PROPERTY_SET_PAGE_STYLE 4 +#define PROPERTY_SET_NUM_STYLE 5 + +//S&E +#define WID_WORDS 0 +#define WID_BACKWARDS 1 +#define WID_REGULAR_EXPRESSION 2 +#define WID_CASE_SENSITIVE 3 +#define WID_IN_SELECTION 4 +#define WID_STYLES 5 +#define WID_SIMILARITY 6 +#define WID_SIMILARITY_RELAX 7 +#define WID_SIMILARITY_EXCHANGE 8 +#define WID_SIMILARITY_ADD 9 +#define WID_SIMILARITY_REMOVE 10 +#define WID_SEARCH_ALL 11 + +//Sections +#define WID_SECT_CONDITION 0 +#define WID_SECT_DDE_TYPE 1 +#define WID_SECT_DDE_FILE 2 +#define WID_SECT_DDE_ELEMENT 3 +#define WID_SECT_LINK 4 +#define WID_SECT_VISIBLE 5 +#define WID_SECT_PROTECTED 6 +#define WID_SECT_REGION 7 + +//Verzeichnisse +#define WID_PRIMARY_KEY 1000 +#define WID_SECONDARY_KEY 1001 +#define WID_ALT_TEXT 1002 +#define WID_IDX_TITLE 1003 +#define WID_LEVEL 1004 +#define WID_CREATE_FROM_MARKS 1005 +#define WID_CREATE_FROM_OUTLINE 1006 +//#define WID_PARAGRAPH_STYLE_NAMES 1007 +#define WID_CREATE_FROM_CHAPTER 1008 +#define WID_CREATE_FROM_LABELS 1009 +#define WID_PROTECTED 1000 +#define WID_USE_ALPHABETICAL_SEPARATORS 1010 +#define WID_USE_KEY_AS_ENTRY 1011 +#define WID_USE_COMBINED_ENTRIES 1012 +#define WID_IS_CASE_SENSITIVE 1013 +#define WID_USE_P_P 1014 +#define WID_USE_DASH 1015 +#define WID_USE_UPPER_CASE 1016 +#define WID_INDEX_AUTO_MARK_FILE_U_R_L 1017 +#define WID_LABEL_CATEGORY 1018 +#define WID_LABEL_DISPLAY_TYPE 1019 +#define WID_USE_LEVEL_FROM_SOURCE 1020 +#define WID_LEVEL_FORMAT 1021 +#define WID_LEVEL_PARAGRAPH_STYLES 1022 +#define WID_RECALC_TAB_STOPS 1023 +//#define WID_??? 1024 +#define WID_MAIN_ENTRY_CHARACTER_STYLE_NAME 1025 +#define WID_CREATE_FROM_TABLES 1026 +#define WID_CREATE_FROM_TEXT_FRAMES 1027 +#define WID_CREATE_FROM_GRAPHIC_OBJECTS 1028 +#define WID_CREATE_FROM_EMBEDDED_OBJECTS 1029 +#define WID_CREATE_FROM_STAR_MATH 1030 +#define WID_CREATE_FROM_STAR_IMAGE 1031 +#define WID_CREATE_FROM_STAR_CHART 1032 +#define WID_CREATE_FROM_STAR_CALC 1033 +#define WID_CREATE_FROM_STAR_DRAW 1034 +#define WID_CREATE_FROM_OTHER_EMBEDDED_OBJECTS 1035 +#define WID_USER_IDX_NAME 1036 +#define WID_PARA_HEAD 1037 +#define WID_PARA_SEP 1038 +#define WID_PARA_LEV1 1039 +#define WID_PARA_LEV2 1040 +#define WID_PARA_LEV3 1041 +#define WID_PARA_LEV4 1042 +#define WID_PARA_LEV5 1043 +#define WID_PARA_LEV6 1044 +#define WID_PARA_LEV7 1045 +#define WID_PARA_LEV8 1046 +#define WID_PARA_LEV9 1047 +#define WID_PARA_LEV10 1048 +#define WID_IS_COMMA_SEPARATED 1049 + +//text document +#define WID_DOC_CHAR_COUNT 1000 +#define WID_DOC_PARA_COUNT 1001 +#define WID_DOC_WORD_COUNT 1002 +#define WID_DOC_WORD_SEPARATOR 1003 +#define WID_DOC_CHANGES_SHOW 1004 +#define WID_DOC_CHANGES_RECORD 1005 +#define WID_DOC_AUTO_MARK_URL 1006 + +//AutoText +#define WID_GROUP_PATH 0 +#define WID_GROUP_TITLE 1 + +//ViewSettings +#define WID_VIEWSET_HRULER 0 +#define WID_VIEWSET_VRULER 1 +#define WID_VIEWSET_HSCROLL 2 +#define WID_VIEWSET_VSCROLL 3 +#define WID_VIEWSET_GRAPHICS 4 +#define WID_VIEWSET_TABLES 5 +#define WID_VIEWSET_DRAWINGS 6 +#define WID_VIEWSET_FIELD_COMMANDS 7 +#define WID_VIEWSET_ANNOTATIONS 8 +#define WID_VIEWSET_INDEX_MARK_BACKGROUND 9 +#define WID_VIEWSET_FOOTNOTE_BACKGROUND 10 +#define WID_VIEWSET_TEXT_FIELD_BACKGROUND 11 +#define WID_VIEWSET_PARA_BREAKS 12 +#define WID_VIEWSET_SOFT_HYPHENS 13 +#define WID_VIEWSET_SPACES 14 +#define WID_VIEWSET_PROTECTED_SPACES 15 +#define WID_VIEWSET_TABSTOPS 16 +#define WID_VIEWSET_BREAKS 17 +#define WID_VIEWSET_HIDDEN_TEXT 18 +#define WID_VIEWSET_HIDDEN_PARAGRAPHS 19 +#define WID_VIEWSET_TABLE_BOUNDARIES 20 +#define WID_VIEWSET_TEXT_BOUNDARIES 21 +#define WID_VIEWSET_SMOOTH_SCROLLING 22 +#define WID_VIEWSET_SOLID_MARK_HANDLES 23 +#define WID_VIEWSET_ZOOM 24 +#define WID_VIEWSET_ZOOM_TYPE 25 +#define WID_VIEWSET_ONLINE_LAYOUT 26 + +//PrintSettings +#define WID_PRTSET_LEFT_PAGES 0 +#define WID_PRTSET_RIGHT_PAGES 1 +#define WID_PRTSET_REVERSED 2 +#define WID_PRTSET_PROSPECT 3 +#define WID_PRTSET_GRAPHICS 4 +#define WID_PRTSET_TABLES 5 +#define WID_PRTSET_DRAWINGS 6 +#define WID_PRTSET_CONTROLS 7 +#define WID_PRTSET_PAGE_BACKGROUND 8 +#define WID_PRTSET_BLACK_FONTS 9 +#define WID_PRTSET_ANNOTATION_MODE 10 + +//NumberingRules +#define WID_IS_AUTOMATIC 0 +#define WID_CONTINUOUS 1 +#define WID_RULE_NAME 2 +#define WID_IS_ABS_MARGINS 3 + +/* -----------------04.07.98 11:41------------------- + * + * --------------------------------------------------*/ +class SwItemPropertySet : public SfxItemPropertySet +{ +protected: + virtual sal_Bool FillItem(SfxItemSet& rSet, sal_uInt16 nWhich, sal_Bool bGetProperty) const; +public: + SwItemPropertySet( const SfxItemPropertyMap *pMap ) : + SfxItemPropertySet( pMap ){} +}; +/* -----------------04.07.98 11:41------------------- + * + * --------------------------------------------------*/ +class SwUnoPropertyMapProvider +{ + SfxItemPropertyMap* aMapArr[PROPERTY_MAP_END]; + + SfxItemPropertySet* pCharStyleMap; + SfxItemPropertySet* pParaStyleMap; + SfxItemPropertySet* pFrameStyleMap; + SfxItemPropertySet* pPageStyleMap; + SfxItemPropertySet* pNumStyleMap; + + void Sort(sal_uInt16 nId); +public: + SwUnoPropertyMapProvider(); + ~SwUnoPropertyMapProvider(); + + const SfxItemPropertyMap* GetPropertyMap(sal_uInt16 PropertyId); + + SfxItemPropertySet& GetPropertySet(sal_Int8 nPropSetId); +}; + +extern SwUnoPropertyMapProvider aSwMapProvider; + +#endif + + diff --git a/sw/inc/unomid.h b/sw/inc/unomid.h new file mode 100644 index 000000000000..ee45b744ca12 --- /dev/null +++ b/sw/inc/unomid.h @@ -0,0 +1,124 @@ +/************************************************************************* + * + * $RCSfile: unomid.h,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef SW_UNOMID_HXX +#define SW_UNOMID_HXX + + +#define MID_MIRROR_VERT 0 +#define MID_MIRROR_HORZ 1 +#define MID_MIRROR_HORZ_PAGETOGGLE 2 + +#define MID_PAGEDESC_PAGEDESCNAME 0 +#define MID_PAGEDESC_PAGENUMOFFSET 1 + +#define MID_SURROUND_SURROUNDTYPE 0 +#define MID_SURROUND_ANCHORONLY 1 +#define MID_SURROUND_CONTOUR 2 +#define MID_SURROUND_CONTOUROUTSIDE 3 + +#define MID_VERTORIENT_ORIENT 0 +#define MID_VERTORIENT_RELATION 1 +#define MID_VERTORIENT_POSITION 2 + +#define MID_HORIORIENT_ORIENT 0 +#define MID_HORIORIENT_RELATION 1 +#define MID_HORIORIENT_POSITION 2 +#define MID_HORIORIENT_PAGETOGGLE 3 + +#define MID_ANCHOR_ANCHORTYPE 0 +#define MID_ANCHOR_PAGENUM 1 + +#define MID_URL_HYPERLINKFORMAT 0 +#define MID_URL_HYPERLINKNAME 1 +#define MID_URL_CLIENTMAP 2 +#define MID_URL_SERVERMAP 3 +#define MID_URL_URL 4 +#define MID_URL_TARGET 5 +#define MID_URL_VISITED_FMT 6 +#define MID_URL_UNVISITED_FMT 7 + +#define MID_CHAIN_PREVNAME 0 +#define MID_CHAIN_NEXTNAME 1 + +#define MID_LINENUMBER_COUNT 0 +#define MID_LINENUMBER_STARTVALUE 1 + +#define MID_DROPCAP_FORMAT 0 +#define MID_DROPCAP_WHOLE_WORD 1 +#define MID_DROPCAP_CHAR_STYLE_NAME 2 + +#define MID_FRMSIZE_SIZE 0 +#define MID_FRMSIZE_REL_HEIGHT 1 +#define MID_FRMSIZE_REL_WIDTH 2 +#define MID_FRMSIZE_IS_SYNC_REL_SIZE 3 +#define MID_FRMSIZE_WIDTH 4 +#define MID_FRMSIZE_HEIGHT 5 +#define MID_FRMSIZE_SIZE_TYPE 6 +#define MID_FRMSIZE_IS_AUTO_HEIGHT 7 +/* XML only */ +#define MID_FRMSIZE_MIN_HEIGHT 8 +#define MID_FRMSIZE_FIX_HEIGHT 9 +#define MID_FRMSIZE_COL_WIDTH 10 +#define MID_FRMSIZE_REL_COL_WIDTH 11 + +#define MID_COLUMNS 0 +#define MID_COLUMN_SEPARATOR_LINE 1 +#endif diff --git a/sw/inc/unomod.hxx b/sw/inc/unomod.hxx new file mode 100644 index 000000000000..771004c6156f --- /dev/null +++ b/sw/inc/unomod.hxx @@ -0,0 +1,223 @@ +/************************************************************************* + * + * $RCSfile: unomod.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOMOD_HXX +#define _UNOMOD_HXX + +#ifndef _COM_SUN_STAR_TEXT_XMODULE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_VIEW_XPRINTSETTINGSSUPPLIER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_VIEW_XVIEWSETTINGSSUPPLIER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE2_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif + +struct SfxItemPropertyMap; +class SwView; +/****************************************************************************** + * + ******************************************************************************/ +/*-----------------15.03.98 13:21------------------- + +--------------------------------------------------*/ + +::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL SwXModule_CreateInstance(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & ); + +class SwXModule : public cppu::WeakImplHelper4 +< + ::com::sun::star::text::XModule, + ::com::sun::star::view::XViewSettingsSupplier, + ::com::sun::star::view::XPrintSettingsSupplier, + ::com::sun::star::lang::XServiceInfo +> +{ + + ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > * pxViewSettings; + ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > * pxPrintSettings; + +public: + SwXModule(); + virtual ~SwXModule(); + + //XViewSettings + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL getViewSettings(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPrintSettings + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL getPrintSettings(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; + +/*-----------------15.03.98 13:21------------------- + +--------------------------------------------------*/ +class SwXPrintSettings : public cppu::WeakImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +> +{ + const SfxItemPropertyMap* _pMap; + sal_Bool bWeb : 1; +public: + SwXPrintSettings(sal_Bool bWeb); + virtual ~SwXPrintSettings(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; +/*-----------------15.03.98 13:21------------------- + +--------------------------------------------------*/ +class SwXViewSettings : public cppu::WeakImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +> +{ + const SfxItemPropertyMap* _pMap; + SwView* pView; + sal_Bool bObjectValid : 1; + sal_Bool bWeb : 1; +public: + SwXViewSettings(sal_Bool bWeb, SwView* pView); + virtual ~SwXViewSettings(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + sal_Bool IsValid() const {return bObjectValid;} + void Invalidate() {bObjectValid = sal_False;} +}; +/* -----------------24.09.98 10:47------------------- + * + * --------------------------------------------------*/ +/*class SwXTerminateListener : public ::com::sun::star::frame::XTerminateListener, + public UsrObject +{ +public: + SwXTerminateListener(); + virtual ~SwXTerminateListener(); + + SMART_UNO_DECLARATION( SwXTerminateListener, UsrObject ); + + virtual UString getClassName(); +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual ::com::sun::star::uno::XInterface * queryInterface( ::com::sun::star::uno::Uik aUik); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > > getIdlClasses(void); + + + //XTerminateListener + virtual void queryTermination(const ::com::sun::star::lang::EventObject& aEvent); + virtual void notifyTermination(const ::com::sun::star::lang::EventObject& aEvent); + + //XEventListener + virtual void disposing(const ::com::sun::star::lang::EventObject& Source); +}; + +*/ +#endif + + diff --git a/sw/inc/unoobj.hxx b/sw/inc/unoobj.hxx new file mode 100644 index 000000000000..98594a3a3918 --- /dev/null +++ b/sw/inc/unoobj.hxx @@ -0,0 +1,1483 @@ +/************************************************************************* + * + * $RCSfile: unoobj.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOOBJ_HXX +#define _UNOOBJ_HXX + +#ifndef _SFX_ITEMPROP_HXX +#include +#endif +#ifndef _CALBCK_HXX //autogen +#include +#endif +#ifndef _FRMFMT_HXX //autogen +#include +#endif +#ifndef _FLYENUM_HXX //autogen +#include +#endif +#ifndef _FLDBAS_HXX //autogen +#include +#endif +#ifndef _FMTCNTNT_HXX //autogen +#include +#endif +#ifndef _PAM_HXX //autogen +#include +#endif +#ifndef _TOXE_HXX +#include +#endif +#ifndef _SORTOPT_HXX //autogen +#include +#endif +#ifndef _COM_SUN_STAR_DOCUMENT_XDOCUMENTINSERTABLE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTCURSOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XWORDCURSOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XPARAGRAPHCURSOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XSENTENCECURSOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XFOOTNOTE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTSECTION_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTFIELD_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTRANGE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXT_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_UTIL_XSORTABLE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XENUMERATIONACCESS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XCONTENTENUMERATIONACCESS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XINDEXACCESS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XNAMED_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSTATE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTRANGECOMPARE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XRELATIVETEXTCONTENTINSERT_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XRELATIVETEXTCONTENTREMOVE_HPP_ +#include +#endif +#ifndef _CPPUHELPER_WEAK_HXX_ +#include +#endif +#ifndef _CPPUHELPER_FACTORY_HXX_ +#include // helper for factories +#endif +#ifndef _CPPUHELPER_IMPLBASE2_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE3_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE5_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE6_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE8_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE10_HXX_ +#include // helper for implementations +#endif + +#define C2U(cChar) rtl::OUString::createFromAscii(cChar) +#define C2S(cChar) UniString::CreateFromAscii(cChar) + +class SwUnoCrsr; +class SwBookmark; +class SwFmtFtn; +class SwFmtFld; +class SwFmtRefMark; +class SwEvtLstnrArray; +class GetCurTxtFmtColl; +/* -----------------29.04.98 07:35------------------- + * + * --------------------------------------------------*/ +enum CursorType +{ + CURSOR_INVALID, + CURSOR_BODY, + CURSOR_FRAME, + CURSOR_TBLTEXT, + CURSOR_FOOTNOTE, + CURSOR_HEADER, + CURSOR_FOOTER, + CURSOR_ALL // fuer Search&Replace +}; + +/* -----------------29.04.98 07:35------------------- + * + * --------------------------------------------------*/ +#define PUNOPAM (_pStartCrsr) + +#define FOREACHUNOPAM_START(pCrsr) \ + {\ + SwPaM *_pStartCrsr = pCrsr, *__pStartCrsr = _pStartCrsr; \ + do { + +#define FOREACHUNOPAM_END() \ + } while( (_pStartCrsr=(SwPaM *)_pStartCrsr->GetNext()) != __pStartCrsr ); \ + } + +/* -----------------26.06.98 16:18------------------- + * + * --------------------------------------------------*/ +SwPageDesc* GetPageDescByName_Impl(SwDoc& rDoc, const String& rName); +::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > CreateTextRangeFromPosition(SwDoc* pDoc, + const SwPosition& rPos, const SwPosition* pMark); + +::com::sun::star::uno::Sequence< sal_Int8 > CreateUnoTunnelId(); + +/* -----------------29.04.98 07:35------------------- + * + * --------------------------------------------------*/ +class SwUnoInternalPaM : public SwPaM +{ + SwUnoInternalPaM( const SwUnoInternalPaM& ); +public: + SwUnoInternalPaM(SwDoc& rDoc); + ~SwUnoInternalPaM(); + + SwUnoInternalPaM& operator=(const SwPaM& rPaM); +}; + +/*-----------------04.03.98 11:54------------------- + Start/EndAction oder Start/EndAllAction +--------------------------------------------------*/ +class UnoActionContext +{ + SwDoc* pDoc; + public: + UnoActionContext(SwDoc* pDoc); + ~UnoActionContext(); + + void InvalidateDocument() {pDoc = 0;} +}; +/* -----------------07.07.98 12:03------------------- + * Actions kurzfristig unterbrechen + * --------------------------------------------------*/ +class UnoActionRemoveContext +{ + SwDoc* pDoc; + public: + UnoActionRemoveContext(SwDoc* pDoc); + ~UnoActionRemoveContext(); +}; + +/****************************************************************************** + * + ******************************************************************************/ +typedef com::sun::star::uno::Reference< com::sun::star::text::XTextRange > * XTextRangeRefPtr; +SV_DECL_PTRARR(XTextRangeArr, XTextRangeRefPtr, 4, 4); + +void ClientModify(SwClient* pClient, SfxPoolItem *pOld, SfxPoolItem *pNew); + +/* -----------------22.04.99 11:18------------------- + * Verwaltung der EventListener + * --------------------------------------------------*/ +class SwEventListenerContainer +{ + SwEvtLstnrArray* pListenerArr; + ::com::sun::star::uno::XInterface* pxParent; + public: + SwEventListenerContainer( ::com::sun::star::uno::XInterface* pxParent); + ~SwEventListenerContainer(); + + void AddListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & rxListener); + BOOL RemoveListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & rxListener); + void Disposing(); +}; +/* -----------------03.12.98 12:22------------------- + * + * --------------------------------------------------*/ +class SwXTextRange; +class SwXTextCursor; +class SwXText : public ::com::sun::star::text::XText, + ::com::sun::star::lang::XTypeProvider, + ::com::sun::star::text::XTextRangeCompare, + ::com::sun::star::text::XRelativeTextContentInsert, + ::com::sun::star::text::XRelativeTextContentRemove + +{ + SwDoc* pDoc; + BOOL bObjectValid; + CursorType eCrsrType; +protected: + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > createCursor(); + +public: + SwXText(SwDoc* pDc, CursorType eType) : + pDoc(pDc),bObjectValid(0 != pDc), eCrsrType(eType){} + virtual ~SwXText(); + + const SwDoc* GetDoc()const {return pDoc;} + SwDoc* GetDoc() {return pDoc;} + + // wenn ein SwXText attached wird, wird das Doc gesetzt + void SetDoc(SwDoc* pDc) + {DBG_ASSERT(!pDoc || !pDc, "Doc schon gesetzt?") + pDoc = pDc; + bObjectValid = 0 != pDc; + } + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + + //XText + virtual void SAL_CALL insertString(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, const rtl::OUString& aString, BOOL bAbsorb) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL insertControlCharacter(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, sal_Int16 nControlCharacter, BOOL bAbsorb) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL insertTextContent(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xRange, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > & xContent, BOOL bAbsorb) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeTextContent(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > & xContent) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextRangeCompare + sal_Int16 SAL_CALL compareRegionStarts( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xR1, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xR2 ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + sal_Int16 SAL_CALL compareRegionEnds( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xR1, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xR2 ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + + //XRelativeTextContentInsert + virtual void SAL_CALL insertTextContentBefore(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xNewContent, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xSuccessor) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL insertTextContentAfter(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xNewContent, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xPredecessor) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + + //XRelativeTextContentRemove + virtual void SAL_CALL removeTextContentBefore(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xSuccessor) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeTextContentAfter(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent>& xPredecessor) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + + // + INT16 ComparePositions(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange>& xPos1, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange>& xPos2) throw (com::sun::star::lang::IllegalArgumentException, com::sun::star::uno::RuntimeException); + BOOL CheckForOwnMember(const SwXTextRange* pRange1, const SwXTextCursor* pCursor1)throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException); + // + void Invalidate() {bObjectValid = sal_False;} + BOOL IsValid()const {return bObjectValid;} + + CursorType GetTextType() {return eCrsrType;} +}; + +/* -----------------03.12.98 12:16------------------- + * + * --------------------------------------------------*/ +class SwXTextCursor : public cppu::WeakImplHelper10 +< + ::com::sun::star::text::XSentenceCursor, + ::com::sun::star::text::XWordCursor, + ::com::sun::star::text::XParagraphCursor, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::beans::XPropertyState, + ::com::sun::star::document::XDocumentInsertable, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::util::XSortable, + ::com::sun::star::container::XContentEnumerationAccess +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + SwSortOptions* pLastSortOptions; + + CursorType eType; + + void DeleteAndInsert(const String& rText); + +public: + SwXTextCursor(::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent, const SwPosition& rPos, + CursorType eSet, SwDoc* pDoc, const SwPosition* pMark = 0); + SwXTextCursor(::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent, SwUnoCrsr* pSourceCrsr, CursorType eSet = CURSOR_ALL); + //invalid Cursor! + SwXTextCursor(SwXText* pParent = 0); + virtual ~SwXTextCursor(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XTextCursor - neu + virtual void SAL_CALL collapseToStart( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL collapseToEnd( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL isCollapsed( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL goLeft( sal_Int16 nCount, BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL goRight( sal_Int16 nCount, BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL gotoStart( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL gotoEnd( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL gotoRange( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange >& xRange, BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + + //XWordCursor - neu + virtual BOOL SAL_CALL isStartOfWord( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL isEndOfWord( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoNextWord( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoPreviousWord( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoEndOfWord( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoStartOfWord( BOOL bExpand ) throw(::com::sun::star::uno::RuntimeException); + + //XSentenceCursor - neu + virtual BOOL SAL_CALL isStartOfSentence( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL isEndOfSentence( ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoNextSentence( BOOL Expand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoPreviousSentence( BOOL Expand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoStartOfSentence( BOOL Expand ) throw(::com::sun::star::uno::RuntimeException); + virtual BOOL SAL_CALL gotoEndOfSentence( BOOL Expand ) throw(::com::sun::star::uno::RuntimeException); + + //XLineCursor - alt +// virtual BOOL goDown(sal_uInt16 nCount, BOOL Expand); +// virtual BOOL goUp(sal_uInt16 nCount, BOOL Expand); +// virtual BOOL isAtStartOfLine(void); +// virtual BOOL isAtEndOfLine(void); +// virtual void gotoEndOfLine(BOOL Expand); +// virtual void gotoStartOfLine(BOOL Expand); + + //ParagraphCursor - neu + virtual BOOL SAL_CALL isStartOfParagraph(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL isEndOfParagraph(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL gotoStartOfParagraph(BOOL Expand) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL gotoEndOfParagraph(BOOL Expand) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL gotoNextParagraph(BOOL Expand) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL gotoPreviousParagraph(BOOL Expand) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + static void SwXTextCursor::SetPropertyValue( SwPaM& rPaM, const SfxItemPropertySet& rPropSet, const rtl::OUString& rPropertyName, const ::com::sun::star::uno::Any& aValue) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + static ::com::sun::star::uno::Any SwXTextCursor::GetPropertyValue( SwPaM& rPaM, const SfxItemPropertySet& rPropSet, const ::rtl::OUString& rPropertyName) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + static ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SwXTextCursor::GetPropertyStates( SwPaM& rPaM, SfxItemPropertySet& rPropSet, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& PropertyNames) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + static ::com::sun::star::beans::PropertyState SwXTextCursor::GetPropertyState( SwPaM& rPaM, SfxItemPropertySet& rPropSet, const ::rtl::OUString& rPropertyName) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + static void SwXTextCursor::SetPropertyToDefault( SwPaM& rPaM, const SfxItemPropertySet& rPropSet, const rtl::OUString& rPropertyName) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + static ::com::sun::star::uno::Any SwXTextCursor::GetPropertyDefault( SwPaM& rPaM, const SfxItemPropertySet& rPropSet, const ::rtl::OUString& rPropertyName) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertySetCloner - alt +// virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > cloneProperties(void); +// virtual void applyProperties(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > & PropertySet); + + //XDocumentInsertable - neu + virtual void SAL_CALL insertDocumentFromURL(const rtl::OUString& rURL, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aOptions) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException ); + + //XAutoTextInsertable - alt +// virtual void insertAutoTextEntry(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XAutoTextEntry > & ::com::sun::star::text::AutoTextEntry); + + //XSortable - neu + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL createSortDescriptor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL sort(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xDescriptor) throw( ::com::sun::star::uno::RuntimeException ); + + //XContentEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createContentEnumeration(const rtl::OUString& aServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getAvailableServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + const SwPaM* GetPaM() const; + const SwDoc* GetDoc()const; + SwDoc* GetDoc(); + SwUnoCrsr* GetCrsr(){return (SwUnoCrsr*)GetRegisteredIn();} + const SwUnoCrsr* GetCrsr()const{return (SwUnoCrsr*)GetRegisteredIn();} + + static void SetCrsrAttr(SwPaM& rPam, const SfxItemSet& rSet, BOOL bTableMode = sal_False); + static void GetCrsrAttr(SwPaM& rPam, SfxItemSet& rSet, BOOL bCurrentAttrOnly = FALSE); + static void getTextFromPam(SwPaM& aCrsr, rtl::OUString& rBuffer); + static SwFmtColl* GetCurTxtFmtColl(SwPaM& rPam, BOOL bConditional); + + static void SelectPam(SwPaM& rCrsr, sal_Bool bExpand); + static void SetString(SwUnoCrsr& rUnoCrsr, const rtl::OUString& rString); +}; + +/*-----------------20.03.98 07:47------------------- + +--------------------------------------------------*/ +/* das wird zunaechst nicht gebraucht - bisher fuer den XPropertySetCloner +class SwXPropertySet : public ::com::sun::star::beans::XPropertySet, + public UsrObject +{ + ::com::sun::star::uno::Sequence<::com::sun::star::uno::Any>* pAny; + ::com::sun::star::uno::Sequence< Property >* pInfo; + +public: + // Eigentumsuebergang der Pointer! + SwXPropertySet( ::com::sun::star::uno::Sequence<::com::sun::star::uno::Any>* pAny, + ::com::sun::star::uno::Sequence* pInfo ); + virtual ~SwXPropertySet(); + + SMART_UNO_DECLARATION( SwXPropertySet, UsrObject ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + +}; +/*-----------------20.03.98 08:26------------------- + +--------------------------------------------------*/ +/* das wird zunaechst nicht gebraucht - bisher fuer den XPropertySetCloner + +class SwXPropertySetInfo: public ::com::sun::star::beans::XPropertySetInfo, UsrObject +{ + ::com::sun::star::uno::Sequence< Property >* pSeq; + +public: + SwXPropertySetInfo( const ::com::sun::star::uno::Sequence& rInfo ); + virtual ~SwXPropertySetInfo(); + + SMART_UNO_DECLARATION( SwXPropertySetInfo, UsrObject ); + + virtual ::com::sun::star::uno::Sequence< Property > getProperties(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual Property getPropertyByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL hasPropertyByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); +}; + +/*-----------------20.02.98 08:45------------------- + +--------------------------------------------------*/ +typedef +cppu::WeakImplHelper5 +< + ::com::sun::star::text::XTextContent, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XNamed, + ::com::sun::star::lang::XUnoTunnel +> +SwRefBookmarkBaseClass; +class SwXBookmark : public SwRefBookmarkBaseClass, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SwDoc* pDoc; + String m_aName; + BOOL bIsDescriptor; + +public: + SwXBookmark(SwBookmark* pBkm = 0, SwDoc* pDoc = 0); + virtual ~SwXBookmark(); + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + SwBookmark* GetBookmark() const { return (SwBookmark*)GetRegisteredIn(); } + SwDoc* GetDoc(){return pDoc;} +}; + +/*-----------------23.02.98 10:45------------------- + +--------------------------------------------------*/ + +typedef cppu::WeakAggImplHelper2 +< + ::com::sun::star::container::XEnumerationAccess, + ::com::sun::star::lang::XServiceInfo +> SwXBodyTextBaseClass; +class SwXBodyText : public SwXBodyTextBaseClass, + public SwXText +{ +public: + SwXBodyText(SwDoc* pDoc); + virtual ~SwXBodyText(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(){OWeakObject::acquire();} + virtual void SAL_CALL release( ) throw(){OWeakObject::release();} + + //XAggregation + virtual ::com::sun::star::uno::Any SAL_CALL queryAggregation( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + + //XEnumerationAccess - frueher XParagraphEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > CreateTextCursor(BOOL bIgnoreTables = sal_False); +}; +/*-----------------23.02.98 12:05------------------- + +--------------------------------------------------*/ +class SwXTextRange : public cppu::WeakImplHelper6 +< + ::com::sun::star::text::XTextRange, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XContentEnumerationAccess, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::beans::XPropertyState +>, + public SwClient +{ + friend class SwXText; + enum RangePosition + { + RANGE_IN_TEXT, // 'normaler' ::com::sun::star::text::TextRange + RANGE_IN_FRAME,// TextPosition wurde mit einem Rahmen angelegt, der kein Uno-Objekt besitzt + RANGE_IN_CELL, // TextPosition wurde mit einer Zelle angelegt, die kein Uno-Objekt besitzt + RANGE_IS_TABLE, // Anker einer Tabelle + RANGE_INVALID // von NewInstance erzeugt + } eRangePosition; + + SwDoc* pDoc; + SwTableBox* pBox; + const SwStartNode* pBoxStartNode; + SwDepend aObjectDepend; //Format der Tabelle oder des Rahmens anmelden + SfxItemPropertySet aPropSet; + //SwDepend aFrameDepend; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + + + void _CreateNewBookmark(SwPaM& rPam); + //TODO: new exception type for protected content + void DeleteAndInsert(const String& rText) throw( ::com::sun::star::uno::RuntimeException ); + +public: + SwXTextRange(); + SwXTextRange(SwPaM& rPam, const ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > & rxParent); + SwXTextRange(SwFrmFmt& rFmt, SwPaM& rPam); + SwXTextRange(SwFrmFmt& rTblFmt, SwTableBox& rTblBox, SwPaM& rPam); + SwXTextRange(SwFrmFmt& rTblFmt, const SwStartNode& rStartNode, SwPaM& rPam); + SwXTextRange(SwFrmFmt& rTblFmt); + + virtual ~SwXTextRange(); + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XContentEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createContentEnumeration(const rtl::OUString& aServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getAvailableServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + BOOL GetPositions(SwPaM& rToFill) const; + const SwDoc* GetDoc()const {return pDoc;} + SwDoc* GetDoc(){return pDoc;} + + SwBookmark* GetBookmark() const { return (SwBookmark*)GetRegisteredIn(); } + + static BOOL XTextRangeToSwPaM( SwUnoInternalPaM& rToFill, + const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange); +}; + +/* -----------------15.05.98 08:29------------------- + * + * --------------------------------------------------*/ +typedef cppu::WeakImplHelper3 +< + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::lang::XServiceInfo +> +SwXTextRangesBaseClass; +class SwXTextRanges : public SwXTextRangesBaseClass, + public SwClient +{ + XTextRangeArr* pRangeArr; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + XTextRangeArr* GetRangesArray(); + SwUnoCrsr* GetCrsr() const { return (SwUnoCrsr*)GetRegisteredIn(); } +public: + SwXTextRanges(); + SwXTextRanges( SwUnoCrsr* pCrsr, ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent); + SwXTextRanges(SwPaM* pCrsr); + virtual ~SwXTextRanges(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + const SwUnoCrsr* GetCursor() const { return (const SwUnoCrsr*)GetRegisteredIn(); } +}; + +/*-----------------09.03.98 13:57------------------- + +--------------------------------------------------*/ +struct SwTextSectionProperties_Impl; +class SwXTextSection : public cppu::WeakImplHelper5 +< + ::com::sun::star::text::XTextSection, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XNamed, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + + BOOL m_bIsDescriptor; + String m_sName; + SwTextSectionProperties_Impl* pProps; +public: + SwXTextSection(SwSectionFmt* pFmt = 0); + virtual ~SwXTextSection(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + TYPEINFO(); + + //XTextSection + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextSection > SAL_CALL getParentSection(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextSection > > SAL_CALL getChildSections(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + SwSectionFmt* GetFmt()const {return (SwSectionFmt*)GetRegisteredIn();} + static SwXTextSection* GetImplementation(::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> xRef ); +}; +/*-----------------12.02.98 08:01------------------- + +--------------------------------------------------*/ +typedef +cppu::WeakImplHelper5 +< + ::com::sun::star::text::XFootnote, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XEnumerationAccess, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XUnoTunnel +> +SwXFootnoteBaseClass; +class SwXFootnote : public SwXFootnoteBaseClass, + public SwXText, + public SwClient +{ + friend class SwXFootnotes; + + SwEventListenerContainer aLstnrCntnr; + const SwFmtFtn* pFmtFtn; + BOOL m_bIsDescriptor; + String m_sLabel; + BOOL m_bIsEndnote; + +protected: + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > createCursor(); +public: + SwXFootnote(BOOL bEndnote); + SwXFootnote(SwDoc* pDoc, const SwFmtFtn& rFmt); + virtual ~SwXFootnote(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(){SwXFootnoteBaseClass::acquire();} + virtual void SAL_CALL release( ) throw(){SwXFootnoteBaseClass::release();} + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XFootnote + virtual rtl::OUString SAL_CALL getLabel(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setLabel(const rtl::OUString& aLabel) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + + //XEnumerationAccess - frueher XParagraphEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + const SwFmtFtn* FindFmt() const; + void Invalidate(); +}; + +/*-----------------07.04.98 08:10------------------- + +--------------------------------------------------*/ +class SwXParagraphEnumeration : public cppu::WeakImplHelper2 +< + ::com::sun::star::container::XEnumeration, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + + BOOL bFirstParagraph; + SwUnoCrsr* GetCrsr(){return (SwUnoCrsr*)GetRegisteredIn();} + CursorType eCursorType; +public: + SwXParagraphEnumeration(SwXText* pParent, SwPosition& rPos, CursorType eType); + SwXParagraphEnumeration(SwXText* pParent, SwUnoCrsr* pCrsr, CursorType eType); + virtual ~SwXParagraphEnumeration(); + + + //XEnumeration + virtual BOOL SAL_CALL hasMoreElements(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL nextElement(void) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; +/*-----------------07.04.98 08:15------------------- + +--------------------------------------------------*/ +SV_DECL_PTRARR(SwDependArr, SwDepend*, 2, 2); +class SwXParagraph : public cppu::WeakImplHelper8 +< + ::com::sun::star::text::XTextRange, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::beans::XPropertyState, + ::com::sun::star::container::XEnumerationAccess, + ::com::sun::star::text::XTextContent, + ::com::sun::star::container::XContentEnumerationAccess +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + rtl::OUString m_sText; + BOOL m_bIsDescriptor; + + SwUnoCrsr* GetCrsr(){return (SwUnoCrsr*)GetRegisteredIn();} +public: + SwXParagraph(); + SwXParagraph(SwXText* pParent, SwUnoCrsr* pCrsr); + virtual ~SwXParagraph(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XEnumerationAccess - war XTextPortionEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XContentEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createContentEnumeration(const rtl::OUString& aServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getAvailableServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + BOOL IsDescriptor() const {return m_bIsDescriptor;} + + static BOOL getDefaultTextContentValue(::com::sun::star::uno::Any& rAny, + const rtl::OUString& rPropertyName, USHORT nWID = 0); + static SwXParagraph* GetImplementation(::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> xRef ); + //falls es mal als Service erzeugt werden kann + //void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + void attachToText(SwXText* pParent, SwUnoCrsr* pCrsr); +}; +/* -----------------23.03.99 12:57------------------- + * + * --------------------------------------------------*/ +#define PARAFRAME_PORTION_PARAGRAPH 0 +#define PARAFRAME_PORTION_CHAR 1 +#define PARAFRAME_PORTION_TEXTRANGE 2 + +class SwXParaFrameEnumeration : public cppu::WeakImplHelper2 +< + ::com::sun::star::container::XEnumeration, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xNextObject; //hasMoreElements legt das Objekt schon an + SwDependArr aFrameArr; //wird im Ctor gefuellt + + SwUnoCrsr* GetCrsr(){return (SwUnoCrsr*)GetRegisteredIn();} + BOOL CreateNextObject(); + void FillFrame(SwUnoCrsr& rUnoCrsr); +public: + SwXParaFrameEnumeration(const SwUnoCrsr& rUnoCrsr, sal_uInt8 nParaFrameMode, SwFrmFmt* pFmt = 0); + ~SwXParaFrameEnumeration(); + + //XEnumeration + virtual BOOL SAL_CALL hasMoreElements(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL nextElement(void) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; +/* -----------------29.05.98 14:42------------------- + * + * --------------------------------------------------*/ + +class SwXTextPortionEnumeration : public cppu::WeakImplHelper3 +< + ::com::sun::star::container::XEnumeration, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + XTextRangeArr aPortionArr; //all portions are created in the ctor + SwDependArr aFrameArr; //wird im Ctor gefuellt - mit am Zeichen gebundenen Rahmen + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent; + BOOL bAtEnd; + BOOL bFirstPortion; + + + SwUnoCrsr* GetCrsr() const { return (SwUnoCrsr*)GetRegisteredIn(); } + SwXTextPortionEnumeration(); + void CreatePortions(); +public: + SwXTextPortionEnumeration(SwPaM& rParaCrsr, + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent); + virtual ~SwXTextPortionEnumeration(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XEnumeration + virtual BOOL SAL_CALL hasMoreElements(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL nextElement(void) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; + +/* -----------------29.05.98 14:42------------------- + * Keine Anmeldung am Feld - Das Feld muss am Cursor stehen + * --------------------------------------------------*/ +enum SwTextPortionType +{ + PORTION_TEXT, + PORTION_FIELD, + PORTION_FRAME, + PORTION_FOOTNOTE, + PORTION_CONTROL_CHAR, + PORTION_REFMARK_START, + PORTION_REFMARK_END, + PORTION_TOXMARK_START, + PORTION_TOXMARK_END, + PORTION_BOOKMARK_START, + PORTION_BOOKMARK_END +}; + +class SwXTextPortion : public cppu::WeakImplHelper6 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::text::XTextRange, + ::com::sun::star::text::XTextField, + ::com::sun::star::beans::XPropertyState, + ::com::sun::star::container::XContentEnumerationAccess, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParentText; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xRefMark; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xTOXMark; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xBookmark; + ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xFootnote; + const SwFmtFld* pFmtFld; + SwDepend aFrameDepend; + SwFrmFmt* pFrameFmt; + SwTextPortionType ePortionType; + sal_Int16 nControlChar; + + BOOL bIsCollapsed; + + SwFmtFld* GetFldFmt(BOOL bInit = sal_False); + SwUnoCrsr* GetCrsr() const { return (SwUnoCrsr*)GetRegisteredIn(); } +public: + SwXTextPortion(const SwUnoCrsr* pPortionCrsr, ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent, SwTextPortionType eType ); + SwXTextPortion(const SwUnoCrsr* pPortionCrsr, ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > xParent, SwFrmFmt& rFmt ); + virtual ~SwXTextPortion(); + + //XTextRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XText > SAL_CALL getText(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getStart(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getEnd(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XTextField + virtual rtl::OUString SAL_CALL getPresentation(BOOL bShowCommand) throw( ::com::sun::star::uno::RuntimeException ); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XContentEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createContentEnumeration(const rtl::OUString& aServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getAvailableServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void SetRefMark( ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xMark) + {xRefMark = xMark;} + + void SetTOXMark( ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xMark) + {xTOXMark = xMark;} + + void SetBookmark( ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xMark) + {xBookmark = xMark;} + + void SetFootnote( ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextContent > xMark) + {xFootnote = xMark;} + + void SetControlChar(sal_Int16 nSet) {nControlChar = nSet;} + + void SetIsCollapsed(BOOL bSet) { bIsCollapsed = bSet;} + + //falls es mal als service erzeugt werden kann + //void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); +}; +/* -----------------29.09.98 09:01------------------- + * + * --------------------------------------------------*/ +/* os: 04.12.98 11:40 hier gibt es noch keine sinnvolle Definition +#define MAX_SORT_FIELDS 3 // das ist eher willkuerlich (wie im Dialog) +class SwXTextSortDescriptor : public XTextSortDescriptor, + public UsrObject +{ + SwSortOptions aSortOptions; + BOOL bUseHeader; +public: + SwXTextSortDescriptor(BOOL bUsedInTable); + virtual ~SwXTextSortDescriptor(); + + //XTextSortDescriptor + virtual sal_Unicode getTextColumnSeparator(void) const; + virtual void setTextColumnSeparator(sal_Unicode TextColumnSeparator_); + + //XSortDescriptor + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::util::SortField > getSortFields(void) const; + virtual void setSortFields(const ::com::sun::star::uno::Sequence< ::com::sun::star::util::SortField >& SortFields_); + virtual sal_uInt16 getMaxFieldCount(void) const; + virtual ColumnsOrRows getOrientation(void) const; + virtual void setOrientation(ColumnsOrRows Orientation_); + virtual BOOL getUseHeader(void) const; + virtual void setUseHeader(BOOL UseHeader_); + + const SwSortOptions& GetSortOptions() const {return aSortOptions;} + void SetSortOptions(const SwSortOptions& rSortOpt); +}; +*/ +/* -----------------25.08.98 11:02------------------- + * + * --------------------------------------------------*/ +typedef +cppu::WeakImplHelper2 +< + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XEnumerationAccess +> +SwXHeadFootTextBaseClass; +class SwXHeadFootText : public SwXHeadFootTextBaseClass, + public SwXText, + public SwClient +{ + SwFrmFmt* GetFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + BOOL bIsHeader; +protected: + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > createCursor(); +public: + SwXHeadFootText(SwFrmFmt& rHeadFootFmt, BOOL bHeader); + ~SwXHeadFootText(); + + TYPEINFO(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(){SwXHeadFootTextBaseClass::acquire();} + virtual void SAL_CALL release( ) throw(){SwXHeadFootTextBaseClass::release();} + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XEnumerationAccess - frueher XParagraphEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; +/* -----------------27.08.98 15:11------------------- + * + * --------------------------------------------------*/ +class SwXReferenceMark : public SwRefBookmarkBaseClass, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SwDoc* pDoc; + const SwFmtRefMark* pMark; + String sMarkName; + BOOL m_bIsDescriptor; + + BOOL IsValid() const {return 0 != GetRegisteredIn();} + void InsertRefMark(SwPaM& rPam, SwDoc* pDoc); +public: + SwXReferenceMark(SwDoc* pDoc, const SwFmtRefMark* pMark); + ~SwXReferenceMark(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + const SwFmtRefMark* GetMark()const {return pMark;} + const String& GetMarkName() const {return sMarkName;} + SwDoc* GetDoc() const{return pDoc;} + void Invalidate(); +}; +/* -----------------01.09.98 16:09------------------- + * + * --------------------------------------------------*/ +// os: 04.12.98 11:44 - keine Definition +//class SwXRedline : public XRedline, +/* +class SwXRedline : public XRedline, + public UsrObject, + public SwClient +{ + SwDoc* pDoc; + const SwRedline* pRedline; + + BOOL IsValid() const; +public: + SwXRedline(SwDoc* pDoc, const SwRedline* pRedline); + virtual ~SwXRedline(); + + //XRedline + virtual sal_uInt16 getActionType(void) const; + virtual rtl::OUString getAuthor(void) const; + virtual ::com::sun::star::util::DateTime getCreationDateTime(void) const; + virtual rtl::OUString getDescription(void) const; + virtual void setDescription(const rtl::OUString& Description_); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; + + +*/ +#endif + + diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx new file mode 100644 index 000000000000..b50df4f3296b --- /dev/null +++ b/sw/inc/unoprnms.hxx @@ -0,0 +1,536 @@ +/************************************************************************* + * + * $RCSfile: unoprnms.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOPRNMS_HXX +#define _UNOPRNMS_HXX + + +#ifndef _SAL_TYPES_H_ +#include +#endif +#ifndef _SOLAR_H +#include +#endif + +struct SwPropNameLen +{ + const char* pName; + USHORT nNameLen; + SwPropNameLen(const char* pString, USHORT nLen) : + pName(pString), + nNameLen(nLen){} + + operator const char*()const {return pName;} +}; +#define SW_PROP_NAME(aPropName) aPropName.pName, aPropName.nNameLen + +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOLLOW_STYLE; + +//extern const sal_Char* __FAR_DATA UNO_NAME_FOLLOW_STYLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_PHYSICAL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_AUTO_UPDATE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DISPLAY_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FONT_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FONT_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FONT_FAMILY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FONT_CHAR_SET ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FONT_PITCH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_GRAPHIC_URL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_GRAPHIC_FILTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_GRAPHIC_URL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_GRAPHIC_FILTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_GRAPHIC_URL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_GRAPHIC_FILTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACK_GRAPHIC_URL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACK_GRAPHIC_FILTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACK_GRAPHIC_LOCATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACK_GRAPHIC_BITMAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_URL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_FILTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_LOCATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_SIZE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_BITMAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BULLET_FONT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_GRAPHIC_LOCATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_GRAPHIC_LOCATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_GRAPHIC_LOCATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LEFT_PARA_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_RIGHT_PARA_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LEFT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_RIGHT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LEFT_MARGIN_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_RIGHT_MARGIN_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_FIRST_LINE_INDENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_FIRST_LINE_INDENT_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_IS_HYPHENATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_HYPHENATION_MAX_LEADING_CHARS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_HYPHENATION_MAX_TRAILING_CHARS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_HYPHENATION_MAX_HYPHENS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEFT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RIGHT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_LEFT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_RIGHT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_LEFT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_RIGHT_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_RANGE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_ALIGNMENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BULLET_FONT_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BULLET_ID ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ANCHOR_CHAR_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SUFFIX ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PREFIX ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARENT_NUMBERING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_START_WITH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_POSTURE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_WEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_AUTO_KERNING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_UNDERLINE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_ESCAPEMENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_CASE_MAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_SHADOWED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_STRIKEOUT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_CROSSED_OUT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_NO_HYPHENATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_AUTO_ESCAPEMENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_PROP_FONT_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_DIFF_FONT_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_ESCAPEMENT_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_FLASH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_KERNING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_LOCALE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_BACK_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_TRANSPARENT_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LINE_SPACING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_TOP_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_BOTTOM_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_TOP_MARGIN_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_BOTTOM_MARGIN_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_EXPAND_SINGLE_WORD ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_END_NOTICE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_EMBEDDED_OBJECTS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ALPHABETICAL_SEPARATORS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACKGROUND_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BEGIN_NOTICE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CASE_SENSITIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FRAME_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_LEVEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_START_VALUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_IS_NUMBER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_COMBINE_ENTRIES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_COUNT_LINES_IN_FRAMES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DDE_COMMAND_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DDE_COMMAND_FILE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DDE_COMMAND_ELEMENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_AUTOMATIC_UPDATE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DEFAULT_TABSTOP_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DROP_CAP_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DROP_CAP_WHOLE_WORD ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DROP_CAP_CHAR_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILE_LINK ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHICS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_PROTECTED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_KEY_AS_ENTRY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_KEEP_TOGETHER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_KEEP_TOGETHER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LANDSCAPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LINE_SEPARATOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_MARKS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBER_POSITION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_OUTLINES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGE_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGE_STYLE_LAYOUT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_ADJUST ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_REGISTER_MODE_ACTIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LAST_LINE_ADJUST ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LINE_NUMBER_COUNT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_LINE_NUMBER_START_VALUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BACK_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_BACK_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_WIDOWS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_ORPHANS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_TRANSPARENT_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_POSITION_END_OF_DOC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_POSITION_PROTECTED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ALTERNATIVE_TEXT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRIMARY_KEY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_TABLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_GRAPHICS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_REVERSED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_PROSPECT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_CONTROLS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_DRAWINGS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRING_RIGHT_PAGES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_BLACK_FONTS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINTER_PAPER_TRAY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_PAGE_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_ANNOTATION_MODE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REGISTER_MODE_ACTIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RELATIVE_WIDTH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RELATIVE_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REPEAT_HEADLINE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_BACKWARDS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_SIMILARITY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_IN_SELECTION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_CASE_SENSITIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_SIMILARITY_ADD ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_SIMILARITY_RELAX ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_SIMILARITY_REMOVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_REGULAR_EXPRESSION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_SIMILARITY_EXCHANGE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SECONDARY_KEY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEPARATOR_LINE_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_BREAKS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_SPACES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_TABLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_GRAPHICS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_DRAWINGS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_TABSTOPS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_VERT_RULER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_PARA_BREAKS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_HIDDEN_TEXT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_ANNOTATIONS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_SOFT_HYPHENS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_VERT_SCROLL_BAR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_HORI_SCROLL_BAR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_FIELD_COMMANDS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_TEXT_BOUNDARIES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_PROTECTED_SPACES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_TABLE_BOUNDARIES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_HIDDEN_PARAGRAPHS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_INDEX_MARK_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_FOOTNOTE_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_TEXT_FIELD_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SIZE_RELATIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SIZE_PROTECTED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SMOOTH_SCROLLING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SOLID_MARK_HANDLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_FRAMES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_COLUMNS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TRANSPARENT_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_PP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USER_METRIC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ANCHOR_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ANCHOR_TYPES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ANCHOR_PAGE_NO ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_AUTHOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BREAK_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAIN_NEXT_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAIN_PREV_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAPTER_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CLIENT_MAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CONDITION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_CONTOURED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CONTOUR_OUTSIDE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CONTENT_PROTECTED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_COUNT_EMPTY_LINES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DATA_BASE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DATA_TABLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DATA_COLUMN_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_DATA_BASE_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DATE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DATETIME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_DATE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_EDIT_IN_READONLY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FALSE_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILE_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_FIXED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTNOTE_COUNTING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FORMULA ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FRAME_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FULL_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_AUTO_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SIZE_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HINT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HORI_ORIENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HORI_MIRRORED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HORI_ORIENT_RELATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HORI_ORIENT_POSITION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HYPER_LINK_U_R_L ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HYPER_LINK_TARGET ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HYPER_LINK_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_INFO_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_INFO_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_INPUT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEVEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LINE_INTERVAL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LINK_REGION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_MACRO ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_MIRROR_PAGE_TOGGLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SPLIT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_SPLIT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBER_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_RULES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_OFFSET ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ON ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_OPAQUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGE_TOGGLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGE_DESC_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGE_NUMBER_OFFSET ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PLACEHOLDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PLACEHOLDER_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PRINT_LEFT_PAGES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REFERENCE_FIELD_PART ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REFERENCE_FIELD_SOURCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REGISTER_PARAGRAPH_STYLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SCRIPT_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_ALL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEARCH_WORDS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEQUENCE_VALUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SERVER_MAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SET_NUMBER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHADOW_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_HORI_RULER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SIZE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ACTUAL_SIZE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SOURCE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_START_AT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_STATISTIC_TYPE_ID ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SUB_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SURROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_EXPRESSION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_SHOW_FORMULA ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_WRAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SURROUND_CONTOUR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SURROUND_ANCHORONLY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABSTOPS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TITLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TOP_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BOTTOM_MARGIN ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TRUE_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_URL_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USERTEXT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USER_DATA_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VALUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VARIABLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VARIABLE_SUBTYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VERT_ORIENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VERT_MIRRORED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VERT_ORIENT_POSITION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VERT_ORIENT_RELATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_VISIBLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_WIDTH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_WORD_MODE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_GRAPHIC_CROP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHARACTER_FORMAT_NONE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_POSITION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DOCUMENT_INDEX_MARK ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DOCUMENT_INDEX ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_FIELD ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BOOKMARK ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_TABLE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CELL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_FRAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REFERENCE_MARK ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_SECTION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTNOTE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ENDNOTE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHART_ROW_AS_LABEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHART_COLUMN_AS_LABEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLE_COLUMS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEFT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RIGHT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TOP_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BOTTOM_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEFT_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RIGHT_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TOP_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_BOTTOM_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLE_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLE_COLUMN_SEPARATORS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_TABLE_COLUMN_RELATIVE_SUM ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_TEXT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_TEXT_LEFT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_TEXT_RIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_TEXT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_TEXT_LEFT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_TEXT_RIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_BACK_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_GRAPHIC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_TRANSPARENT_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_LEFT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_RIGHT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_TOP_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_BOTTOM_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_SHADOW_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_BODY_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_IS_DYNAMIC_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_SHARE_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADER_ON ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_BACK_COLOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_GRAPHIC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_TRANSPARENT_BACKGROUND ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_LEFT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_RIGHT_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_TOP_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_BOTTOM_BORDER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_BORDER_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_SHADOW_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_BODY_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_IS_DYNAMIC_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_SHARE_CONTENT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_HEIGHT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FOOTER_ON ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_OVERWRITE_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LOAD_NUMBERING_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LOAD_PAGE_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LOAD_FRAME_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LOAD_TEXT_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILTER_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILTER_OPTION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PASSWORD ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_COPY_COUNT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_COLLATE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SORT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PAGES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FIRST_LINE_OFFSET ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SYMBOL_TEXT_DISTANCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USER_INDEX_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REVISION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_UNVISITED_CHAR_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_VISITED_CHAR_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARAGRAPH_COUNT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_WORD_COUNT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_WORD_SEPARATOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHARACTER_COUNT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ZOOM_VALUE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ZOOM_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_MARKS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_OUTLINE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARAGRAPH_STYLE_NAMES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_CHAPTER ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_LABELS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_ALPHABETICAL_SEPARATORS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_KEY_AS_ENTRY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_COMBINED_ENTRIES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_CASE_SENSITIVE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_P_P ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_DASH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_UPPER_CASE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LABEL_CATEGORY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LABEL_DISPLAY_TYPE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USE_LEVEL_FROM_SOURCE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEVEL_FORMAT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_LEVEL_PARAGRAPH_STYLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RECALC_TAB_STOPS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_MAIN_ENTRY_CHARACTER_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_TABLES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_TEXT_FRAMES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_GRAPHIC_OBJECTS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_EMBEDDED_OBJECTS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_STAR_MATH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_STAR_IMAGE ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_STAR_CHART ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_STAR_CALC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_STAR_DRAW ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CREATE_FROM_OTHER_EMBEDDED_OBJECTS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_INDEX_AUTO_MARK_FILE_U_R_L ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_COMMA_SEPARATED ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_CHANGES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_RECORD_CHANGES ; +extern const SwPropNameLen __FAR_DATA UNO_LINK_DISPLAY_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_LINK_DISPLAY_BITMAP ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_HEADING_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SHOW_ONLINE_LAYOUT ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_USER_DEFINED_ATTRIBUTES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_USER_DEFINED_ATTRIBUTES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAR_USER_DEFINED_ATTRIBUTES ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_FILE_PATH ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_CHAPTER_NUMBERING_LEVEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_PARA_CONDITIONAL_STYLE_NAME ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CHAPTER_NUMBERING_LEVEL ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_NUMBERING_SEPARATOR ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_CONTINUOUS_NUMBERING ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_AUTOMATIC ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_ABSOLUTE_MARGINS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CATEGORY ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_DEPENDENT_TEXT_FIELDS ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CURRENT_PRESENTATION ; +extern const SwPropNameLen __FAR_DATA UNO_NAME_ADJUST ; + +extern const SwPropNameLen __FAR_DATA UNO_NAME_TEXT_PORTION_TYPE; +extern const SwPropNameLen __FAR_DATA UNO_NAME_CONTROL_CHARACTER; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_COLLAPSED; +extern const SwPropNameLen __FAR_DATA UNO_NAME_IS_START; +extern const SwPropNameLen __FAR_DATA UNO_NAME_SEQUENCE_NUMBER; +extern const SwPropNameLen __FAR_DATA UNO_NAME_REFERENCE_ID; +#endif + + diff --git a/sw/inc/unosett.hxx b/sw/inc/unosett.hxx new file mode 100644 index 000000000000..deebd8f59cbb --- /dev/null +++ b/sw/inc/unosett.hxx @@ -0,0 +1,326 @@ +/************************************************************************* + * + * $RCSfile: unosett.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOSETT_HXX +#define _UNOSETT_HXX + +#include +#ifndef _CALBCK_HXX //autogen +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTCOLUMNS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XINDEXREPLACE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_PROPERTYVALUE_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE2_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE4_HXX_ +#include // helper for implementations +#endif +#ifndef _STRING_HXX +#include +#endif + +class SwDoc; +class SwFmtCol; +class SwDocShell; +class SwNumRule; +struct SfxItemPropertyMap; + +/****************************************************************************** + * + ******************************************************************************/ +/* -----------------04.05.98 12:28------------------- + * + * --------------------------------------------------*/ +class SwXFootnoteProperties : public cppu::WeakAggImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +> +{ + SwDoc* pDoc; + const SfxItemPropertyMap* _pMap; + +public: + SwXFootnoteProperties(SwDoc* pDoc); + virtual ~SwXFootnoteProperties(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void Invalidate() {pDoc = 0;} +}; + +/* -----------------04.05.98 12:28------------------- + * + * --------------------------------------------------*/ +class SwXEndnoteProperties : public cppu::WeakAggImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +> +{ + SwDoc* pDoc; + const SfxItemPropertyMap* _pMap; + +public: + SwXEndnoteProperties(SwDoc* pDoc); + virtual ~SwXEndnoteProperties(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void Invalidate() {pDoc = 0;} +}; + +/* -----------------04.05.98 12:28------------------- + * + * --------------------------------------------------*/ +class SwXLineNumberingProperties : public cppu::WeakAggImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +> +{ + SwDoc* pDoc; + const SfxItemPropertyMap* _pMap; +public: + SwXLineNumberingProperties(SwDoc* pDoc); + virtual ~SwXLineNumberingProperties(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void Invalidate() {pDoc = 0;} +}; + +/* -----------------25.05.98 08:21------------------- + * + * --------------------------------------------------*/ +class SwXNumberingRules : public cppu::WeakAggImplHelper4 +< + ::com::sun::star::container::XIndexReplace, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + String sNewCharStyleNames[MAXLEVEL]; + String sNewBulletFontNames[MAXLEVEL]; + String sCreatedNumRuleName; //connects to a numbering in SwDoc + SwDoc* pDoc; // wird nur fuers anmelden gebraucht + SwDocShell* pDocShell; //nur, wenn als ChapterNumbering verwendet + SwNumRule* pNumRule; + const SfxItemPropertyMap* _pMap; + + static String sInvalidStyle; + +public: + SwXNumberingRules(); + SwXNumberingRules(SwDocShell& rDocSh); // chapter numbering + SwXNumberingRules(const SwNumRule& rRule); // NumRule for paragraphs, numbering styles + SwXNumberingRules(SwDoc& rDoc); //create a new instance + SwXNumberingRules(SwDoc& rDoc, const String& rName); //XML import + virtual ~SwXNumberingRules(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & SwXNumberingRules::getUnoTunnelId(); + + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + + //XIndexReplace + virtual void SAL_CALL replaceByIndex( sal_Int32 Index, const ::com::sun::star::uno::Any& Element ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue> getNumberingRuleByIndex(const SwNumRule& rNumRule, sal_Int32 nIndex)const; + void setNumberingRuleByIndex(SwNumRule& rNumRule, + const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue>& rProperties, sal_Int32 nIndex) + throw( ::com::sun::star::uno::RuntimeException, ::com::sun::star::lang::IllegalArgumentException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + const String* GetNewCharStyleNames() const {return sNewCharStyleNames;} + const String* GetBulletFontNames() const {return sNewBulletFontNames;} + const SwNumRule* GetNumRule() {return pNumRule;} + + static const String& GetInvalidStyle(); + void Invalidate() {pDocShell = 0;} +}; +/*-----------------12.02.98 08:27------------------- + +--------------------------------------------------*/ +class SwXChapterNumbering : public SwXNumberingRules +{ +public: + SwXChapterNumbering(SwDocShell& rDocSh); + virtual ~SwXChapterNumbering(); + + void Invalidate() {SwXNumberingRules::Invalidate();} + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + +}; + +/* -----------------27.05.98 15:44------------------- + * + * --------------------------------------------------*/ +class SwXTextColumns : public cppu::WeakAggImplHelper2 +< + ::com::sun::star::text::XTextColumns, + ::com::sun::star::lang::XServiceInfo +> +{ + sal_uInt32 nReference; + ::com::sun::star::uno::Sequence< ::com::sun::star::text::TextColumn> aTextColumns; + +public: + SwXTextColumns(const SwFmtCol& rFmtCol); + virtual ~SwXTextColumns(); + + //XTextColumns + virtual sal_Int32 SAL_CALL getReferenceValue( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Int16 SAL_CALL getColumnCount( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setColumnCount( sal_Int16 nColumns ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::text::TextColumn > SAL_CALL getColumns( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setColumns( const ::com::sun::star::uno::Sequence< ::com::sun::star::text::TextColumn >& Columns ) throw(::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; +#endif + + diff --git a/sw/inc/unosrch.hxx b/sw/inc/unosrch.hxx new file mode 100644 index 000000000000..d45ca317c865 --- /dev/null +++ b/sw/inc/unosrch.hxx @@ -0,0 +1,171 @@ +/************************************************************************* + * + * $RCSfile: unosrch.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOSRCH_HXX +#define _UNOSRCH_HXX + +#ifndef _COM_SUN_STAR_UTIL_XPROPERTYREPLACE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE3_HXX_ +#include // helper for implementations +#endif +#ifndef _STRING_HXX +#include +#endif + +/****************************************************************************** + * + ******************************************************************************/ +struct SfxItemPropertyMap; +class SwXTextDocument; +class SwSearchProperties_Impl; +class SfxItemSet; +/*-----------------19.12.97 12:58------------------- + +--------------------------------------------------*/ +class SwXTextSearch : public cppu::WeakImplHelper3 +< + ::com::sun::star::util::XPropertyReplace, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel +> +{ + friend class SwXTextDocument; + + String sSearchText; + String sReplaceText; + + SwSearchProperties_Impl* pSearchProperties; + SwSearchProperties_Impl* pReplaceProperties; + + + const SfxItemPropertyMap* _pMap; + sal_Bool bAll : 1; + sal_Bool bWord : 1; + sal_Bool bBack : 1; + sal_Bool bExpr : 1; + sal_Bool bCase : 1; +// sal_Bool bInSel: 1; // wie geht Suchen in Selektionen? + sal_Bool bStyles:1; + sal_Bool bSimilarity : 1; + sal_Bool bLevRelax :1; + sal_Int16 nLevExchange; + sal_Int16 nLevAdd; + sal_Int16 nLevRemove; + + sal_Bool bIsValueSearch :1; + +public: + SwXTextSearch(); + virtual ~SwXTextSearch(); + + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XSearchDescriptor + virtual ::rtl::OUString SAL_CALL getSearchString( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setSearchString( const ::rtl::OUString& aString ) throw(::com::sun::star::uno::RuntimeException); + + //XReplaceDescriptor + virtual ::rtl::OUString SAL_CALL getReplaceString(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setReplaceString(const ::rtl::OUString& aReplaceString) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyReplace + virtual sal_Bool SAL_CALL getValueSearch(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setValueSearch(sal_Bool ValueSearch_) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > SAL_CALL getSearchAttributes(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setSearchAttributes(const ::com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& aSearchAttribs) throw( ::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue > SAL_CALL getReplaceAttributes(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setReplaceAttributes(const ::com::sun::star::uno::Sequence< com::sun::star::beans::PropertyValue >& aSearchAttribs) throw( ::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual ::rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const ::rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void FillSearchItemSet(SfxItemSet& rSet) const; + void FillReplaceItemSet(SfxItemSet& rSet) const; + + sal_Bool HasSearchAttributes() const; + sal_Bool HasReplaceAttributes() const; + +}; + +#endif + diff --git a/sw/inc/unostyle.hxx b/sw/inc/unostyle.hxx new file mode 100644 index 000000000000..8cc7da507600 --- /dev/null +++ b/sw/inc/unostyle.hxx @@ -0,0 +1,324 @@ +/************************************************************************* + * + * $RCSfile: unostyle.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOSTYLE_HXX +#define _UNOSTYLE_HXX + +#ifndef _SFXSTYLE_HXX //autogen +#include +#endif +#ifndef _SFXLSTNER_HXX //autogen +#include +#endif +#ifndef _UNOCOLL_HXX +#include +#endif +#ifndef _UNOMAP_HXX +#include +#endif +#ifndef _COM_SUN_STAR_STYLE_XSTYLE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LANG_XUNOTUNNEL_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_STYLE_XSTYLELOADER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CONTAINER_XNAMECONTAINER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSTATE_HPP_ +#include +#endif +#ifndef _CPPUHELPER_IMPLBASE5_HXX_ +#include // helper for implementations +#endif + +class SwDocShell; +struct SfxItemPropertyMap; +class SwXStyle; +class SwStyleProperties_Impl; +class SwStartNode; +/****************************************************************************** + * + ******************************************************************************/ +/*-----------------12.02.98 08:27------------------- + +--------------------------------------------------*/ +class SwXStyleFamilies : public cppu::WeakImplHelper4 +< + ::com::sun::star::container::XIndexAccess, + ::com::sun::star::container::XNameAccess, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::style::XStyleLoader +>, + public SwUnoCollection +{ + SwDocShell* pDocShell; + + ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > * pxCharStyles; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > * pxParaStyles; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > * pxFrameStyles; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > * pxPageStyles; + ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > * pxNumberingStyles; + + sal_Bool bLoadStyleText : 1; + sal_Bool bLoadStyleFrame : 1; + sal_Bool bLoadStylePage : 1; + sal_Bool bLoadStyleOverwrite : 1; + sal_Bool bLoadStyleNumbering : 1; + +public: + SwXStyleFamilies(SwDocShell& rDocShell); + virtual ~SwXStyleFamilies(); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XStyleLoader + virtual void SAL_CALL loadStylesFromURL(const rtl::OUString& rURL, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aOptions) throw( ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getStyleLoaderOptions(void) throw( ::com::sun::star::uno::RuntimeException ); + + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + static const String& GetProgrammaticName(const String& rUIName, SfxStyleFamily eFamily); + static const String& GetUIName(const String& rProgrammaticName, SfxStyleFamily eFamily); +}; + +/* -----------------26.05.98 10:56------------------- + * + * --------------------------------------------------*/ +class SwXStyleFamily : public cppu::WeakImplHelper3 +< + ::com::sun::star::container::XNameContainer, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::container::XIndexAccess +>, + public SfxListener +{ + SfxStyleFamily eFamily; // Familie + SfxStyleSheetBasePool* pBasePool; +// const SfxItemPropertyMap* _pPropMap; + SwDocShell* pDocShell; + + SwXStyle* _FindStyle(const String& rStyleName) const; +public: + SwXStyleFamily(SwDocShell* pDocShell, sal_uInt16 nFamily); + ~SwXStyleFamily(); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XNameAccess + virtual ::com::sun::star::uno::Any SAL_CALL getByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getElementNames(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL hasByName(const rtl::OUString& Name) throw( ::com::sun::star::uno::RuntimeException ); + + //XNameContainer + virtual void SAL_CALL insertByName(const rtl::OUString& Name, const ::com::sun::star::uno::Any& Element) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::ElementExistException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL replaceByName(const rtl::OUString& Name, const ::com::sun::star::uno::Any& Element) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeByName(const rtl::OUString& Name) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //SfxListener + virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); +}; +/* -----------------20.05.98 09:51------------------- + * + * --------------------------------------------------*/ +class SwXStyle : public cppu::WeakImplHelper5 +< + ::com::sun::star::style::XStyle, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::beans::XPropertyState +>, + public SfxListener +{ + friend class SwXStyleFamily; + SwDoc* m_pDoc; + String sStyleName; + SfxStyleSheetBasePool* pBasePool; + SfxStyleFamily eFamily; // fuer Notify + + sal_Bool bIsDescriptor : 1; + sal_Bool bIsConditional : 1; + String sParentStyleName; + SwStyleProperties_Impl* pPropImpl; + + void ApplyDescriptorProperties(); +protected: + void Invalidate(); + + const SfxStyleSheetBasePool* GetBasePool() const {return pBasePool;} + SfxStyleSheetBasePool* GetBasePool() {return pBasePool;} + + void SetStyleName(const String& rSet){ sStyleName = rSet;} +public: + SwXStyle(SfxStyleFamily eFam = SFX_STYLE_FAMILY_PARA, BOOL bConditional = FALSE); + SwXStyle(SfxStyleSheetBasePool& rPool, SfxStyleFamily eFam, + SwDoc* pDoc, + const String& rStyleName);//, + //const SfxItemPropertyMap* _pMap); + ~SwXStyle(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XStyle + virtual sal_Bool SAL_CALL isUserDefined(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual sal_Bool SAL_CALL isInUse(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual rtl::OUString SAL_CALL getParentStyle(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setParentStyle(const rtl::OUString& aParentStyle) throw( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XPropertyState + virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SfxListener + virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); + + const String& GetStyleName() const { return sStyleName;} + SfxStyleFamily GetFamily() const {return eFamily;} + + sal_Bool IsDescriptor() const {return bIsDescriptor;} + sal_Bool IsConditional() const { return bIsConditional;} + const String& GetParentStyleName() const { return sParentStyleName;} + void SetDoc(SwDoc* pDc, SfxStyleSheetBasePool* pPool) + { + bIsDescriptor = sal_False; m_pDoc = pDc; + pBasePool = pPool; + StartListening(*pBasePool); + } +}; + +/* -----------------24.08.98 16:04------------------- + * + * --------------------------------------------------*/ +class SwXPageStyle : public SwXStyle +{ + SwDocShell* pDocShell; +public: + SwXPageStyle(SfxStyleSheetBasePool& rPool, SwDocShell* pDocSh, SfxStyleFamily eFam, + const String& rStyleName);//, + //const SfxItemPropertyMap* _pMap); + SwXPageStyle(SwDocShell* pDocSh); + ~SwXPageStyle(); + + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + const SwStartNode* GetStartNode(sal_Bool bHeader, sal_Bool bLeft); +}; +#endif + + diff --git a/sw/inc/unotbl.hxx b/sw/inc/unotbl.hxx new file mode 100644 index 000000000000..01cb5461b56f --- /dev/null +++ b/sw/inc/unotbl.hxx @@ -0,0 +1,584 @@ +/************************************************************************* + * + * $RCSfile: unotbl.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _UNOTBL_HXX +#define _UNOTBL_HXX + +#ifndef _UNOOBJ_HXX +#include +#endif +#ifndef _COM_SUN_STAR_CHART_XCHARTDATA_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_CHART_XCHARTDATAARRAY_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTTABLECURSOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TEXT_XTEXTTABLE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TABLE_XCELLRANGE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_TABLE_XAUTOFORMATTABLE_HPP_ +#include +#endif + +#ifndef _CPPUHELPER_IMPLBASE9_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE8_HXX_ +#include // helper for implementations +#endif +#ifndef _CPPUHELPER_IMPLBASE5_HXX_ +#include // helper for implementations +#endif + +class SwTableBoxFmt; +class SwTableLine; +class SwTableCursor; +class SwTableBoxFmt; +class SwTableLine; +class SwTableCursor; + +typedef +cppu::WeakImplHelper4 +< + ::com::sun::star::table::XCell, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::container::XEnumerationAccess +> +SwXCellBaseClass; +class SwXCell : public SwXCellBaseClass, + public SwXText, + public SwClient +{ + SfxItemPropertySet aPropSet; + const String sCellName; //kann auch leer sein! + SwTableBox* pBox; // only set in non-XML import + const SwStartNode* pStartNode; // only set in XML import + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + +protected: + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > createCursor(); + sal_Bool IsValid(); +public: + SwXCell(SwFrmFmt* pTblFmt, SwTableBox* pBox, const String& rCellName); + SwXCell(SwFrmFmt* pTblFmt, const SwStartNode& rStartNode); // XML import interface + virtual ~SwXCell(); + + TYPEINFO(); + + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL acquire( ) throw(); + virtual void SAL_CALL release( ) throw(); + + //XTypeProvider + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) throw(::com::sun::star::uno::RuntimeException); + + //XCell + virtual ::rtl::OUString SAL_CALL getFormula( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setFormula( const ::rtl::OUString& aFormula ) throw(::com::sun::star::uno::RuntimeException); + virtual double SAL_CALL getValue( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setValue( double nValue ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::table::CellContentType SAL_CALL getType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Int32 SAL_CALL getError( ) throw(::com::sun::star::uno::RuntimeException); + + //XText + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextCursor > SAL_CALL createTextCursorByRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & aTextPosition) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setString(const rtl::OUString& aString) throw( ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + //XEnumerationAccess - frueher XParagraphEnumerationAccess + virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XEnumeration > SAL_CALL createEnumeration(void) throw( ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + const SwTableBox* GetTblBox()const {return pBox;} + static SwXCell* CreateXCell(SwFrmFmt* pTblFmt, SwTableBox* pBox, const String* pCellName = 0); + static SwTableBox* FindBox(SwTable* pTable, SwTableBox* pBox); +}; +/* -----------------27.06.98 15:40------------------- + * + * --------------------------------------------------*/ +class SwXTextTableRow : public cppu::WeakImplHelper2 +< + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient +{ + SfxItemPropertySet aPropSet; + SwTableLine* pLine; + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } +public: + SwXTextTableRow(SwFrmFmt* pFmt, SwTableLine* pLine); + virtual ~SwXTextTableRow(); + + TYPEINFO(); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + const SwTableLine* GetTblRow() const {return pLine;} + static SwTableLine* FindLine(SwTable* pTable, SwTableLine* pLine); +}; +/* -----------------20.07.98 13:03------------------- + * + * --------------------------------------------------*/ +class SwXTextTableCursor : public cppu::WeakImplHelper3 +< + ::com::sun::star::text::XTextTableCursor, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::beans::XPropertySet +>, + public SwClient +{ + SwDepend aCrsrDepend; + SfxItemPropertySet aPropSet; + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + SwUnoCrsr* GetCrsr() const { return (SwUnoCrsr*)aCrsrDepend.GetRegisteredIn(); } + +public: + SwXTextTableCursor(SwFrmFmt* pFmt, SwTableBox* pBox); + SwXTextTableCursor(SwFrmFmt& rTableFmt, + const SwTableCursor* pTableSelection); + virtual ~SwXTextTableCursor(); + + //XTextTableCursor + virtual ::rtl::OUString SAL_CALL getRangeName( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL gotoCellByName( const ::rtl::OUString& aCellName, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL goLeft( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL goRight( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL goUp( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL goDown( sal_Int16 nCount, sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL gotoStart( sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL gotoEnd( sal_Bool bExpand ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL mergeRange( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL splitRange( sal_Int16 Count, sal_Bool Horizontal ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; + +/*-----------------11.12.97 09:38------------------- + +--------------------------------------------------*/ +struct SwRangeDescriptor +{ + sal_uInt16 nTop; + sal_uInt16 nBottom; + sal_uInt16 nLeft; + sal_uInt16 nRight; +}; + +class SwTableProperties_Impl; +class SwXTextTable : public cppu::WeakImplHelper9 +< + ::com::sun::star::text::XTextTable, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::table::XCellRange, + ::com::sun::star::chart::XChartDataArray, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::container::XNamed, + ::com::sun::star::table::XAutoFormattable, + ::com::sun::star::util::XSortable, + ::com::sun::star::lang::XUnoTunnel +>, + public SwClient +{ + SwEventListenerContainer aLstnrCntnr; + SfxItemPropertySet aPropSet; + const SfxItemPropertyMap* _pMap; + SwSortOptions* pLastSortOptions; + + // Descriptor-interface + SwTableProperties_Impl* pTableProps; + String m_sTableName; + sal_Bool bIsDescriptor; + unsigned short nRows; + unsigned short nColumns; + + + sal_Bool bFirstRowAsLabel :1; + sal_Bool bFirstColumnAsLabel :1; + +public: + SwXTextTable(); + SwXTextTable(SwFrmFmt& rFrmFmt); + virtual ~SwXTextTable(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + TYPEINFO(); + + //XTextTable + virtual void SAL_CALL initialize( sal_Int32 nRows, sal_Int32 nColumns ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XTableRows > SAL_CALL getRows( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XTableColumns > SAL_CALL getColumns( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByName( const ::rtl::OUString& aCellName ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getCellNames( ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextTableCursor > SAL_CALL createCursorByCellName( const ::rtl::OUString& aCellName ) throw(::com::sun::star::uno::RuntimeException); + + //XTextContent + virtual void SAL_CALL attach(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > SAL_CALL getAnchor( ) throw(::com::sun::star::uno::RuntimeException); + + //XComponent + virtual void SAL_CALL dispose(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL addEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeEventListener(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XEventListener > & aListener) throw( ::com::sun::star::uno::RuntimeException ); + + + //XCellRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByPosition( sal_Int32 nColumn, sal_Int32 nRow ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByPosition( sal_Int32 nLeft, sal_Int32 nTop, sal_Int32 nRight, sal_Int32 nBottom ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByName( const ::rtl::OUString& aRange ) throw(::com::sun::star::uno::RuntimeException); + + //XChartDataArray + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > > SAL_CALL getData( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setData( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > >& aData ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getRowDescriptions( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setRowDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRowDescriptions ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getColumnDescriptions( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setColumnDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aColumnDescriptions ) throw(::com::sun::star::uno::RuntimeException); + + //XChartData + virtual void SAL_CALL addChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + virtual double SAL_CALL getNotANumber( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL isNotANumber( double nNumber ) throw(::com::sun::star::uno::RuntimeException); + + //XSortable + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL createSortDescriptor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL sort(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xDescriptor) throw( ::com::sun::star::uno::RuntimeException ); + + //XAutoFormattable + virtual void SAL_CALL autoFormat(const rtl::OUString& aName) throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XNamed + virtual rtl::OUString SAL_CALL getName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL setName(const rtl::OUString& Name_) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + void attachToRange(const ::com::sun::star::uno::Reference< ::com::sun::star::text::XTextRange > & xTextRange)throw( ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException ); + + sal_uInt16 getRowCount(void); + sal_uInt16 getColumnCount(void); + ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > GetRangeByName(SwFrmFmt* pFmt, SwTable* pTable, + const String& sTLName, const String& sBRName, + SwRangeDescriptor& rDesc); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + + static SwXTextTable* GetImplementation(::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> xRef ); +}; + +/* -----------------27.04.98 16:41------------------- + * + * --------------------------------------------------*/ +class SwXCellRange : public cppu::WeakImplHelper6 +< + ::com::sun::star::table::XCellRange, + ::com::sun::star::lang::XServiceInfo, + ::com::sun::star::lang::XUnoTunnel, + ::com::sun::star::beans::XPropertySet, + ::com::sun::star::chart::XChartDataArray, + ::com::sun::star::util::XSortable +>, + public SwClient +{ + SwDepend aCursorDepend; //the cursor is removed after the doc has been removed + + SwRangeDescriptor aRgDesc; + SfxItemPropertySet aPropSet; + + SwUnoCrsr* pTblCrsr; + SwSortOptions* pLastSortOptions; + const SfxItemPropertyMap* _pMap; + + sal_Bool bFirstRowAsLabel :1; + sal_Bool bFirstColumnAsLabel :1; + +public: + SwXCellRange(); + SwXCellRange(SwUnoCrsr* pCrsr, SwFrmFmt& rFrmFmt, SwRangeDescriptor& rDesc); + ~SwXCellRange(); + + TYPEINFO(); + + static const ::com::sun::star::uno::Sequence< sal_Int8 > & getUnoTunnelId(); + + //XUnoTunnel + virtual sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& aIdentifier ) throw(::com::sun::star::uno::RuntimeException); + + + //XCellRange + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCell > SAL_CALL getCellByPosition( sal_Int32 nColumn, sal_Int32 nRow ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByPosition( sal_Int32 nLeft, sal_Int32 nTop, sal_Int32 nRight, sal_Int32 nBottom ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellRange > SAL_CALL getCellRangeByName( const ::rtl::OUString& aRange ) throw(::com::sun::star::uno::RuntimeException); + + //XPropertySet + virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); + + //XChartData + virtual void SAL_CALL addChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeChartDataChangeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::chart::XChartDataChangeEventListener >& aListener ) throw(::com::sun::star::uno::RuntimeException); + virtual double SAL_CALL getNotANumber( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL isNotANumber( double nNumber ) throw(::com::sun::star::uno::RuntimeException); + + //XChartDataArray + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > > SAL_CALL getData( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setData( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< double > >& aData ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getRowDescriptions( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setRowDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRowDescriptions ) throw(::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getColumnDescriptions( ) throw(::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL setColumnDescriptions( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aColumnDescriptions ) throw(::com::sun::star::uno::RuntimeException); + + //XSortable + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL createSortDescriptor(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL sort(const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& xDescriptor) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); + + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } + sal_uInt16 getRowCount(void); + sal_uInt16 getColumnCount(void); +}; +/* -----------------03.02.99 07:31------------------- + * + * --------------------------------------------------*/ +class SwXTableRows : public cppu::WeakImplHelper2 +< + ::com::sun::star::table::XTableRows, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient + +{ + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } +public: + SwXTableRows(SwFrmFmt& rFrmFmt); + virtual ~SwXTableRows(); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > > getIdlClasses(void) throw( ::com::sun::star::uno::RuntimeException ); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual sal_Bool queryInterface( ::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rOut ); + +// SMART_UNO_DECLARATION( SwXTableRows, UsrObject ); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XTableRows + virtual void SAL_CALL insertByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; + +/* -----------------03.02.99 07:31------------------- + * + * --------------------------------------------------*/ +class SwXTableColumns : public cppu::WeakImplHelper2 +< + ::com::sun::star::table::XTableColumns, + ::com::sun::star::lang::XServiceInfo +>, + public SwClient + +{ + SwFrmFmt* GetFrmFmt() const { return (SwFrmFmt*)GetRegisteredIn(); } +public: + SwXTableColumns(SwFrmFmt& rFrmFmt); + virtual ~SwXTableColumns(); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > > getIdlClasses(void) throw( ::com::sun::star::uno::RuntimeException ); + +// automatisch auskommentiert - [getIdlClass or queryInterface] - Bitte XTypeProvider benutzen! +// virtual sal_Bool queryInterface( ::com::sun::star::uno::Uik aUik, ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & rOut ); + +// SMART_UNO_DECLARATION( SwXTableColumns, UsrObject ); + + //XIndexAccess + virtual sal_Int32 SAL_CALL getCount(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Any SAL_CALL getByIndex(sal_Int32 nIndex) throw( ::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException ); + + //XElementAccess + virtual ::com::sun::star::uno::Type SAL_CALL getElementType( ) throw(::com::sun::star::uno::RuntimeException); + virtual sal_Bool SAL_CALL hasElements( ) throw(::com::sun::star::uno::RuntimeException); + + //XTableColumns + virtual void SAL_CALL insertByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException ); + virtual void SAL_CALL removeByIndex(sal_Int32 nIndex, sal_Int32 nCount) throw( ::com::sun::star::uno::RuntimeException ); + + //XServiceInfo + virtual rtl::OUString SAL_CALL getImplementationName(void) throw( ::com::sun::star::uno::RuntimeException ); + virtual BOOL SAL_CALL supportsService(const rtl::OUString& ServiceName) throw( ::com::sun::star::uno::RuntimeException ); + virtual ::com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void) throw( ::com::sun::star::uno::RuntimeException ); + + //SwClient + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew); +}; + +#endif + + + + diff --git a/sw/inc/usrfld.hxx b/sw/inc/usrfld.hxx new file mode 100644 index 000000000000..7868ce7be81f --- /dev/null +++ b/sw/inc/usrfld.hxx @@ -0,0 +1,166 @@ +/************************************************************************* + * + * $RCSfile: usrfld.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _USRFLD_HXX +#define _USRFLD_HXX + +#include "fldbas.hxx" + +class SfxPoolItem; +class SwCalc; +class SwDoc; + +/*-------------------------------------------------------------------- + Beschreibung: Benutzerfelder + --------------------------------------------------------------------*/ + +class SwUserFieldType : public SwValueFieldType +{ + BOOL bValidValue : 1; + BOOL bDeleted : 1; + double nValue; + String aName; + String aContent; + USHORT nType; + +public: + SwUserFieldType( SwDoc* pDocPtr, const String& ); + + virtual const String& GetName() const; + virtual SwFieldType* Copy() const; + + String Expand(ULONG nFmt, USHORT nSubType, USHORT nLng); + + String GetContent( ULONG nFmt = 0 ); + void SetContent( const String& rStr, ULONG nFmt = 0 ); + void CtrlSetContent( const String& rStr ); + + inline BOOL IsValid() const; + inline void ChgValid( BOOL bNew ); + + virtual void Modify( SfxPoolItem* pOld, SfxPoolItem* pNew ); + + double GetValue(SwCalc& rCalc); // Member nValue neu berrechnen + inline double GetValue() const; + inline void SetValue(const double nVal); + + inline USHORT GetType() const; + inline void SetType(USHORT); + + BOOL IsDeleted() const { return bDeleted; } + void SetDeleted( BOOL b ) { bDeleted = b; } + + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +inline BOOL SwUserFieldType::IsValid() const + { return bValidValue; } + +inline void SwUserFieldType::ChgValid( BOOL bNew ) + { bValidValue = bNew; } + +inline double SwUserFieldType::GetValue() const + { return nValue; } + +inline void SwUserFieldType::SetValue(const double nVal) + { nValue = nVal; } + +inline USHORT SwUserFieldType::GetType() const + { return nType; } + +inline void SwUserFieldType::SetType(USHORT nSub) +{ + nType = nSub; + EnableFormat(!(nSub & GSE_STRING)); +} + +/*-------------------------------------------------------------------- + Beschreibung: Benutzerfelder + --------------------------------------------------------------------*/ + +class SwUserField : public SwValueField +{ + USHORT nSubType; + +public: + SwUserField(SwUserFieldType*, USHORT nSub = 0, ULONG nFmt = 0); + + virtual USHORT GetSubType() const; + virtual void SetSubType(USHORT nSub); + + virtual double GetValue() const; + virtual void SetValue( const double& rVal ); + + virtual String Expand() const; + virtual SwField* Copy() const; + virtual String GetCntnt(BOOL bName = FALSE) const; + + // Name kann nicht geaendert werden + virtual const String& GetPar1() const; + + // Inhalt + virtual String GetPar2() const; + virtual void SetPar2(const String& rStr); + virtual BOOL QueryValue( com::sun::star::uno::Any& rVal, const String& rProperty ) const; + virtual BOOL PutValue( const com::sun::star::uno::Any& rVal, const String& rProperty ); +}; + +#endif // _USRFLD_HXX diff --git a/sw/inc/viewopt.hxx b/sw/inc/viewopt.hxx new file mode 100644 index 000000000000..73acc02a7090 --- /dev/null +++ b/sw/inc/viewopt.hxx @@ -0,0 +1,602 @@ +/************************************************************************* + * + * $RCSfile: viewopt.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _VIEWOPT_HXX +#define _VIEWOPT_HXX + +#ifndef _GEN_HXX //autogen +#include +#endif +#ifndef _STRING_HXX //autogen +#include +#endif +#ifndef _SV_COLOR_HXX //autogen +#include +#endif +#include "authratr.hxx" + +class SwRect; +class Window; +class OutputDevice; +class ViewShell; +class SwDocShell; + +#define VIEWOPT_1_IDLE 0x00000001L +#define VIEWOPT_1_TAB 0x00000002L +#define VIEWOPT_1_BLANK 0x00000004L +#define VIEWOPT_1_HARDBLANK 0x00000008L +#define VIEWOPT_1_PARAGRAPH 0x00000010L +#define VIEWOPT_1_LINEBREAK 0x00000020L +#define VIEWOPT_1_PAGEBREAK 0x00000040L +#define VIEWOPT_1_COLUMNBREAK 0x00000080L +#define VIEWOPT_1_SOFTHYPH 0x00000100L +#define VIEWOPT_1_TOX 0x00000200L +#define VIEWOPT_1_REF 0x00000400L +#define VIEWOPT_1_FLDNAME 0x00000800L +#define VIEWOPT_1_FIELD 0x00001000L +#define VIEWOPT_1_FOOTNOTE 0x00002000L +#define VIEWOPT_1_POSTITS 0x00004000L +#define VIEWOPT_1_HIDDEN 0x00008000L +#define VIEWOPT_1_SUBSLINES 0x00010000L +#define VIEWOPT_1_GRAPHIC 0x00020000L +#define VIEWOPT_1_TABLE 0x00040000L +#define VIEWOPT_1_DRAW 0x00080000L +#define VIEWOPT_1_CONTROL 0x00100000L +#define VIEWOPT_1_SUBSTABLE 0x00200000L +#define VIEWOPT_1_CROSSHAIR 0x00400000L +#define VIEWOPT_1_SNAP 0x00800000L +#define VIEWOPT_1_SYNCHRONIZE 0x01000000L +#define VIEWOPT_1_GRIDVISIBLE 0x02000000L +#define VIEWOPT_1_ONLINESPELL 0x04000000L +#define VIEWOPT_1_HIDESPELL 0x08000000L +#define VIEWOPT_1_RESERVED1 0x10000000L +#define VIEWOPT_1_VIEWMETACHARS 0x20000000L +#define VIEWOPT_1_PAGEBACK 0x40000000L +#define VIEWOPT_1_SOLIDMARKHDL 0x80000000L + +#define VIEWOPT_CORE2_BLACKFONT 0x00000001L +#define VIEWOPT_CORE2_HIDDENPARA 0x00000002L +#define VIEWOPT_CORE2_SMOOTHSCROLL 0x00000004L +#define VIEWOPT_CORE2_CRSR_IN_PROT 0x00000008L +#define VIEWOPT_CORE2_SECTION_BOUNDS 0x00000010L +#define VIEWOPT_CORE2_INDEX_BACKGROUND 0x00000020L +#define VIEWOPT_CORE2_BIGMARKHDL 0x00000040L + +#define VIEWOPT_2_TOOLBOX 0x00000001L +#define VIEWOPT_2_TOOLBOXTEXT 0x00000002L +#define VIEWOPT_2_TOOLBOXBITMAP 0x00000004L +#define VIEWOPT_2_TOOLBOXBOTH 0x00000008L +#define VIEWOPT_2_TOOLBOXLEFT 0x00000010L +#define VIEWOPT_2_TOOLBOXRIGHT 0x00000020L +#define VIEWOPT_2_TOOLBOXTOP 0x00000040L +#define VIEWOPT_2_TOOLBOXBOTTOM 0x00000080L +#define VIEWOPT_2_UNUSED1 0x00000100L +#define VIEWOPT_2_RIBBONBAR 0x00000200L +#define VIEWOPT_2_TABWIN 0x00000400L +#define VIEWOPT_2_VSCROLLBAR 0x00000800L +#define VIEWOPT_2_HSCROLLBAR 0x00001000L +#define VIEWOPT_2_STATUSLINE 0x00002000L +#define VIEWOPT_2_VLIN 0x00004000L +#define VIEWOPT_2_SVLOOK 0x00008000L +#define VIEWOPT_2_MODIFIED 0x00010000L +#define VIEWOPT_2_KEEPASPECTRATIO 0x00020000L +#define VIEWOPT_2_GRFKEEPZOOM 0x00040000L +#define VIEWOPT_2_EXECHYPERLINKS 0x00080000L +#define VIEWOPT_2_RESERVED2 0x00100000L +#define VIEWOPT_2_RESERVED3 0x00200000L +#define VIEWOPT_2_RESERVED4 0x00400000L +#define VIEWOPT_2_PRTFORMAT 0x00800000L +#define VIEWOPT_2_SHADOWCRSR 0x01000000L + +//Tabellenhintergrund +#define TBL_DEST_CELL 0 +#define TBL_DEST_ROW 1 +#define TBL_DEST_TBL 2 + +// Implementierung in core/text/txtpaint.cxx +extern void SyncVout( const OutputDevice *pOut ); + +class SwViewOption +{ +protected: + static USHORT nPixelTwips;// 1 Pixel == ? Twips + + String sSymbolFont; // Symbolzeichensatz + UINT32 nCoreOptions; // Bits fuer die ViewShell + UINT32 nCore2Options; // Bits fuer die ViewShell + UINT32 nUIOptions; // UI-Bits + Color aRetoucheColor; // DefaultBackground fuer BrowseView + Color aShdwCrsrCol; // Farbe fuer den ShadowCrsr + Color aIdxBackgrndCol; // color of index background + Size aSnapSize; // Beschreibt hori. wie vert. Snap + short nDivisionX; // Rasterunterteilung + short nDivisionY; + BYTE nPagePrevRow; // Page Preview Row/Columns + BYTE nPagePrevCol; // Page Preview Row/Columns + BYTE nShdwCrsrFillMode; // FillMode fuer den ShadowCrsr + BOOL bReadonly : 1; // Readonly-Doc + BOOL bStarOneSetting : 1;// prevent from UI automatics (no scrollbars in readonly documents) + + // Maszstab + USHORT nZoom; // Angaben in Prozent + BYTE eZoom; // 'enum' fuer Zoom + BYTE nTblDest; // Ziel fuer Tabellenhintergrund + +#ifndef PRODUCT + // korrespondieren zu den Angaben in ui/config/cfgvw.src + BOOL bTest1 :1; // Test-Flag "Layout not loading" + BOOL bTest2 :1; // Test-Flag "WYSIWYG++" + BOOL bTest3 :1; // Test-Flag "" + BOOL bTest4 :1; // Test-Flag "WYSIWYG debug" + BOOL bTest5 :1; // Test-Flag "No idle format" + BOOL bTest6 :1; // Test-Flag "No screen adj" + BOOL bTest7 :1; // Test-Flag "win format" + BOOL bTest8 :1; // Test-Flag "" + static BOOL bTest9; // Test-Flag "DrawingLayerNotLoading" + BOOL bTest10 :1; // Test-Flag "Format by Input" +#endif + +public: + SwViewOption(); // CTOR + SwViewOption(const SwViewOption&); // + ~SwViewOption(); // + + void Init( Window *pWin ); // Initialisierung der statischen Daten + + USHORT GetPixelTwips() const { return nPixelTwips; } + + inline UINT32 GetCoreOptions() const {return nCoreOptions;} + inline UINT32 GetUIOptions() const {return nUIOptions;} + inline void SetUIOptions( const SwViewOption& ); + +/*--------------------------------------------------------------------------- + Optionen aus nCoreOptions +----------------------------------------------------------------------------*/ + + inline BOOL IsIdle() const + { return nCoreOptions & VIEWOPT_1_IDLE ? TRUE : FALSE; } + inline void SetIdle( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_IDLE ) : ( nCoreOptions &= ~VIEWOPT_1_IDLE); } + + inline BOOL IsTab(BOOL bHard = FALSE) const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_TAB) && + ((nCoreOptions & VIEWOPT_1_VIEWMETACHARS)||bHard) + ? TRUE : FALSE; } + inline void SetTab( BOOL b ) { + (b != 0) ? (nCoreOptions |= VIEWOPT_1_TAB ) : ( nCoreOptions &= ~VIEWOPT_1_TAB); } + void PaintTab( OutputDevice *pOut, const SwRect &rRect ) const; + + + inline BOOL IsBlank(BOOL bHard = FALSE) const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_BLANK) && + ((nCoreOptions & VIEWOPT_1_VIEWMETACHARS)||bHard) + ? TRUE : FALSE; } + inline void SetBlank( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_BLANK ) : ( nCoreOptions &= ~VIEWOPT_1_BLANK); } + + inline BOOL IsHardBlank() const + { return !bReadonly && nCoreOptions & VIEWOPT_1_HARDBLANK ? TRUE : FALSE; } + inline void SetHardBlank( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_HARDBLANK ) : ( nCoreOptions &= ~VIEWOPT_1_HARDBLANK); } + + inline BOOL IsParagraph(BOOL bHard = FALSE) const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_PARAGRAPH) && + ((nCoreOptions & VIEWOPT_1_VIEWMETACHARS)||bHard) + ? TRUE : FALSE; } + inline void SetParagraph( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_PARAGRAPH ) : ( nCoreOptions &= ~VIEWOPT_1_PARAGRAPH); } + + inline BOOL IsLineBreak(BOOL bHard = FALSE) const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_LINEBREAK) && + ((nCoreOptions & VIEWOPT_1_VIEWMETACHARS)||bHard) + ? TRUE : FALSE; } + inline void SetLineBreak( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_LINEBREAK ) : ( nCoreOptions &= ~VIEWOPT_1_LINEBREAK); } + void PaintLineBreak( OutputDevice *pOut, const SwRect &rRect ) const; + USHORT GetLineBreakWidth( const OutputDevice *pOut = 0 ) const; + + inline BOOL IsPageBreak() const { return !bReadonly && (nCoreOptions & VIEWOPT_1_PAGEBREAK) ? TRUE : FALSE; } + inline void SetPageBreak( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_PAGEBREAK ) : ( nCoreOptions &= ~VIEWOPT_1_PAGEBREAK); } + + inline BOOL IsColumnBreak() const { return !bReadonly && (nCoreOptions & VIEWOPT_1_COLUMNBREAK) ? TRUE : FALSE; } + inline void SetColumnBreak( BOOL b) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_COLUMNBREAK ) : ( nCoreOptions &= ~VIEWOPT_1_COLUMNBREAK); } + + inline BOOL IsSoftHyph() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_SOFTHYPH) ? TRUE : FALSE; } + inline void SetSoftHyph( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SOFTHYPH ) : ( nCoreOptions &= ~VIEWOPT_1_SOFTHYPH); } + + inline BOOL IsTox() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_TOX) ? TRUE : FALSE; } + inline void SetTox( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_TOX ) : ( nCoreOptions &= ~VIEWOPT_1_TOX); } + + inline BOOL IsRef() const { return !bReadonly && (nCoreOptions & VIEWOPT_1_REF) ? TRUE : FALSE; } + inline void SetRef( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_REF ) : ( nCoreOptions &= ~VIEWOPT_1_REF); } + + inline BOOL IsFldName() const { return !bReadonly && (nCoreOptions & VIEWOPT_1_FLDNAME) ? TRUE : FALSE; } + inline void SetFldName( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_FLDNAME ) : ( nCoreOptions &= ~VIEWOPT_1_FLDNAME); } + + inline BOOL IsField() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_FIELD) ? TRUE : FALSE; } + inline void SetField( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_FIELD ) : ( nCoreOptions &= ~VIEWOPT_1_FIELD); } + + inline BOOL IsFootNote() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_FOOTNOTE) ? TRUE : FALSE; } + inline void SetFootNote( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_FOOTNOTE) : ( nCoreOptions &= ~VIEWOPT_1_FOOTNOTE); } + + inline BOOL IsPostIts() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_POSTITS) ? TRUE : FALSE; } + inline void SetPostIts( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_POSTITS ) : ( nCoreOptions &= ~VIEWOPT_1_POSTITS); } + void PaintPostIts( OutputDevice *pOut, const SwRect &rRect, + long nCol ) const; + USHORT GetPostItsWidth( const OutputDevice *pOut = 0 ) const; + + inline BOOL IsHidden() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_HIDDEN) ? TRUE : FALSE; } + inline void SetHidden( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_HIDDEN ) : ( nCoreOptions &= ~VIEWOPT_1_HIDDEN); } + + inline BOOL IsSubsLines() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_SUBSLINES) ? TRUE : FALSE; } + inline void SetSubsLines( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SUBSLINES ) : ( nCoreOptions &= ~VIEWOPT_1_SUBSLINES); } + + inline BOOL IsGraphic() const + { return nCoreOptions & VIEWOPT_1_GRAPHIC ? TRUE : FALSE; } + inline void SetGraphic( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_GRAPHIC ) : ( nCoreOptions &= ~VIEWOPT_1_GRAPHIC); } + + inline BOOL IsPageBack() const + { return nCoreOptions & VIEWOPT_1_PAGEBACK ? TRUE : FALSE; } + inline void SetPageBack( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_PAGEBACK) : ( nCoreOptions &= ~VIEWOPT_1_PAGEBACK); } + + inline BOOL IsSolidMarkHdl() const + { return nCoreOptions & VIEWOPT_1_SOLIDMARKHDL ? TRUE : FALSE; } + inline void SetSolidMarkHdl( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SOLIDMARKHDL) : ( nCoreOptions &= ~VIEWOPT_1_SOLIDMARKHDL); } + + inline BOOL IsBigMarkHdl() const + { return nCore2Options & VIEWOPT_CORE2_BIGMARKHDL ? TRUE : FALSE;} + inline void SetBigMarkHdl(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_BIGMARKHDL ) : (nCore2Options &= ~VIEWOPT_CORE2_BIGMARKHDL);} + + inline BOOL IsTable() const + { return nCoreOptions & VIEWOPT_1_TABLE ? TRUE : FALSE; } + inline void SetTable( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_TABLE ) : ( nCoreOptions &= ~VIEWOPT_1_TABLE); } + + inline BOOL IsDraw() const + { return nCoreOptions & VIEWOPT_1_DRAW ? TRUE : FALSE; } + inline void SetDraw( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_DRAW ) : ( nCoreOptions &= ~VIEWOPT_1_DRAW); } + + inline BOOL IsControl() const + { return nCoreOptions & VIEWOPT_1_CONTROL ? TRUE : FALSE; } + inline void SetControl( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_CONTROL ) : ( nCoreOptions &= ~VIEWOPT_1_CONTROL); } + + inline BOOL IsSubsTable() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_SUBSTABLE) ? TRUE : FALSE; } + inline void SetSubsTable( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SUBSTABLE ) : ( nCoreOptions &= ~VIEWOPT_1_SUBSTABLE); } + + inline BOOL IsSnap() const + { return nCoreOptions & VIEWOPT_1_SNAP ? TRUE : FALSE; } + inline void SetSnap( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SNAP ) : ( nCoreOptions &= ~VIEWOPT_1_SNAP); } + + inline void SetSnapSize( Size &rSz ){ aSnapSize = rSz; } + inline const Size &GetSnapSize() const { return aSnapSize; } + + inline BOOL IsGridVisible() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_GRIDVISIBLE) ? TRUE : FALSE; } + inline void SetGridVisible( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_GRIDVISIBLE ) : ( nCoreOptions &= ~VIEWOPT_1_GRIDVISIBLE); } + + inline BOOL IsOnlineSpell() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_ONLINESPELL) ? TRUE : FALSE; } + inline void SetOnlineSpell( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_ONLINESPELL ) : ( nCoreOptions &= ~VIEWOPT_1_ONLINESPELL); } + + inline BOOL IsHideSpell() const + { return nCoreOptions & VIEWOPT_1_HIDESPELL ? TRUE : FALSE; } + inline void SetHideSpell( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_HIDESPELL ) : ( nCoreOptions &= ~VIEWOPT_1_HIDESPELL); } + + inline BOOL IsViewMetaChars() const + { return !bReadonly && (nCoreOptions & VIEWOPT_1_VIEWMETACHARS) ? TRUE : FALSE; } + inline void SetViewMetaChars( BOOL b) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_VIEWMETACHARS ) : ( nCoreOptions &= ~VIEWOPT_1_VIEWMETACHARS); } + + inline BOOL IsSynchronize() const + { return nCoreOptions & VIEWOPT_1_SYNCHRONIZE ? TRUE : FALSE;} + inline void SetSynchronize( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_SYNCHRONIZE ) : ( nCoreOptions &= ~VIEWOPT_1_SYNCHRONIZE); } + + inline BOOL IsCrossHair() const + { return nCoreOptions & VIEWOPT_1_CROSSHAIR ? TRUE : FALSE; } + inline void SetCrossHair( BOOL b ) + { (b != 0) ? (nCoreOptions |= VIEWOPT_1_CROSSHAIR ) : ( nCoreOptions &= ~VIEWOPT_1_CROSSHAIR); } + +/*--------------------------------------------------------------------------- + Optionen aus nCore2Options +----------------------------------------------------------------------------*/ + inline BOOL IsBlackFont() const + {return nCore2Options & VIEWOPT_CORE2_BLACKFONT ? TRUE : FALSE;} + + inline void SetBlackFont(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_BLACKFONT) : (nCore2Options &= ~VIEWOPT_CORE2_BLACKFONT);} + + inline BOOL IsShowHiddenPara() const + {return nCore2Options & VIEWOPT_CORE2_HIDDENPARA ? TRUE : FALSE;} + + inline void SetShowHiddenPara(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_HIDDENPARA) : (nCore2Options &= ~VIEWOPT_CORE2_HIDDENPARA);} + + inline BOOL IsSmoothScroll() const + {return nCore2Options & VIEWOPT_CORE2_SMOOTHSCROLL ? TRUE : FALSE;} + + inline void SetSmoothScroll(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_SMOOTHSCROLL) : (nCore2Options &= ~VIEWOPT_CORE2_SMOOTHSCROLL);} + + inline BOOL IsCursorInProtectedArea() const + {return nCore2Options & VIEWOPT_CORE2_CRSR_IN_PROT ? TRUE : FALSE;} + + inline void SetCursorInProtectedArea(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_CRSR_IN_PROT) : (nCore2Options &= ~VIEWOPT_CORE2_CRSR_IN_PROT);} + + inline BOOL IsSectionBounds() const + {return !bReadonly && (nCore2Options & VIEWOPT_CORE2_SECTION_BOUNDS) ? TRUE : FALSE;} + + inline void SetSectionBounds(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_SECTION_BOUNDS) : (nCore2Options &= ~VIEWOPT_CORE2_SECTION_BOUNDS);} + + inline BOOL IsIndexBackground() const + {return nCore2Options & VIEWOPT_CORE2_INDEX_BACKGROUND ? TRUE : FALSE;} + + inline void SetIndexBackground(BOOL b) + { (b != 0) ? (nCore2Options |= VIEWOPT_CORE2_INDEX_BACKGROUND) : (nCore2Options &= ~VIEWOPT_CORE2_INDEX_BACKGROUND);} + + + +/*--------------------------------------------------------------------------- + +----------------------------------------------------------------------------*/ + + + inline short GetDivisionX() const { return nDivisionX; } + inline void SetDivisionX( short n ){ nDivisionX = n; } + inline short GetDivisionY() const { return nDivisionY; } + inline void SetDivisionY( short n ){ nDivisionY = n; } + + inline BYTE GetPagePrevRow() const { return nPagePrevRow; } + inline void SetPagePrevRow( BYTE n ) { nPagePrevRow = n; } + inline BYTE GetPagePrevCol() const { return nPagePrevCol; } + inline void SetPagePrevCol( BYTE n ) { nPagePrevCol = n; } + BOOL IsReadonly() const { return bReadonly; } + void SetReadonly(BOOL bSet) { bReadonly = bSet; } + + BOOL IsAutoCompleteWords() const; + + +#ifndef PRODUCT + // korrespondieren zu den Angaben in ui/config/cfgvw.src + inline BOOL IsTest1() const { return bTest1; } + inline void SetTest1( BOOL b ) { bTest1 = b; } + inline BOOL IsTest2() const { return bTest2; } + inline void SetTest2( BOOL b ) { bTest2 = b; } + inline BOOL IsTest3() const { return bTest3; } + inline void SetTest3( BOOL b ) { bTest3 = b; } + inline BOOL IsTest4() const { return bTest4; } + inline void SetTest4( BOOL b ) { bTest4 = b; } + inline BOOL IsTest5() const { return bTest5; } + inline void SetTest5( BOOL b ) { bTest5 = b; } + inline BOOL IsTest6() const { return bTest6; } + inline void SetTest6( BOOL b ) { bTest6 = b; } + inline BOOL IsTest7() const { return bTest7; } + inline void SetTest7( BOOL b ) { bTest7 = b; } + inline BOOL IsTest8() const { return bTest8; } + inline void SetTest8( BOOL b ) { bTest8 = b; } + static inline BOOL IsTest9() { return bTest9; } + static inline void SetTest9( BOOL b ) { bTest9 = b; } + inline BOOL IsTest10() const { return bTest10; } + inline void SetTest10( BOOL b ) { bTest10 = b; } +#endif + + inline USHORT GetZoom() const { return nZoom; } + inline void SetZoom( USHORT n ){ nZoom = n; } + + void DrawRect( OutputDevice* pOut, const SwRect &rRect, long nCol ) const; + void DrawRectPrinter( OutputDevice* pOut, const SwRect& rRect ) const; + + SwViewOption& operator=( const SwViewOption &rOpt ); + // Vergleichsmethoden + BOOL IsEqualFlags ( const SwViewOption &rOpt ) const; + inline BOOL operator==( const SwViewOption &rOpt ) const; + + +/*--------------------------------------------------------------------------- + Optionen aus nUIOptions +----------------------------------------------------------------------------*/ + + BOOL IsViewToolbox() const + { return nUIOptions & VIEWOPT_2_TOOLBOX ? TRUE : FALSE; } + BOOL IsViewRibbonBar() const + { return nUIOptions & VIEWOPT_2_RIBBONBAR ? TRUE : FALSE; } + BOOL IsViewVScrollBar() const + { return nUIOptions & VIEWOPT_2_VSCROLLBAR ? TRUE : FALSE; } + BOOL IsViewHScrollBar() const + { return nUIOptions & VIEWOPT_2_HSCROLLBAR ? TRUE : FALSE; } + BOOL IsViewSVLook() const + { return nUIOptions & VIEWOPT_2_SVLOOK ? TRUE : FALSE; } + BOOL IsKeepRatio() const + { return nUIOptions & VIEWOPT_2_KEEPASPECTRATIO ? TRUE : FALSE; } + BOOL IsGrfKeepZoom() const + { return nUIOptions & VIEWOPT_2_GRFKEEPZOOM ? TRUE : FALSE; } + BOOL IsExecHyperlinks() const + { return nUIOptions & VIEWOPT_2_EXECHYPERLINKS ? TRUE : FALSE; } + BOOL IsPrtFormat() const + { return nUIOptions & VIEWOPT_2_PRTFORMAT ? TRUE : FALSE; } + + BYTE GetZoomType() const { return eZoom; } + + BYTE GetTblDest() const { return nTblDest; } + + void SetViewToolbox (BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_TOOLBOX ) : ( nUIOptions &= ~VIEWOPT_2_TOOLBOX); } + void SetViewRibbonBar (BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_RIBBONBAR ) : ( nUIOptions &= ~VIEWOPT_2_RIBBONBAR); } + void SetViewVScrollBar(BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_VSCROLLBAR ) : ( nUIOptions &= ~VIEWOPT_2_VSCROLLBAR); } + void SetViewHScrollBar(BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_HSCROLLBAR ) : ( nUIOptions &= ~VIEWOPT_2_HSCROLLBAR); } + void SetViewSVLook (BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_SVLOOK ) : ( nUIOptions &= ~VIEWOPT_2_SVLOOK); } + void SetKeepRatio (BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_KEEPASPECTRATIO ) : ( nUIOptions &= ~VIEWOPT_2_KEEPASPECTRATIO); } + void SetGrfKeepZoom (BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_GRFKEEPZOOM ) : ( nUIOptions &= ~VIEWOPT_2_GRFKEEPZOOM); } + void SetExecHyperlinks( BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_EXECHYPERLINKS) : (nUIOptions &= ~VIEWOPT_2_EXECHYPERLINKS); } + void SetPrtFormat( BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_PRTFORMAT) : (nUIOptions &= ~VIEWOPT_2_PRTFORMAT); } + + void SetZoomType (BYTE nZoom){ eZoom = nZoom; } + void SetTblDest( BYTE nNew ) { nTblDest = nNew; } + + const String& GetSymbolFont() const {return sSymbolFont;} + void SetSymbolFont(const String& sSet) {sSymbolFont = sSet;} + + const Color& GetRetoucheColor() const { return aRetoucheColor;} + void SetRetoucheColor(const Color&r) { aRetoucheColor = r; } + + inline BOOL IsViewTabwin() const; + inline BOOL IsViewVLin() const; + inline void SetViewTabwin (BOOL b); + inline void SetViewVLin (BOOL b); + + // ShadowCursor ein schalten/abfragen/Farbe setzen/Modus setzen + BOOL IsShadowCursor() const + { return nUIOptions & VIEWOPT_2_SHADOWCRSR ? TRUE : FALSE; } + void SetShadowCursor(BOOL b) + { b ? (nUIOptions |= VIEWOPT_2_SHADOWCRSR ) : ( nUIOptions &= ~VIEWOPT_2_SHADOWCRSR); } + + BOOL IsStarOneSetting() const {return bStarOneSetting; } + void SetStarOneSetting(BOOL bSet) {bStarOneSetting = bSet; } + + const Color& GetShdwCrsrColor() const { return aShdwCrsrCol; } + void SetShdwCrsrColor( const Color& rCol ) { aShdwCrsrCol = rCol; }; + + BYTE GetShdwCrsrFillMode() const { return nShdwCrsrFillMode; } + void SetShdwCrsrFillMode( BYTE nMode ) { nShdwCrsrFillMode = nMode; }; + + const Color& GetIndexBackgrndColor() const { return aIdxBackgrndCol;} + void SetIndexBackgrndColor(const Color& rCol) {aIdxBackgrndCol = rCol;} +}; + + +inline BOOL SwViewOption::operator==( const SwViewOption &rOpt ) const +{ + return IsEqualFlags( rOpt ) && nZoom == rOpt.GetZoom(); +} + +inline void SwViewOption::SetUIOptions( const SwViewOption& rVOpt ) +{ + nUIOptions = rVOpt.nUIOptions; + nTblDest = rVOpt.nTblDest; + nShdwCrsrFillMode = rVOpt.nShdwCrsrFillMode; + aShdwCrsrCol = rVOpt.aShdwCrsrCol; +} + +inline BOOL SwViewOption::IsViewTabwin() const +{ + return !bReadonly && (nUIOptions & VIEWOPT_2_TABWIN) ? TRUE : FALSE; +} + +inline BOOL SwViewOption::IsViewVLin() const +{ + return !bReadonly && (nUIOptions & VIEWOPT_2_VLIN) ? TRUE : FALSE; +} + +inline void SwViewOption::SetViewTabwin(BOOL b) +{ + b ? (nUIOptions |= VIEWOPT_2_TABWIN ) : ( nUIOptions &= ~VIEWOPT_2_TABWIN); +} + +inline void SwViewOption::SetViewVLin(BOOL b) +{ + b ? (nUIOptions |= VIEWOPT_2_VLIN ) : ( nUIOptions &= ~VIEWOPT_2_VLIN); +} + + +// Hilfsfunktion zur Ermittlung der HTML-Faehigkeiten +USHORT GetHtmlMode(const SwDocShell*); + + +#endif diff --git a/sw/inc/viewsh.hxx b/sw/inc/viewsh.hxx new file mode 100644 index 000000000000..afca768439d5 --- /dev/null +++ b/sw/inc/viewsh.hxx @@ -0,0 +1,490 @@ +/************************************************************************* + * + * $RCSfile: viewsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _VIEWSH_HXX +#define _VIEWSH_HXX + +#ifndef _RTTI_HXX //autogen +#include +#endif +#ifndef _SVARRAY_HXX //autogen +#include +#endif + + +#include "swtypes.hxx" +#include "ring.hxx" +#include "swrect.hxx" +#include "errhdl.hxx" + +class SwDoc; +class SfxPrinter; +class SfxProgress; +class SwRootFrm; +class SwNodes; +class SdrView; +class SfxItemPool; +class SfxViewShell; + +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLALTERNATIVES_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_SPELLFAILURE_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XSPELLCHECKER1_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XALTERNATIVESPELLING_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XPOSSIBLEHYPHENSSUPPLIER_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATOR_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XPOSSIBLEHYPHENS_HPP_ +#include +#endif +#ifndef _COM_SUN_STAR_LINGUISTIC_XHYPHENATEDWORD_HPP_ +#include +#endif + + +class SwViewOption; +class SwViewImp; +class SwPrtOptions; +class SwPagePreViewPrtData; +class Window; +class OutputDevice; +class SwLayIdle; +struct ShellResource; +class SwRegionRects; +class SwFrm; + +//JP 19.07.98: - Bug 52312 +// define fuer Flags, die im CTOR oder den darunter liegenden Schichten +// benoetigt werden. +// Zur Zeit wird fuer die DrawPage das PreView Flag benoetigt +#define VSHELLFLAG_ISPREVIEW ((long)0x1) + +class ViewShell: public Ring +{ + friend void SetOutDev( ViewShell *pSh, OutputDevice *pOut ); + friend void SetOutDevAndWin( ViewShell *pSh, OutputDevice *pOut, + Window *pWin, sal_uInt16 nZoom ); + + friend class SwViewImp; + friend class SwLayIdle; + + //Umsetzen der SwVisArea, damit vor dem Drucken sauber formatiert + //werden kann. + friend void SetSwVisArea( ViewShell *pSh, const SwRect & ); + + static sal_Bool bLstAct; // sal_True wenn Das EndAction der letzten Shell + // laeuft; also die EndActions der + // anderen Shells auf das Dokument + // abgearbeitet sind. + + SfxViewShell *pSfxViewShell; + SwViewImp *pImp; //Core-Interna der ViewShell. + //Der Pointer ist niemals 0. + + Window *pWin; //Ist 0, wenn gedruckt wird. + OutputDevice *pOut; //Fuer alle Ausgaben. Kann sein: + //Window, Printer, VirtDev, ... + OutputDevice *pRef; //Formatierreferenzdevice, soll zum + // Formatieren benutzt werden, wenn gesetzt (Prospekt+Seitenvorschaudruck) + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > xSpell; + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator > xHyph; + SwViewOption *pOpt; + + Point aPrtOffst; //Ofst fuer den Printer, + //nicht bedruckbarer Rand. + + Size aBrowseBorder; //Rand fuer Framedokumente + SwRect aInvalidRect; + + sal_Bool bDocSizeChgd :1; //Fuer DocChgNotify(): Neue DocGroesse bei + //EndAction an das DocMDI melden. + sal_Bool bPaintWorks :1; //Normal Painten wenn sal_True, + //Paint merken wenn sal_False + sal_Bool bPaintInProgress :1; //Kein zweifaches Paint durchlassen. + sal_Bool bViewLocked :1; //Lockt den sichtbaren Bereich, + //MakeVisible laeuft dann in's leere. + sal_Bool bInEndAction :1; //Fiese unstaende vermeiden, siehe viewsh.cxx + sal_Bool bPreView :1; //Ist sal_True wenns eine PreView-ViewShell ist. + sal_Bool bFrameView :1; //sal_True wenn es ein (HTML-)Frame ist. + sal_Bool bEnableSmooth :1; //Disable des SmoothScroll z.B. fuer + //Drag der Scrollbars. + sal_Bool bEndActionByVirDev:1; //Paints aus der EndAction immer ueber virtuelles + //Device (etwa beim Browsen) + + //Initialisierung, wird von den verschiedenen Konstruktoren gerufen. + void Init( const SwViewOption *pNewOpt ); + + inline void ResetInvalidRect(); + + void SetSubsLines(); + + void Reformat(); //Invalidert das ges. Layout (ApplyViewOption) + + void PaintDesktop( const SwRect & ); // sammeln der Werte fuers + // Malen der Wiese und rufen + // PaintDesktop gesplittet, dieser Teil wird auch von PreViewPage benutzt + void _PaintDesktop( const SwRegionRects &rRegion ); + + sal_Bool CheckInvalidForPaint( const SwRect & );//Direkt Paint oder lieber + //eine Aktion ausloesen. + + void Scroll(); //Scrollen wenn sich aus der LayAction Scrollmoeglichkeiten + //ergaben. + + void PrepareForPrint( const SwPrtOptions &rOptions ); + + void ImplApplyViewOptions( const SwViewOption &rOpt ); + +protected: + SwDoc *pDoc; //Das Dokument, niemals 0 + SwRect aVisArea; //Die moderne Ausfuerung der VisArea + static ShellResource* pShellRes; // Resourcen fuer die Shell + static Window* pCareWindow; // diesem Fenster ausweichen + + sal_uInt16 nStartAction; //ist != 0 wenn mindestens eine ::com::sun::star::chaos::Action laeuft + sal_uInt16 nLockPaint; //ist != 0 wenn das Paint gelocked ist. + +public: + TYPEINFO(); + + SwViewImp *Imp() { return pImp; } + const SwViewImp *Imp() const { return pImp; } + + const SwNodes& GetNodes() const; + + SfxPrinter* GetPrt( sal_Bool bCreate = sal_False ) const; + void InitPrt( SfxPrinter * ); //Nach Druckerwechsel, vom Doc + + //Klammerung von zusammengehoerenden Aktionen. + inline void StartAction(); + void ImplStartAction(); + inline void EndAction( const sal_Bool bIdleEnd = sal_False ); + void ImplEndAction( const sal_Bool bIdleEnd = sal_False ); + sal_uInt16 ActionCount() const { return nStartAction; } + sal_Bool ActionPend() const { return nStartAction != 0; } + sal_Bool IsInEndAction() const { return bInEndAction; } + + void SetEndActionByVirDev( sal_Bool b ) { bEndActionByVirDev = b; } + sal_Bool IsEndActionByVirDev() { return bEndActionByVirDev; } + + // Per UNO wird am RootFrame fuer alle shells der ActionCount kurzfristig + // auf Null gesetzt und wieder restauriert + void SetRestoreActions(sal_uInt16 nSet); + sal_uInt16 GetRestoreActions() const; + + inline sal_Bool HasInvalidRect() const { return aInvalidRect.HasArea(); } + void ChgHyphenation() { Reformat(); } + + //Methoden fuer Paint- und Scrollrects, die auf allen Shells im + //Ring arbeiten. + sal_Bool AddPaintRect( const SwRect &rRect ); + void AddScrollRect( const SwFrm *pFrm, const SwRect &rRect, long nOffs ); + void SetNoNextScroll(); + + void InvalidateWindows( const SwRect &rRect ); + virtual void Paint(const Rectangle &rRect); + sal_Bool IsPaintInProgress() const { return bPaintInProgress; } + + //Benachrichtung, dass sich der sichtbare Bereich geaendert hat. + //VisArea wird neu gesetzt, anschliessend wird gescrollt. + //Das uebergebene Rect liegt auf Pixelgrenzen, + //um Pixelfehler beim Scrollen zu vermeiden. + virtual void VisPortChgd( const SwRect & ); + sal_Bool SmoothScroll( long lXDiff, long lYDiff, const Rectangle* );//Browser + void EnableSmooth( sal_Bool b ) { bEnableSmooth = b; } + + const SwRect &VisArea() const { return aVisArea; } + //Es wird, wenn notwendig, soweit gescrollt, dass das + //uebergebene Rect im sichtbaren Ausschnitt liegt. + void MakeVisible( const SwRect & ); + + //Bei naechster Gelegenheit die neue Dokuemntgroesse an das UI weiterreichen. + void SizeChgNotify(const Size &); + void UISizeNotify(); //Das weiterreichen der aktuellen groesse. + + Point GetPagePos( sal_uInt16 nPageNum ) const; + + sal_uInt16 GetNumPages(); //Anzahl der aktuellen Seiten Layout erfragen. + + //Invalidierung der ersten Sichtbaren Seite fuer alle Shells im Ring. + void SetFirstVisPageInvalid(); + + SwRootFrm *GetLayout() const; + sal_Bool IsNewLayout() const; //Wurde das Layout geladen oder neu + //erzeugt? + + Size GetDocSize() const;// erfrage die Groesse des Dokuments + + void CalcLayout(); //Durchformatierung des Layouts erzwingen. + + SwDoc *GetDoc() const { return pDoc; } //niemals 0. + + //'Drei' OutputDevices sind relevant: + //Der Drucker (am Dokument). Er bestimmt immer die FontMetriken. + //Das Window, gibt es nur wenn nicht gerade gedruckt wird. + //Das OutputDevice. Auf diesem Device finden grunds„tzlich alle + //Ausgaben statt. Der Pointer zeigt auf das Window, den Drucker oder + //auch mal ein VirtualDevice (z.B. Refresh der Scrollrects). + inline OutputDevice *GetOut() const { return pOut; } + inline Window *GetWin() const { return pWin; } + + inline OutputDevice *GetReferenzDevice() const { return pRef; } + inline void SetReferenzDevice( OutputDevice* pNew ) { pRef = pNew; } + static inline sal_Bool IsLstEndAction() { return ViewShell::bLstAct; } + + // Setzt Drucker fuer ALLE Sichten im Ring; einschl. Invalidierungen + void SetPrt(SfxPrinter *); + + //Andern alle PageDescriptoren + void ChgAllPageOrientation( sal_uInt16 eOri ); + void ChgAllPageSize( Size &rSz ); + + //Druckauftrag abwickeln. + sal_Bool Prt( SwPrtOptions& rOptions, SfxProgress& rProgress ); + //"Drucken" fuer OLE 2.0 + static void PrtOle2( SwDoc *pDoc, const SwViewOption *pOpt, + OutputDevice* pOleOut, const Rectangle& rRect ); + + //Wird intern fuer die Shell gerufen die Druckt. Formatiert die Seiten. + void CalcPagesForPrint( sal_uInt16 nMax, SfxProgress* pProgress = 0, + const String* pStr = NULL, sal_uInt32 nMergeAct = 0, sal_uInt32 nMergeCnt = 0 ); + + //All about fields. + void UpdateFlds(sal_Bool bCloseDB = sal_False); + sal_Bool IsAnyFieldInDoc() const; + // update all charts, for that exists any table + void UpdateAllCharts(); + sal_Bool HasCharts() const; + + // Sollen Absatzabstaende addiert oder maximiert werden? + sal_Bool IsParaSpaceMax() const; + sal_Bool IsParaSpaceMaxAtPages() const; + void SetParaSpaceMax( sal_Bool bNew, sal_Bool bAtPages ); + + //Ruft den Idle-Formatierer des Layouts + void LayoutIdle(); + + // Linguistik + inline ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > + GetSpellChecker() const { return xSpell; } + inline ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator > + GetHyphenator() const { return xHyph; } + + inline const SwViewOption *GetViewOptions() const { return pOpt; } + void ApplyViewOptions( const SwViewOption &rOpt ); + void SetUIOptions( const SwViewOption &rOpt ); + void SetReadonlyOption(sal_Bool bSet); // Readonly-Bit d. ViewOptions setzen + void SetPrtFormatOption(sal_Bool bSet); // PrtFormat-Bit d. ViewOptions setzen + + static void SetShellRes( ShellResource* pRes ) { pShellRes = pRes; } + static ShellResource* GetShellRes() { return pShellRes; } + + static void SetCareWin( Window* pNew ) { pCareWindow = pNew; } + static Window* GetCareWin() + { return pCareWindow ? pCareWindow : CareChildWin(); } + static Window* CareChildWin(); + + inline SfxViewShell *GetSfxViewShell() { return pSfxViewShell; } + inline void SetSfxViewShell(SfxViewShell *pNew) { pSfxViewShell = pNew; } + + // Selektion der Draw ::com::sun::star::script::Engine geaendert + virtual void DrawSelChanged(SdrView*); + + // SS fuer Seitenvorschau anzeigen + void PreViewPage( const Rectangle& rRect, sal_uInt16 nRowCol, + sal_uInt16 nSttPage, const Size& rPageSize ); + void RepaintCoreRect( const SwRect& rRect, sal_uInt16 nRowCol, + sal_uInt16 nSttPage, const Size& rPageSize ); + // und jetzt mal auf den Drucker + void PrintPreViewPage( SwPrtOptions& rOptions, sal_uInt16 nRowCol, + SfxProgress& rProgress, + const SwPagePreViewPrtData* = 0 ); + Size GetPagePreViewPrtMaxSize() const; + // errechnen & MapMode setzen + sal_uInt16 CalcPreViewPage( const Size& rWinWidth, sal_uInt16& nRowCol, + sal_uInt16 nSttPage, Size& rPageSize, + sal_uInt16& rVirtPageNo ); + sal_Bool IsPreViewDocPos( Point& rDocPt, sal_uInt16 nRowCol, sal_uInt16 nSttPage, + const Size& rMaxSize ); + + // Prospekt-Format drucken + void PrintProspect( SwPrtOptions&, SfxProgress& ); + + sal_Bool IsViewLocked() const { return bViewLocked; } + void LockView( sal_Bool b ) { bViewLocked = b; } + + inline void LockPaint(); + void ImplLockPaint(); + inline void UnlockPaint( sal_Bool bVirDev = sal_False ); + void ImplUnlockPaint( sal_Bool bVirDev ); + sal_Bool IsPaintLocked() const { return nLockPaint != 0; } + + // Abfragen/Erzeugen DrawView + PageView + const sal_Bool HasDrawView() const; + void MakeDrawView(); + + //DrawView darf u.U. am UI benutzt werden. + SdrView *GetDrawView(); + const SdrView *GetDrawView() const { return ((ViewShell*)this)->GetDrawView(); } + + //sorge dafuer, das auf jedenfall die MarkListe aktuell ist (Bug 57153) + SdrView *GetDrawViewWithValidMarkList(); + + // erfrage den Attribut Pool + inline const SfxItemPool& GetAttrPool() const; + SfxItemPool& GetAttrPool(); + + sal_Bool IsPreView() const { return bPreView; } + + sal_Bool IsFrameView() const { return bFrameView; } + void SetFrameView( const Size& rBrowseBorder ) + { bFrameView = sal_True; aBrowseBorder = rBrowseBorder; } + + //Nimmt die notwendigen Invalidierungen vor, + //wenn sich der BrowdseModus aendert, bBrowseChgd == sal_True + //oder, im BrowseModus, wenn sich die Groessenverhaeltnisse + //aendern (bBrowseChgd == sal_False) + void CheckBrowseView( FASTBOOL bBrowseChgd ); + + //Damit in der UI nicht ueberall das dochxx includet werden muss + sal_Bool IsBrowseMode() const; + + sal_Bool IsHeadInBrowse() const; + void SetHeadInBrowse( sal_Bool bOn = sal_True ); + sal_Bool IsFootInBrowse() const; + void SetFootInBrowse( sal_Bool bOn = sal_True ); + + const Size& GetBrowseBorder() const{ return aBrowseBorder; } + void SetBrowseBorder( const Size& rNew ); + + ViewShell( ViewShell*, Window *pWin = 0, OutputDevice *pOut = 0, + long nFlags = 0 ); + ViewShell( SwDoc *pDoc, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XSpellChecker1 > xSpell, + ::com::sun::star::uno::Reference< + ::com::sun::star::linguistic::XHyphenator > xHyph, + Window *pWin, + const SwViewOption *pOpt = 0, OutputDevice *pOut = 0, + long nFlags = 0 ); + virtual ~ViewShell(); + +}; + +//---- class CurrShell verwaltet den globalen ShellPointer ------------------- + +class CurrShell +{ +public: + ViewShell *pPrev; + SwRootFrm *pRoot; + + CurrShell( ViewShell *pNew ); + ~CurrShell(); +}; + +inline void ViewShell::ResetInvalidRect() +{ + aInvalidRect.Clear(); +} +inline void ViewShell::StartAction() +{ + if ( !nStartAction++ ) + ImplStartAction(); +} +inline void ViewShell::EndAction( const sal_Bool bIdleEnd ) +{ + if( 0 == (nStartAction - 1) ) + ImplEndAction( bIdleEnd ); + --nStartAction; +} + +inline void ViewShell::LockPaint() +{ + if ( !nLockPaint++ ) + ImplLockPaint(); +} +inline void ViewShell::UnlockPaint( sal_Bool bVirDev ) +{ + if ( 0 == --nLockPaint ) + ImplUnlockPaint( bVirDev ); +} +inline const SfxItemPool& ViewShell::GetAttrPool() const +{ + return ((ViewShell*)this)->GetAttrPool(); +} + + + +#endif //_VIEWSH_HXX diff --git a/sw/inc/viscrs.hxx b/sw/inc/viscrs.hxx new file mode 100644 index 000000000000..688a5ac758a3 --- /dev/null +++ b/sw/inc/viscrs.hxx @@ -0,0 +1,249 @@ +/************************************************************************* + * + * $RCSfile: viscrs.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _VISCRS_HXX +#define _VISCRS_HXX + +#ifndef _CURSOR_HXX //autogen +#include +#endif +#include "swcrsr.hxx" +#include "swrect.hxx" +#include "swregion.hxx" + +class SwCrsrShell; +class SwShellCrsr; +class Window; + + +// -------- Ab hier Klassen / Methoden fuer den nicht Text-Cursor ------ + +class SwVisCrsr +#ifdef SW_CRSR_TIMER + : private Timer +#endif +{ + friend void _InitCore(); + friend void _FinitCore(); + + BOOL bIsVisible : 1; + BOOL bIsDragCrsr : 1; + +#ifdef SW_CRSR_TIMER + BOOL bTimerOn : 1; +#endif + + Cursor aTxtCrsr; + const SwCrsrShell* pCrsrShell; + +#ifdef SW_CRSR_TIMER + virtual void Timeout(); +#endif + void _SetPosAndShow(); + +public: + SwVisCrsr( const SwCrsrShell * pCShell ); + ~SwVisCrsr(); + + void Show(); + void Hide(); + + FASTBOOL IsVisible() const { return bIsVisible; } + FASTBOOL IsDragCrsr() const { return bIsDragCrsr; } + void SetDragCrsr( BOOL bFlag = TRUE ) { bIsDragCrsr = bFlag; } + +#ifdef SW_CRSR_TIMER + FASTBOOL ChgTimerFlag( BOOL bTimerOn = TRUE ); +#endif +}; + + +// ------ Ab hier Klassen / Methoden fuer die Selectionen ------- + +class SwSelPaintRects : public SwRects +{ + friend void _InitCore(); + friend void _FinitCore(); + + static long nPixPtX, nPixPtY; + static MapMode *pMapMode; + + // die Shell + const SwCrsrShell* pCShell; + + void Paint( const SwRect& rRect ); + + virtual void Paint( const Rectangle& rRect ); + virtual void FillRects() = 0; + +public: + SwSelPaintRects( const SwCrsrShell& rCSh ); + ~SwSelPaintRects(); + + void Show(); + void Hide(); + void Invalidate( const SwRect& rRect ); + + const SwCrsrShell* GetShell() const { return pCShell; } + // check current MapMode of the shell and set possibly the static members. + // Optional set the parameters pX, pY + static void Get1PixelInLogic( const ViewShell& rSh, + long* pX = 0, long* pY = 0 ); +}; + + +class SwShellCrsr : public virtual SwCursor, public SwSelPaintRects +{ + // Dokument-Positionen der Start/End-Charakter einer SSelection + Point aMkPt, aPtPt; + const SwPosition* pPt; // fuer Zuordung vom GetPoint() zum aPtPt + + virtual void FillRects(); // fuer Table- und normalen Crsr + +public: + SwShellCrsr( const SwCrsrShell& rCrsrSh, const SwPosition &rPos ); + SwShellCrsr( const SwCrsrShell& rCrsrSh, const SwPosition &rPos, + const Point& rPtPos, SwPaM* pRing = 0 ); + SwShellCrsr( SwShellCrsr& ); + virtual ~SwShellCrsr(); + + virtual operator SwShellCrsr* (); + + void Show(); // Update und zeige alle Selektionen an + void Hide(); // verstecke alle Selektionen + void Invalidate( const SwRect& rRect ); + + const Point& GetPtPos() const { return( SwPaM::GetPoint() == pPt ? aPtPt : aMkPt ); } + Point& GetPtPos() { return( SwPaM::GetPoint() == pPt ? aPtPt : aMkPt ); } + const Point& GetMkPos() const { return( SwPaM::GetMark() == pPt ? aPtPt : aMkPt ); } + Point& GetMkPos() { return( SwPaM::GetMark() == pPt ? aPtPt : aMkPt ); } + const Point& GetSttPos() const { return( SwPaM::Start() == pPt ? aPtPt : aMkPt ); } + Point& GetSttPos() { return( SwPaM::Start() == pPt ? aPtPt : aMkPt ); } + const Point& GetEndPos() const { return( SwPaM::End() == pPt ? aPtPt : aMkPt ); } + Point& GetEndPos() { return( SwPaM::End() == pPt ? aPtPt : aMkPt ); } + + virtual void SetMark(); + + virtual SwCursor* Create( SwPaM* pRing = 0 ) const; + + virtual FASTBOOL MaxReplaceArived(); + virtual void SaveTblBoxCntnt( const SwPosition* pPos = 0 ); + + FASTBOOL UpDown( BOOL bUp, USHORT nCnt = 1 ); + + // TRUE: an die Position kann der Cursor gesetzt werden + virtual FASTBOOL IsAtValidPos( BOOL bPoint = TRUE ) const; + +#ifndef PRODUCT +// JP 05.03.98: zum Testen des UNO-Crsr Verhaltens hier die Implementierung +// am sichtbaren Cursor + virtual FASTBOOL IsSelOvr( int eFlags = + ( SELOVER_CHECKNODESSECTION | + SELOVER_TOGGLE | SELOVER_CHANGEPOS )); +#endif + + DECL_FIXEDMEMPOOL_NEWDEL( SwShellCrsr ) +}; + + + +class SwShellTableCrsr : public virtual SwShellCrsr, public virtual SwTableCursor +{ + // die Selection hat die gleiche Reihenfolge wie die + // TabellenBoxen. D.h., wird aus dem einen Array an einer Position + // etwas geloescht, dann muss es auch im anderen erfolgen!! + + +public: + SwShellTableCrsr( const SwCrsrShell& rCrsrSh, const SwPosition& rPos ); + SwShellTableCrsr( const SwCrsrShell& rCrsrSh, + const SwPosition &rMkPos, const Point& rMkPt, + const SwPosition &rPtPos, const Point& rPtPt ); + virtual ~SwShellTableCrsr(); + + virtual operator SwShellTableCrsr* (); + + virtual void FillRects(); // fuer Table- und normalen Crsr + + // Pruefe, ob sich der SPoint innerhalb der Tabellen-SSelection befindet + FASTBOOL IsInside( const Point& rPt ) const; + + virtual void SetMark(); + virtual SwCursor* Create( SwPaM* pRing = 0 ) const; + virtual operator SwShellCrsr* (); + virtual operator SwTableCursor* (); + virtual FASTBOOL MaxReplaceArived(); + virtual void SaveTblBoxCntnt( const SwPosition* pPos = 0 ); + + // TRUE: an die Position kann der Cursor gesetzt werden + virtual FASTBOOL IsAtValidPos( BOOL bPoint = TRUE ) const; + +#ifndef PRODUCT +// JP 05.03.98: zum Testen des UNO-Crsr Verhaltens hier die Implementierung +// am sichtbaren Cursor + virtual FASTBOOL IsSelOvr( int eFlags = + ( SELOVER_CHECKNODESSECTION | + SELOVER_TOGGLE | SELOVER_CHANGEPOS )); +#endif +}; + + + +#endif // _VISCRS_HXX diff --git a/sw/inc/wdocsh.hxx b/sw/inc/wdocsh.hxx new file mode 100644 index 000000000000..5c53b9f7917f --- /dev/null +++ b/sw/inc/wdocsh.hxx @@ -0,0 +1,100 @@ +/************************************************************************* + * + * $RCSfile: wdocsh.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:29 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _SWWDOCSH_HXX +#define _SWWDOCSH_HXX + +#include "docsh.hxx" +#ifndef SW_SWDLL_HXX +#include +#endif + +class SwWebDocShell: public SwDocShell +{ + USHORT nSourcePara; // aktive Zeile in der SourceView +public: + + // aber selbst implementieren + SFX_DECL_INTERFACE(SW_WEBDOCSHELL); + SFX_DECL_OBJECTFACTORY_DLL(SwWebDocShell, SW_DLL()); + TYPEINFO(); + + SwWebDocShell(SfxObjectCreateMode eMode = SFX_CREATE_MODE_EMBEDDED); + ~SwWebDocShell(); + + // Anforderung der pIo-Struktur fuer den Zugriff auf Substorages + // und Streams + virtual void FillRegInfo( SvEmbeddedRegistryInfo * ); + + virtual void FillClass( SvGlobalName * pClassName, + ULONG * pClipFormat, + String * pAppName, + String * pLongUserName, + String * pUserName, + long nVersion = SOFFICE_FILEFORMAT_NOW ) const; + USHORT GetSourcePara()const + {return nSourcePara;} + void SetSourcePara(USHORT nSet) + {nSourcePara = nSet;} +}; + +#endif + + diff --git a/sw/prj/d.lst b/sw/prj/d.lst new file mode 100644 index 000000000000..a66aee0e03c8 --- /dev/null +++ b/sw/prj/d.lst @@ -0,0 +1,66 @@ +..\inc\sw.lst %_DEST%\inc%_EXT%\sw.lst +..\inc\swinter.h %_DEST%\ODK\inc%_EXT%\swinter.h +..\inc\orntenum.hxx %_DEST%\inc%_EXT%\sw\orntenum.hxx +..\inc\horiornt.hxx %_DEST%\inc%_EXT%\sw\horiornt.hxx +..\%__SRC%\inc\swinter.h %_DEST%\ODK\inc%_EXT%\swinter.h +..\%__SRC%\misc\swinter.c %_DEST%\ODK\src%_EXT%\swinter.c +..\%__SRC%\bin\sweb.res %_DEST%\bin%_EXT%\sweb.res +..\%__SRC%\bin\*.ex$ %_DEST%\bin%_EXT% +..\xml\*.xml %_DEST%\xml\*.xml +touch: ..\%__SRC%\misc\sw.hid %_DEST%\bin%_EXT%\sw.hid +..\%__SRC%\bin\soffice.pdb %_DEST%\bin%_EXT%\soffice.pdb +..\%__SRC%\bin\swslots.tlb %_DEST%\bin%_EXT%\swslots.tlb +..\%__SRC%\bin\wswslots.tlb %_DEST%\bin%_EXT%\wswslots.tlb +..\%__SRC%\bin\sw%upd%*.dll %_DEST%\bin%_EXT%\sw%upd%*.dll +..\%__SRC%\bin\sw%upd%*.res %_DEST%\bin%_EXT%\sw%upd%*.res +..\%__SRC%\bin\sw%upd%*.res %_DEST%\bin%_EXT%\sw%upd%*.res +..\%__SRC%\lib\swinter.lib %_DEST%\lib%_EXT%\swinter.lib +..\%__SRC%\lib\swinter.lib %_DEST%\ODK\lib%_EXT%\swinter.lib +..\%__SRC%\misc\sw.csv %_DEST%\inc%_EXT%\sw.csv +..\%__SRC%\lib\swlib.lib %_DEST%\lib%_EXT%\swlib.lib +..\%__SRC%\slb\lib*.* %_DEST%\lib%_EXT%\lib*.* +..\%__SRC%\lib\lib*.* %_DEST%\lib%_EXT%\lib*.* +..\inc\swdll.hxx %_DEST%\inc%_EXT%\swdll.hxx +..\%__SRC%\lib\swweblib.lib %_DEST%\lib%_EXT%\swweblib.lib +mkdir: %_DEST%\idl\sw +hedabu: ..\unoidl\sw\swmap.idl %_DEST%\idl%_EXT%\sw\swmap.idl +hedabu: ..\unoidl\sw\swtxtdoc.idl %_DEST%\idl%_EXT%\sw\swtxtdoc.idl +hedabu: ..\unoidl\sw\swdoccol.idl %_DEST%\idl%_EXT%\sw\swdoccol.idl +hedabu: ..\unoidl\sw\swtxview.idl %_DEST%\idl%_EXT%\sw\swtxview.idl +hedabu: ..\unoidl\sw\swtxtsel.idl %_DEST%\idl%_EXT%\sw\swtxtsel.idl +hedabu: ..\unoidl\sw\swtxtbl.idl %_DEST%\idl%_EXT%\sw\swtxtbl.idl +hedabu: ..\unoidl\sw\swobject.idl %_DEST%\idl%_EXT%\sw\swobject.idl +hedabu: ..\unoidl\sw\swtxfld.idl %_DEST%\idl%_EXT%\sw\swtxfld.idl +hedabu: ..\unoidl\sw\swtype.idl %_DEST%\idl%_EXT%\sw\swtype.idl +hedabu: ..\unoidl\sw\swservc.idl %_DEST%\idl%_EXT%\sw\swservc.idl +hedabu: ..\unoidl\sw\swmod.idl %_DEST%\idl%_EXT%\sw\swmod.idl +mkdir: %_DEST%\inc\%_EXT%\sw +mkdir: %_DEST%\inc\%_EXT%\uno +mkdir: %_DEST%\inc\%_EXT%\uno\one +hedabu: ..\inc\swwebdll.hxx %_DEST%\inc%_EXT%\sw\swwebdll.hxx +hedabu: ..\inc\swdll.hxx %_DEST%\inc%_EXT%\sw\swdll.hxx +hedabu: ..\inc\swinter.h %_DEST%\inc%_EXT%\sw\swinter.h +hedabu: ..\%__SRC%\inc\sw\swobject.hxx %_DEST%\inc%_EXT%\sw\swobject.hxx +hedabu: ..\%__SRC%\inc\sw\swtxtbl.hxx %_DEST%\inc%_EXT%\sw\swtxtbl.hxx +hedabu: ..\%__SRC%\inc\sw\swtxfld.hxx %_DEST%\inc%_EXT%\sw\swtxfld.hxx +hedabu: ..\%__SRC%\inc\sw\swdoccol.hxx %_DEST%\inc%_EXT%\sw\swdoccol.hxx +hedabu: ..\%__SRC%\inc\sw\swtxtdoc.hxx %_DEST%\inc%_EXT%\sw\swtxtdoc.hxx +hedabu: ..\%__SRC%\inc\sw\swtype.hxx %_DEST%\inc%_EXT%\sw\swtype.hxx +hedabu: ..\%__SRC%\inc\sw\swtxtsel.hxx %_DEST%\inc%_EXT%\sw\swtxtsel.hxx +hedabu: ..\%__SRC%\inc\sw\swtxview.hxx %_DEST%\inc%_EXT%\sw\swtxview.hxx +hedabu: ..\%__SRC%\inc\sw\swservc.hxx %_DEST%\inc%_EXT%\sw\swservc.hxx +hedabu: ..\%__SRC%\inc\sw\swmod.hxx %_DEST%\inc%_EXT%\sw\swmod.hxx +hedabu: ..\%__SRC%\inc\sw\swobject.h %_DEST%\inc%_EXT%\uno\one\swobject.h +hedabu: ..\%__SRC%\inc\sw\swtxtbl.h %_DEST%\inc%_EXT%\uno\one\swtxtbl.h +hedabu: ..\%__SRC%\inc\sw\swtxfld.h %_DEST%\inc%_EXT%\uno\one\swtxfld.h +hedabu: ..\%__SRC%\inc\sw\swdoccol.h %_DEST%\inc%_EXT%\uno\one\swdoccol.h +hedabu: ..\%__SRC%\inc\sw\swtxtdoc.h %_DEST%\inc%_EXT%\uno\one\swtxtdoc.h +hedabu: ..\%__SRC%\inc\sw\swtype.h %_DEST%\inc%_EXT%\uno\one\swtype.h +hedabu: ..\%__SRC%\inc\sw\swtxtsel.h %_DEST%\inc%_EXT%\uno\one\swtxtsel.h +hedabu: ..\%__SRC%\inc\sw\swtxview.h %_DEST%\inc%_EXT%\uno\one\swtxview.h +hedabu: ..\%__SRC%\inc\sw\swservc.h %_DEST%\inc%_EXT%\uno\one\swservc.h +hedabu: ..\%__SRC%\inc\sw\swmod.h %_DEST%\inc%_EXT%\uno\one\swmod.h + +mkdir: %_DEST%\ucr\sw +..\%__SRC%\ucr\*.ucr %_DEST%\ucr%_EXT%\sw\*.ucr + diff --git a/sw/sdi/_basesh.sdi b/sw/sdi/_basesh.sdi new file mode 100644 index 000000000000..090f21aad120 --- /dev/null +++ b/sw/sdi/_basesh.sdi @@ -0,0 +1,636 @@ +/*----------------------------------------------------------------------- + + $Workfile: _BASESH.SDI $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_basesh.sdi,v 1.1.1.1 2000-09-18 17:14:29 hr Exp $ + + Beschreibung: interface Base - gemeinsame Basisfunktionalitaet + fuer SW und SW/WEB + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextSelection : Selection +[ + Automation = FALSE; +] +{ + SID_DELETE // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = GetState ; + FastCall = FALSE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_BACKSPACE // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = GetState ; + FastCall = FALSE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_SHIFT_BACKSPACE // status() + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_UNDO // status(final|play) + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + ] + + SID_REDO // status(final|play) + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + ] + + SID_REPEAT // status() + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_CUT // status(final|play) + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + Volatile; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_COPY // status(final|play) + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + Volatile; + ] + + SID_PASTE // status(final|play) + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_PASTESPECIAL // status(final|play) + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_REPAGINATE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_CHANGE_DBFIELD + [ + ExecMethod = ExecField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_SBA_BRW_UPDATE + [ + StateMethod = GetState; + ExecMethod = ExecDB; + Export = FALSE + ] + + SID_SBA_BRW_INSERT + [ + StateMethod = GetState; + ExecMethod = ExecDB; + Export = FALSE + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_SBA_BRW_MERGE + [ + StateMethod = GetState; + ExecMethod = ExecDB; + Export = FALSE + ] + + FN_UPDATE_FIELDS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_UPDATE_CHARTS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_UPDATE_ALL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_UPDATE_INPUTFIELDS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_FRAME_TO_ANCHOR // status() + [ + /*OS: Datentypen unvertraeglich ?? */ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_GOTO_NEXT_OBJ // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_GOTO_PREV_OBJ // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_GOTO_NEXT_MARK // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_GOTO_PREV_MARK // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_PREV_BOOKMARK // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_NEXT_BOOKMARK // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + SID_GALLERY_FORMATS // status() + [ + Export = FALSE ; + ExecMethod = Execute ; + ] + + SID_GALLERY_ENABLE_ADDCOPY + [ + Export = FALSE; + StateMethod = GetState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BACKGROUND_COLOR // status() + [ + ExecMethod = ExecBckCol ; + StateMethod = GetBckColState ; + Cachable , AutoUpdate ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_EDIT_REGION // status(final|play) + [ + ExecMethod = EditRegionDialog ; + StateMethod = GetState ; + ] + + FN_INSERT_REGION // status(final|play) + [ + ExecMethod = InsertRegionDialog ; + StateMethod = GetState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_INSERT_COLUMN_SECTION // status() + [ + ExecMethod = InsertRegionDialog; + StateMethod = GetState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SfxVoidItem PageDialog FN_FORMAT_PAGE_DLG ( ) // status(final|play) + [ + ExecMethod = ExecDlg ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_PAGE_COLUMN_DLG // status(final|play) + [ + ExecMethod = ExecDlg ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_CONVERT_TEXT_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_BORDER_DLG // status(final|play) + [ + ExecMethod = ExecDlg ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_BORDER_INNER // status() + [ + StateMethod = GetBorderState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + +/* SID_ATTR_BORDER_OUTER // status() + [ + ExecMethod = Execute ; + StateMethod = GetBorderState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +*/ + FN_FORMAT_BACKGROUND_DLG // status(final|play) + [ + ExecMethod = ExecDlg ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SfxBoolItem StyleWatercanMode SID_STYLE_WATERCAN // status() + [ + SfxUInt16Item WatercanStyleModeOnOff + ( + SfxStringItem Param SID_STYLE_WATERCAN , + SfxUInt16Item Family SID_STYLE_FAMILY + ) ; + ExecMethod = Execute ; + StateMethod = StateStyle ; + GroupId = GID_TEMPLATE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_STYLE_UPDATE_BY_EXAMPLE // status() + [ + ExecMethod = Execute ; + StateMethod = StateStyle ; + ] + + SID_STYLE_NEW_BY_EXAMPLE // status(fina|play) + [ + ExecMethod = Execute ; + StateMethod = StateStyle ; + FastCall = TRUE; // fuer Macroausfuehrung! + ] + SID_STYLE_APPLY // status(fina|play) + [ + ExecMethod = Execute ; + StateMethod = StateStyle ; + FastCall = TRUE;// fuer Macroausfuehrung! + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_STYLE_FAMILY1 // status(fina|play) + [ + StateMethod = StateStyle ; + ] + + SID_STYLE_FAMILY2 // status(fina|play) + [ + StateMethod = StateStyle ; + ] + + SID_STYLE_FAMILY3 // status(fina|play) + [ + StateMethod = StateStyle ; + ] + + SID_STYLE_FAMILY4 // status(fina|play) + [ + StateMethod = StateStyle ; + ] + + SID_STYLE_FAMILY5 // status(fina|play) + [ + StateMethod = StateStyle ; + ] + + //OS: Selection.Escape gibt es zusaetzlich zu Window.Escape + + FN_ESCAPE // status(final|play|rec) + [ + ExecMethod = Execute ; + ] + + SID_IMAP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Toggle = FALSE; + ] + + SID_IMAP_EXEC + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +// Methode fuer Rahmen und Objekte + FN_TOOL_ANKER + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_ANKER_PARAGRAPH + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_ANKER_CHAR + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_ANKER_AT_CHAR + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_ANKER_FRAME + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_UPDATE_ALL_LINKS // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + +/*-----------------22.01.97 09.41------------------- +// ab hier immer Export = FALSE +--------------------------------------------------*/ + + FN_FRAME_WRAP // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAP_IDEAL // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_NOWRAP // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAPTHRU // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAPTHRU_TRANSP // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAP_CONTOUR // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_WRAP_ANCHOR_ONLY // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAP_LEFT // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + FN_FRAME_WRAP_RIGHT // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + + + + SID_GALLERY_BG_BRUSH + [ + ExecMethod = ExecuteGallery; + StateMethod = GetGalleryState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE; + ] + SID_ATTR_BORDER_SHADOW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.46 2000/05/30 10:12:26 os + unused slots removed + + Revision 1.45 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.44 2000/05/10 12:00:08 os + Basic API removed + + Revision 1.43 1999/10/20 16:36:53 jp + Bug #68106#: new slot for update all charts in a document + + Revision 1.42 1999/05/27 11:20:10 OS + Einf?gen/Bearbeiten von Spalten ueberarbeitet + + + Rev 1.41 27 May 1999 13:20:10 OS + Einf?gen/Bearbeiten von Spalten ueberarbeitet + + Rev 1.40 15 Apr 1999 12:05:52 OS + #64766# SID_IMAP: Toggle = FALSE; + + Rev 1.39 23 Mar 1999 12:15:30 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.38 12 Feb 1999 13:28:02 MA + #61262# Zusaetzliche hidden functions in den Toolbars + + Rev 1.37 26 Jan 1999 14:21:38 OS + #61140# neuer Slot fuer Felder-Update + + Rev 1.36 12 Nov 1998 17:29:12 MA + #58677# Disable Flag + + Rev 1.35 11 Jun 1998 13:02:54 OM + #49467# Rahmen in Inhalt-protecteten Parents nicht bearbeiten + + Rev 1.34 23 Apr 1998 12:29:24 OS + PageLeft/Right/Top/BottomMargin #49761# + + Rev 1.33 25 Feb 1998 19:16:00 MA + Aktualisieren erweitert + + Rev 1.32 29 Jan 1998 15:00:22 OM + Am Zeichen verankern + + Rev 1.31 22 Jan 1998 17:40:30 OS + SID_BACKGROUND_PATTERN entsorgt + + Rev 1.30 20 Nov 1997 14:02:42 OS + StyleNew/UpdateByExample: FastCall wg. Basic #45671# + + Rev 1.29 11 Nov 1997 13:17:18 JP + neu: NumRule-Vorlagen + + Rev 1.28 03 Sep 1997 09:30:54 MBA + Interior in SVX + + Rev 1.27 02 Sep 1997 10:58:52 JP + neu: UpdateAllLinks - uebers Basic alle Links updaten + + Rev 1.26 28 Aug 1997 12:38:32 MBA + Neue Interface-Namen + + Rev 1.25 06 Aug 1997 13:38:42 OS + ShowCursor geht wieder #42017#,#41945# + + Rev 1.24 25 Jul 1997 11:27:52 AMA + Opt: GroupId und ConfigName aufgeraeumt + + Rev 1.23 23 Jul 1997 16:05:14 AMA + Opt: ConfigName etc. aufgeraeumt + + Rev 1.22 18 Jul 1997 09:38:06 OM + Fkts nicht exportieren + + Rev 1.21 16 Jul 1997 11:30:10 OM + sid_gallery entfernt + + Rev 1.20 14 Jul 1997 14:37:12 OS + Ableitung _Base:_Object #41369# + + Rev 1.19 08 Jul 1997 15:10:36 OS + FN_SHOW_CURSOR + + Rev 1.18 01 Jul 1997 13:45:56 OS + Inhalte aus dem Basic einfuegen + + Rev 1.17 27 Jun 1997 16:21:58 OS + SID_JUMPTOMARK von der View an die BaseShell + + Rev 1.16 26 Jun 1997 09:44:48 OM + Basic: Datenbank in Feldbefehlen ersetzen + + Rev 1.15 19 Jun 1997 13:32:22 MA + State fuer galler + + Rev 1.14 17 Jun 1997 14:54:38 OM + Methoden fuer ersetzen von Userfeldern + + Rev 1.13 13 Jun 1997 13:18:52 OM + Benutzer- und Expression-Felder per Basic loeschen + + Rev 1.12 12 Jun 1997 15:32:34 JP + Feld-Slots aus der TextShell in die BaseShell verschoben + + Rev 1.11 24 Apr 1997 14:40:00 JP + neu: SetFixDateTimFields + + Rev 1.10 22 Apr 1997 14:03:42 OS + Is/SetRegionPassword + + Rev 1.9 17 Apr 1997 15:44:14 AMA + New: Rahmengebundene Rahmen + + Rev 1.8 15 Apr 1997 12:00:30 OS + Bedingung der Bereiche setzen/lesen + + Rev 1.7 14 Apr 1997 16:10:16 OS + Flags und Link der Bereiche setzen/erfragen + + Rev 1.6 22 Feb 1997 15:11:58 OS + neue Slots: Actions setzen/ruecksetzen + + Rev 1.5 13 Feb 1997 22:57:38 MA + Datenbankfunktionalitaet wieder hergestellt + + Rev 1.4 13 Feb 1997 09:54:20 MA + unnoetige und falsche Texte entfernt + + Rev 1.3 12 Feb 1997 16:56:52 OM + Datenbankslots ueber Baseshell rufen + + Rev 1.2 06 Feb 1997 13:48:20 MA + new: Gallery-Background + + Rev 1.1 27 Jan 1997 16:37:44 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.0 23 Jan 1997 08:14:08 OS + Initial revision. + + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/_beziers.sdi b/sw/sdi/_beziers.sdi new file mode 100644 index 000000000000..a3275c38567e --- /dev/null +++ b/sw/sdi/_beziers.sdi @@ -0,0 +1,141 @@ +/*------------------------------------------------------------------------ + + $Workfile: _beziers.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_beziers.sdi,v 1.1.1.1 2000-09-18 17:14:29 hr Exp $ + + Beschreibung: Basis-interface fuer Bezier + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface _Bezier : Base +[ Automation = FALSE; ] +{ + SID_DELETE + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_BACKSPACE + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_ESCAPE // api: + [ + ExecMethod = Execute; + ] + + SID_BEZIER_MOVE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_INSERT + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_DELETE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CUTLINE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CONVERT + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_EDGE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_SMOOTH + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_SYMMTR + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CLOSE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_ELIMINATE_POINTS + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.5 1998/11/12 16:28:52 MA + #58677# Disable Flag + + + Rev 1.4 12 Nov 1998 17:28:52 MA + #58677# Disable Flag + + Rev 1.3 16 Jul 1997 16:47:26 OM + Einige Basic-Fkts nicht exportieren + + Rev 1.2 16 Jun 1997 15:29:08 OM + GPF behoben: Backspace wie Delete behandeln + + Rev 1.1 13 Feb 1997 09:54:08 MA + unnoetige und falsche Texte entfernt + + Rev 1.0 23 Jan 1997 14:45:12 OS + Initial revision. + + +------------------------------------------------------------------------*/ + + + + diff --git a/sw/sdi/_docsh.sdi b/sw/sdi/_docsh.sdi new file mode 100644 index 000000000000..c378324fc408 --- /dev/null +++ b/sw/sdi/_docsh.sdi @@ -0,0 +1,166 @@ +/*------------------------------------------------------------------------ + + $Workfile: _docsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_docsh.sdi,v 1.1.1.1 2000-09-18 17:14:29 hr Exp $ + + Beschreibung: interface __Document enthaelt gemeinsame Slots fuer + SwDocShell und SwWebDocShell + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextDocument : OfficeDocument +[ + Automation = FALSE; +] +{ + SID_PRINTPREVIEW + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + + FN_AUTO_CORRECT_DLG + [ + ExecMethod = Execute ; + ] + + SID_STYLE_NEW + [ + ExecMethod = ExecStyleSheet ; + StateMethod = NoState ; + ] + + SID_STYLE_EDIT + [ + ExecMethod = ExecStyleSheet ; + StateMethod = NoState ; + ] + + SID_STYLE_DELETE + [ + ExecMethod = ExecStyleSheet ; + StateMethod = NoState ; + ] + + SID_TEMPLATE_LOAD + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + SID_GET_COLORTABLE + [ + ExecMethod = Execute ; + ] + + SID_SPELLCHECKER_CHANGED + [ + ExecMethod = Execute ; + ] + + SID_MAIL_PREPAREEXPORT + [ + ExecMethod = Execute ; + ] + + //No Export + SID_STYLE_FAMILY1 + [ + Export = FALSE ; + StateMethod = StateStyleSheet ; + ] + + SID_STYLE_FAMILY2 + [ + Export = FALSE ; + StateMethod = StateStyleSheet ; + ] + + SID_STYLE_FAMILY3 + [ + Export = FALSE ; + StateMethod = StateStyleSheet ; + ] + + SID_STYLE_FAMILY4 + [ + Export = FALSE ; + StateMethod = StateStyleSheet ; + ] + SID_STYLE_FAMILY5 + [ + Export = FALSE ; + StateMethod = StateStyleSheet ; + ] + + + SID_ATTR_YEAR2000 + [ + ExecMethod = Execute ; + StateMethod = GetState; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.17 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.16 1999/09/10 12:16:20 jp + AutoCorrectDialog: dont disable by protected cursor + + Revision 1.15 1999/02/02 07:41:38 OS + #61027# zweistellige Jahreszahlen + + + Rev 1.14 02 Feb 1999 08:41:38 OS + #61027# zweistellige Jahreszahlen + + Rev 1.13 12 Nov 1998 17:29:28 MA + #58677# Disable Flag + + Rev 1.12 28 May 1998 17:39:56 OM + Zahlenformat per Basic ermitteln + + Rev 1.11 13 May 1998 14:58:30 OM + Autokorrektur/Autoformat umgestaltet und zusammengefasst + + Rev 1.10 24 Apr 1998 15:03:12 OM + Seitenvorschau auch im Html-Mode + + Rev 1.9 17 Apr 1998 17:13:10 OM + PageCount-Event per Macro setzen: Vorbereitungen + + Rev 1.8 11 Nov 1997 13:17:18 JP + neu: NumRule-Vorlagen + + Rev 1.7 04 Sep 1997 13:36:52 MBA + Document von OfficeDocument abgeleitet + + Rev 1.6 28 Aug 1997 12:51:22 MBA + Neue Interface-Namen + + Rev 1.5 05 Jul 1997 09:42:06 OS + Macro und Script an Rahmenvorlagen setzen/lesen + + Rev 1.4 17 Jun 1997 13:24:38 JP + neu: Execute vom Slot SID_MAIL_PREPAREEXPORT + + Rev 1.3 06 Mar 1997 08:43:20 OS + SID_SPELLCHECKER_CHANGED + + Rev 1.2 13 Feb 1997 09:54:06 MA + unnoetige und falsche Texte entfernt + + Rev 1.1 30 Jan 1997 15:28:18 OS + SourceView nur noch fuer den Sw/Web + + Rev 1.0 23 Jan 1997 08:14:08 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_drwbase.sdi b/sw/sdi/_drwbase.sdi new file mode 100644 index 000000000000..9600b95d4b26 --- /dev/null +++ b/sw/sdi/_drwbase.sdi @@ -0,0 +1,164 @@ +/*----------------------------------------------------------------------- + + $Workfile: _drwbase.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_drwbase.sdi,v 1.1.1.1 2000-09-18 17:14:29 hr Exp $ + + Beschreibung: Basis-interface _DrawBase + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextDrawBase : Selection +[ + Automation = FALSE; +] +{ + FN_DRAW_WRAP_DLG + [ + ExecMethod = Execute; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_TRANSFORM + [ + ExecMethod = Execute; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_GROUP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_UNGROUP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ENTER_GROUP + [ + AutoUpdate = TRUE , + ExecMethod = Execute ; + StateMethod = GetState ; + ] + + SID_LEAVE_GROUP + [ + AutoUpdate = TRUE , + ExecMethod = Execute ; + StateMethod = GetState ; + ] + + SID_FRAME_TO_TOP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_TO_BOTTOM + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_UP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_DOWN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_DELETE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + FastCall = FALSE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_BACKSPACE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + FastCall = FALSE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_STYLE_CATALOG // ole(no) api(play/rec) + [ + StateMethod = StateDisableItems ; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.15 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.14 1999/03/23 11:16:30 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.13 23 Mar 1999 12:16:30 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.12 12 Nov 1998 17:28:34 MA + #58677# Disable Flag + + Rev 1.11 06 Jul 1998 18:10:54 OM + AutoUpdate fuer Enter/Leave Group + + Rev 1.10 12 Jun 1998 16:09:52 OM + Gruppierung betreten/verlassen + + Rev 1.9 11 Jun 1998 16:13:46 OM + Gruppierungsmenue + + Rev 1.8 11 Jun 1998 13:02:54 OM + #49467# Rahmen in Inhalt-protecteten Parents nicht bearbeiten + + Rev 1.7 10 Jun 1998 11:20:44 OM + Hell/Heaven nicht in FormShell + + Rev 1.6 09 Jun 1998 15:37:06 OM + VC-Controls entfernt + + Rev 1.5 15 Apr 1998 15:33:00 OM + #49467 Objekte innerhalb von geschuetzten Rahmen duerfen nicht veraendert werden + + Rev 1.4 28 Aug 1997 12:55:08 MBA + Neue Interface-Namen + + Rev 1.3 16 Jun 1997 15:29:50 OM + GPF behoben: Backspace wie Delete behandeln + + Rev 1.2 12 Mar 1997 10:25:26 OS + IsControl muss an die DrawBaseShell ! + + Rev 1.1 13 Feb 1997 09:54:18 MA + unnoetige und falsche Texte entfernt + + Rev 1.0 23 Jan 1997 14:46:22 OS + Initial revision. + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/_formsh.sdi b/sw/sdi/_formsh.sdi new file mode 100644 index 000000000000..0d7125faf86b --- /dev/null +++ b/sw/sdi/_formsh.sdi @@ -0,0 +1,38 @@ +interface BaseTextDrawForm : Selection +[ + Automation = FALSE; +] +{ + SID_HYPERLINK_SETLINK + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_HYPERLINK_GETLINK + [ + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.4 1998/11/26 14:19:08 MA + #59896# Raster usw jetzt an der Application + + + Rev 1.3 26 Nov 1998 15:19:08 MA + #59896# Raster usw jetzt an der Application + + Rev 1.2 12 Nov 1998 17:29:28 MA + #58677# Disable Flag + + Rev 1.1 02 Nov 1998 09:23:02 MA + #58294# Slots fuer Raster, alte Formslots entsorgt + + Rev 1.0 11 Mar 1998 17:14:04 OM + DB-FormShell + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_frmsh.sdi b/sw/sdi/_frmsh.sdi new file mode 100644 index 000000000000..90fc3d746df6 --- /dev/null +++ b/sw/sdi/_frmsh.sdi @@ -0,0 +1,292 @@ +/*------------------------------------------------------------------------ + + $Workfile: _frmsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_frmsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: Basis-interface fuer Frame + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextFrame : Selection +[ + Automation = FALSE; +] +{ + FN_FRAME_TO_ANCHOR // status() + [ + /*OS: Datentypen unvertraeglich ?? */ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_FRAME_ALIGN_VERT_CENTER // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_BOTTOM // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_TOP // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_ROW_CENTER // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_ROW_BOTTOM // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_ROW_TOP // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_CHAR_CENTER // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_CHAR_BOTTOM // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_VERT_CHAR_TOP // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_HORZ_CENTER // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_HORZ_RIGHT // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_ALIGN_HORZ_LEFT // status(play|final) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FRAME_TO_TOP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_TO_BOTTOM // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + FN_FRAME_UP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_DOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_ULSPACE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_LRSPACE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + GroupId = GID_FRAME; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_FRAME_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_LINESTYLE // status() + [ + ExecMethod = ExecFrameStyle ; + StateMethod = GetLineStyleState ; + Export = FALSE; //#44439# + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_LINECOLOR // status(final|play) + [ + ExecMethod = ExecFrameStyle ; + StateMethod = GetLineStyleState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + /***************************************************** + + Abfragefunktionen fuer ImageMaps + + ****************************************************/ + +// +// Slots ohne Export + + FN_INSERT_FRAME + [ + ExecMethod = Execute ; + StateMethod = StateInsert ; + Export = False; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_BORDER // status() + [ + ExecMethod = ExecFrameStyle ; + StateMethod = GetLineStyleState ; + GroupId = GID_FRAME; + Export = False; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_HYPERLINK_SETLINK // status() + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_HYPERLINK_GETLINK // status() + [ + StateMethod = GetState ; + ] + + FN_FRAME_MIRROR_ON_EVEN_PAGES // status(final|play|rec) + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.21 2000/08/15 13:50:56 os + #77616# re-enable border in SwFrameShell + + Revision 1.20 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.19 2000/05/10 12:00:08 os + Basic API removed + + Revision 1.18 1999/03/23 11:16:28 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.17 23 Mar 1999 12:16:28 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.16 29 Jan 1999 17:15:22 JP + Task #58423#: Reports mit Bildern aus der Datenbank + + Rev 1.15 12 Nov 1998 17:29:08 MA + #58677# Disable Flag + + Rev 1.14 11 Jun 1998 13:02:54 OM + #49467# Rahmen in Inhalt-protecteten Parents nicht bearbeiten + + Rev 1.13 15 May 1998 16:21:34 OM + #49467# Gesch�tzte Rahmen nicht bearbeiten + + Rev 1.12 10 Feb 1998 15:06:06 OM + Spiegeln + + Rev 1.11 22 Jan 1998 17:40:30 OS + SID_BACKGROUND_PATTERN entsorgt + + Rev 1.10 08 Oct 1997 13:30:52 OS + SID_FRAME_LINESTYLE funktioniert nicht ueber die API #44439# + + Rev 1.9 28 Aug 1997 12:38:24 MBA + Neue Interface-Namen + + Rev 1.8 28 Jul 1997 16:46:42 OM + #42111#Neue Statusmethode fuer Hyperlinkleiste + + Rev 1.7 23 Jul 1997 15:19:12 AMA + Opt: ConfigName etc. aufgeraeumt + + Rev 1.6 26 May 1997 14:12:12 OS + StateMethod fuer SwFmtSurround + + Rev 1.5 15 May 1997 12:31:22 OS + Printable und Opaque am Frame + + Rev 1.4 22 Apr 1997 18:46:52 JP + neu: GetSelText/SetText + + Rev 1.3 16 Apr 1997 16:22:28 OS + Kontur und erster Absatz per Basic + + Rev 1.2 13 Feb 1997 09:54:08 MA + unnoetige und falsche Texte entfernt + + Rev 1.1 23 Jan 1997 16:09:06 OS + interface _Frame mit Automation = FALSE + + Rev 1.0 23 Jan 1997 14:46:02 OS + Initial revision. + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/_grfsh.sdi b/sw/sdi/_grfsh.sdi new file mode 100644 index 000000000000..2df8b810f466 --- /dev/null +++ b/sw/sdi/_grfsh.sdi @@ -0,0 +1,153 @@ +/*------------------------------------------------------------------------ + + $Workfile: _grfsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_grfsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: interface _Graphic + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextGraphic : Selection +[ + Automation = FALSE; +] +{ + FN_FLIP_VERT_GRAFIC // status(final|play) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FLIP_HORZ_GRAFIC // status(final|play) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_GRAFIC_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_INSERT_GRAPHIC // zeigt auf FN_FORMAT_GRAFIC_DLG + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_SIM_START // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_GRAPHIC_MIRROR_ON_EVEN_PAGES // status(final|play|rec) + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_GRAF_LUMINANCE // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_CONTRAST // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_RED // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_GREEN // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_BLUE // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_GAMMA // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_TRANSPARENCE // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_INVERT // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_GRAF_MODE // status(final|play|rec) + [ + ExecMethod = ExecAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.10 2000/07/31 19:23:40 jp + new attributes for CJK/CTL and graphic + + Revision 1.9 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.8 1999/03/23 11:16:28 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.7 23 Mar 1999 12:16:28 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.6 12 Nov 1998 17:29:06 MA + #58677# Disable Flag + + Rev 1.5 11 Jun 1998 13:02:54 OM + #49467# Rahmen in Inhalt-protecteten Parents nicht bearbeiten + + Rev 1.4 10 Feb 1998 15:06:06 OM + Spiegeln + + Rev 1.3 28 Aug 1997 12:38:14 MBA + Neue Interface-Namen + + Rev 1.2 28 Jul 1997 16:46:40 OM + #42111#Neue Statusmethode fuer Hyperlinkleiste + + Rev 1.1 13 Feb 1997 09:54:18 MA + unnoetige und falsche Texte entfernt + + Rev 1.0 31 Jan 1997 13:26:24 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_listsh.sdi b/sw/sdi/_listsh.sdi new file mode 100644 index 000000000000..6d26a93f330c --- /dev/null +++ b/sw/sdi/_listsh.sdi @@ -0,0 +1,103 @@ +/*------------------------------------------------------------------------ + + $Workfile: _listsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_listsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: Basis-interface _List + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextList : Selection +[ + Automation = FALSE +] +{ + FN_NUMBER_NEWSTART // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_DOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_NEXT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_NONUM // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_OFF // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + FN_NUM_BULLET_OUTLINE_DOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_OUTLINE_MOVEDOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_OUTLINE_MOVEUP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_OUTLINE_UP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_PREV // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_BULLET_UP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUM_OR_NONUM // status(play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + diff --git a/sw/sdi/_olesh.sdi b/sw/sdi/_olesh.sdi new file mode 100644 index 000000000000..14085aa71229 --- /dev/null +++ b/sw/sdi/_olesh.sdi @@ -0,0 +1,46 @@ +/*------------------------------------------------------------------------ + + $Workfile: _olesh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_olesh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: gemeinsames interface _OleObject + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextOLEObject : Selection +[ + Automation = FALSE; +] +{ +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.6 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.5 2000/05/10 12:00:08 os + Basic API removed + + Revision 1.4 1998/11/12 16:28:52 MA + #58677# Disable Flag + + + Rev 1.3 12 Nov 1998 17:28:52 MA + #58677# Disable Flag + + Rev 1.2 28 Aug 1997 12:52:24 MBA + Neue Interface-Namen + + Rev 1.1 13 Feb 1997 09:54:08 MA + unnoetige und falsche Texte entfernt + + Rev 1.0 31 Jan 1997 13:26:48 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_tabsh.sdi b/sw/sdi/_tabsh.sdi new file mode 100644 index 000000000000..bac8dc218838 --- /dev/null +++ b/sw/sdi/_tabsh.sdi @@ -0,0 +1,409 @@ +/*------------------------------------------------------------------------ + + $Workfile: _tabsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_tabsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: Basis-interface _Table + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseTextTable : Selection +[ + Automation = FALSE; +] +{ + + FN_FORMAT_TABLE_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_NUM_FORMAT_TABLE_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_CALC_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_TABLE_AUTOSUM // status() + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + + FN_TABLE_VERT_NONE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_VERT_CENTER + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_VERT_BOTTOM + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_TABLE_SET_COL_WIDTH // status( final|play ) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_ULSPACE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_LRSPACE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + GroupId = GID_TABLE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_DELETE_COL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_DELETE_ROW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_END_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_START_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_TABLE_INSERT_COL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_INSERT_COL_DLG // status(final|play) + [ + Export = FALSE ; + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_INSERT_ROW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_INSERT_ROW_DLG // status(final|play) + [ + Export = FALSE ; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_MERGE_CELLS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_OPTIMIZE_TABLE + [ + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_ADJUST_CELLS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_BALANCE_CELLS // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_BALANCE_ROWS // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_SELECT_ALL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_TABLE_SELECT_COL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + FN_TABLE_SELECT_ROW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + + FN_TABLE_SET_ROW_HEIGHT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_OPTIMAL_HEIGHT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_SPLIT_CELLS // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_SPLIT_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_MERGE_TABLE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_UNSET_READ_ONLY_CELLS // status() + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + + SID_AUTOFORMAT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SvxBoxItem BorderStyle SID_ATTR_BORDER // status() + [ + ExecMethod = Execute ; + StateMethod = GetFrmBorderState ; + GroupId = GID_TABLE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_LINESTYLE // status() + [ + ExecMethod = ExecTableStyle ; + StateMethod = GetLineStyleState ; + Export = FALSE; //#44439# + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FRAME_LINECOLOR // status(play) + [ + ExecMethod = ExecTableStyle ; + StateMethod = GetLineStyleState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TABLE_MODE_FIX + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + + FN_TABLE_MODE_FIX_PROP + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + + FN_TABLE_MODE_VARIABLE + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + + FN_NUMBER_FORMAT + [ + ExecMethod = ExecNumberFormat; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_NUMBER_STANDARD + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_TWODEC + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_SCIENTIFIC + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_DATE + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_TIME + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_CURRENCY + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_PERCENT + [ + ExecMethod = ExecNumberFormat; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +// Slots ohne Export + + FN_INSERT_TABLE + [ + Export = FALSE ; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + +} +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.20 2000/07/03 20:00:41 jp + Bug #70403#: dont delete protected cells + + Revision 1.19 2000/05/26 07:06:15 os + old SW Basic API Slots removed + + Revision 1.18 1999/03/23 11:15:24 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.17 23 Mar 1999 12:15:24 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.16 17 Feb 1999 21:11:06 JP + Task #61764#: neu: Tabellen zusammenfassen + + Rev 1.15 12 Nov 1998 17:29:12 MA + #58677# Disable Flag + + Rev 1.14 18 Mar 1998 19:43:52 MA + State fuer Split + + Rev 1.13 25 Feb 1998 12:52:10 MA + new: SplitTable + + Rev 1.12 08 Oct 1997 13:30:52 OS + SID_FRAME_LINESTYLE funktioniert nicht ueber die API #44439# + + Rev 1.11 28 Aug 1997 12:50:02 MBA + Neue Interface-Namen + + Rev 1.10 25 Jul 1997 11:29:00 AMA + Opt: GroupId und ConfigName aufgeraeumt + + Rev 1.9 16 Jun 1997 17:38:24 MA + fix: State fuer InsertRowDialog + + Rev 1.8 16 Jun 1997 09:25:22 MA + #40610# State fuer InsertRow + + Rev 1.7 20 May 1997 21:30:22 JP + neu: Tabellenformel uebers Basic setzen + + Rev 1.6 14 May 1997 10:56:52 JP + neue Slots fuer die TabShell + + Rev 1.5 15 Mar 1997 21:04:56 JP + neuer Slot fuer DB-Reports + + Rev 1.4 18 Feb 1997 16:57:16 OS + AutoSum + + Rev 1.3 14 Feb 1997 18:10:00 OM + Zahlenformat-Dlg + + Rev 1.2 13 Feb 1997 09:54:08 MA + unnoetige und falsche Texte entfernt + + Rev 1.1 27 Jan 1997 16:38:18 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.0 23 Jan 1997 14:44:06 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_textsh.sdi b/sw/sdi/_textsh.sdi new file mode 100644 index 000000000000..ad52194a0507 --- /dev/null +++ b/sw/sdi/_textsh.sdi @@ -0,0 +1,1262 @@ +/*------------------------------------------------------------------------ + + $Workfile: _textsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_textsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: Basis-interfaces fuer Text + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface BaseText : Selection +[ + Automation = FALSE; +] +{ + SID_INSERTDOC // status(final|play|rec) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_BOOKMARK // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUM_BULLET_MOVEDOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUM_BULLET_MOVEUP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_EDIT_FORMULA // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_SYMBOL // status(final|play|rec) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_PAGEHEADER // status(final|play|rec) + [ + StateMethod = GetState ; + Export = FALSE; + ] + FN_INSERT_PAGEFOOTER // status(final|play|rec) + [ + StateMethod = GetState ; + Export = FALSE; + ] + + //-------------------------------------------------------------------------- + FN_INSERT_SOFT_HYPHEN // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_HARDHYPHEN // status() + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_HARD_SPACE // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_BREAK // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_PAGEBREAK // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem InsertLinebreak FN_INSERT_LINEBREAK ( ) // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_COLUMN_BREAK // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_BREAK_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_INSERT_GRAPHIC // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_HRULER // status() + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + ] + SID_INSERT_DIAGRAM // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_INSERT_SOUND + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_INSERT_VIDEO + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_SMA // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_SIM // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_INSERT_FLOATINGFRAME // status() + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem InsertObject SID_INSERT_OBJECT ( ) // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem InsertPlugin SID_INSERT_PLUGIN ( ) // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem InsertApplet SID_INSERT_APPLET ( ) // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_TABLE // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_HYPERLINK_SETLINK // status() + [ + ExecMethod = ExecInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_HYPERLINK_GETLINK // status() + [ + StateMethod = StateInsert ; + ] + FN_INSERT_HYPERLINK // status() + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_HYPERLINK_DIALOG + [ + ExecMethod = Execute ; + StateMethod = GetState; + ] + FN_EDIT_HYPERLINK + [ + ExecMethod = Execute ; + StateMethod = GetState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_TABLE_UNSET_READ_ONLY // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_SENT // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_BACK_SENT // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_WORD // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_BACK_WORD // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem DelToEndOfLine FN_DELETE_LINE ( ) // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_BACK_LINE // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_PARA // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_BACK_PARA // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DELETE_WHOLE_LINE // status(final|play) + [ + ExecMethod = ExecDelete ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_CHAR_LEFT // status(final|play) + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + ] + FN_CHAR_RIGHT // status(final|play) + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + ] + FN_LINE_UP // status(final|play) + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + ] + FN_LINE_DOWN // status(final|play) + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + ] + FN_SELECT_WORD // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + SID_SELECTALL // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + // + // Goto - Methoden + // + FN_CNTNT_TO_NEXT_FRAME // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_START_OF_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_END_OF_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_START_OF_NEXT_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_END_OF_NEXT_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_START_OF_PREV_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_END_OF_PREV_COLUMN // status(final|play) + [ + ExecMethod = ExecMoveCol ; + StateMethod = NoState ; + ] + FN_TO_HEADER // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_TO_FOOTER // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_PREV_TABLE // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_NEXT_TABLE // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_GOTO_PREV_REGION + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_GOTO_NEXT_REGION + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_NEXT_WORD // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_START_OF_PARA // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_END_OF_PARA // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_PREV_PARA // status(final) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_NEXT_PARA // status(final) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_PREV_WORD // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_NEXT_SENT // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_PREV_SENT // status(final|play) + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + ] + FN_START_OF_NEXT_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_END_OF_NEXT_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_START_OF_PREV_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_END_OF_PREV_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_START_OF_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_END_OF_PAGE // status(final|play) + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + ] + FN_START_OF_LINE // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + FN_END_OF_LINE // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + FN_START_OF_DOCUMENT // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + FN_END_OF_DOCUMENT // status(final|play) + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + ] + FN_NEXT_TOXMARK // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + FN_PREV_TOXMARK // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + FN_NEXT_TBLFML // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + FN_PREV_TBLFML // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + FN_NEXT_TBLFML_ERR // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + FN_PREV_TBLFML_ERR // status(final|play) + [ + ExecMethod = ExecMoveMisc; + StateMethod = NoState ; + ] + + + // + // Get - Properties + // + FN_AUTOFORMAT_AUTO // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_AUTOFORMAT_APPLY // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_AUTOFORMAT_REDLINE_APPLY // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_AUTO_CORRECT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem SortDialog FN_SORTING_DLG ( ) // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SfxVoidItem ChapterNumberingDialog FN_NUMBERING_OUTLINE_DLG ( ) // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + FN_CALCULATE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_FORMAT_RESET // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_GOTO_REFERENCE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + //Parameter kann noch nicht aufgezeichnet werden + FN_NUM_NUMBERING_ON // status(final|play) + [ + ExecMethod = ExecEnterNum ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUMBER_BULLETS // status(final|play) + [ + ExecMethod = ExecEnterNum ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_NUM_BULLET_ON // status(final|play) + [ + ExecMethod = ExecEnterNum ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_FRAME // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_COLUMN // status() + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_SECTION_APPENDNODE // status() + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + ] + FN_INSERT_FOOTNOTE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + /*-----------------24.01.97 07.33------------------- + Fussnoten - Befehle +--------------------------------------------------*/ + + FN_INSERT_ENDNOTE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_FORMAT_FOOTNOTE_DLG // status() + [ + ExecMethod = Execute ; + ] + FN_FOOTNOTE_TO_ANCHOR // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_NEXT_FOOTNOTE // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + FN_PREV_FOOTNOTE // status(final|play) + [ + ExecMethod = ExecMoveMisc ; + StateMethod = NoState ; + ] + + FN_INSERT_FOOTNOTE_DLG // status(final|play|rec) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + /*-----------------24.01.97 07.34------------------- + Ende Fussnoten + --------------------------------------------------*/ + FN_INSERT_FIELD // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + AutoUpdate ; + ] + FN_INSERT_REF_FIELD + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + AutoUpdate ; + ] + FN_INSERT_FIELD_CTRL + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + //-------------------------------------------------------------------------- + FN_INSERT_FLD_PGNUMBER + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ReadOnlyDoc = FALSE ; + ] + FN_INSERT_FLD_PGCOUNT + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ReadOnlyDoc = FALSE ; + ] + + FN_INSERT_FLD_TITLE + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ReadOnlyDoc = FALSE ; + ] + FN_INSERT_FLD_DATE + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + //-------------------------------------------------------------------------- + FN_INSERT_FLD_TIME + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + //-------------------------------------------------------------------------- + FN_INSERT_FLD_AUTHOR + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_GOTO_NEXT_INPUTFLD // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = NoState ; + ] + FN_GOTO_PREV_INPUTFLD // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = NoState ; + ] + FN_EXECUTE_MACROFIELD // status() + [ + Export = FALSE ; + ExecMethod = ExecField ; + StateMethod = StateField ; + ] + FN_EDIT_FIELD // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + ] + FN_GLOSSARY_DLG // status() + [ + ExecMethod = ExecGlossary ; + StateMethod = GetState ; + ] + FN_EXPAND_GLOSSARY // status(final|play) + [ + ExecMethod = ExecGlossary ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_POSTIT // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = StateField; + ] + FN_REDLINE_COMMENT // status(play) + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR|SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + FN_JAVAEDIT // status(final|play) + [ + ExecMethod = ExecField ; + StateMethod = StateField; + ] + // Slots mit Export = FALSE + //Slots ohne Export + FN_CHAR_LEFT_SEL + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_CHAR_RIGHT_SEL + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_LINE_UP_SEL + [ + ExecMethod = ExecBasicMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_LINE_DOWN_SEL + [ + ExecMethod = ExecBasicMove; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_NEXT_PAGE_SEL + [ + ExecMethod = ExecMovePage; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_NEXT_PAGE_SEL + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_PREV_PAGE_SEL + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_PREV_PAGE_SEL + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_PAGE_SEL + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_PAGE_SEL + [ + ExecMethod = ExecMovePage ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_NEXT_WORD_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_PARA_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_PARA_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_PREV_WORD_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_NEXT_SENT_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_LINE_SEL + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_LINE_SEL + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_START_OF_DOCUMENT_SEL + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_END_OF_DOCUMENT_SEL + [ + ExecMethod = ExecMove ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_PREV_SENT_SEL + [ + ExecMethod = ExecMoveLingu ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_QRY_INSERT + [ + ExecMethod = ExecDB ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_QRY_MERGE_FIELD + [ + ExecMethod = ExecDB ; + StateMethod = NoState ; + Export = FALSE ; + ] + FN_QRY_INSERT_FIELD + [ + ExecMethod = ExecDB ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_ADJUST_LEFT + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_ADJUST_RIGHT + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_ADJUST_CENTER + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_ADJUST_BLOCK + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_LINESPACE_10 + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_LINESPACE_15 + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_LINESPACE_20 + [ + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Export = FALSE ; + ] + SID_ATTR_PARA_ADJUST // status(final|play) + [ + // (0=links, 1=rechts, 2=block, 3=zentriert, )" + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_LINESPACE // status(final|play) + [ + // SvxLineSpace LineSpace MID_LINESPACE; + // UINT16 LineHeight MID_HEIGHT; // % or direct + // SvxInterLineSpace InterLineSpace MID_INTER_LINESPACE; + // INT16 InterSpace MID_INTER_SPACE; + ExecMethod = ExecParaAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_SPLIT // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_KEEP // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_WIDOWS // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_ORPHANS // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_PAGEBREAK // status(final|play) + [ + ExecMethod = ExecParaAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_MODEL // status(final|play) + [ + ExecMethod = ExecParaAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_PARA_DLG // status(final|play) + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_SELECT_PARA // status(final|play) + [ + ExecMethod = Execute ; + ] + SID_DEC_INDENT + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_INC_INDENT + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_DEC_INDENT_OFFSET + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INC_INDENT_OFFSET + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FORMAT_DROPCAPS // status(final|play) + [ + ExecMethod = ExecParaAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_HYPHENZONE // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_FONT // status(final|play) + [ + ExecMethod = ExecTxtCtrl ; + StateMethod = GetTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_FONTHEIGHT // status(final|play) + [ + ExecMethod = ExecTxtCtrl ; + StateMethod = GetTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_COLOR_BACKGROUND // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_COLOR_BACKGROUND_EXT // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_COLOR_EXT // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_COLOR2 + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_COLOR // status(final|play) + [ + ExecMethod = ExecTxtCtrl ; + StateMethod = GetTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_WEIGHT // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_POSTURE // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_UNDERLINE // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_FLASH // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_STRIKEOUT // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_UNDERLINE_DOUBLE // status(final|play) + [ + ExecMethod = ExecCharAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_CONTOUR // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_SHADOWED // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_AUTOKERN // // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_ESCAPEMENT // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_SET_SUPER_SCRIPT + [ + ExecMethod = ExecCharAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_SET_SUB_SCRIPT + [ + ExecMethod = ExecCharAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_CASEMAP // status(final|play) + [ + ExecMethod = ExecCharButtonAttr ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_LANGUAGE // status(final|play) + [ + ExecMethod = ExecCharAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_KERNING // status(final|play) + [ + ExecMethod = ExecCharAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_CHAR_DLG // status(final|play) + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_WORDLINEMODE // status(final|play) + [ + ExecMethod = ExecCharAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_GROW_FONT_SIZE // status(final|play) + [ + ExecMethod = ExecCharAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_SHRINK_FONT_SIZE // status(final|play) + [ + ExecMethod = ExecCharAttrArgs ; + StateMethod = GetAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} //ende interface text + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.76 2000/06/20 14:47:51 os + #70060# less occurences of columns in HTML + + Revision 1.75 2000/06/20 11:47:28 os + #76287# ExecuteMethod name corrected + + Revision 1.74 2000/05/26 07:06:16 os + old SW Basic API Slots removed + + Revision 1.73 2000/05/10 12:00:08 os + Basic API removed + + Revision 1.72 2000/02/22 14:49:18 os + #72894# footnote option dialog in HTML documents + + Revision 1.71 2000/02/10 11:57:08 os + #72894# fields pageno, pagecount, title and insert footnote enabled in SW/Web + + Revision 1.70 2000/01/06 07:34:05 os + #71436# mail merge dialog: execute via status method disposed + + Revision 1.69 2000/01/03 08:35:56 os + #71278# edit hyperlink slot + + Revision 1.68 1999/10/11 20:08:39 jp + Bug #68496#: append paragraph behind a section + + Revision 1.67 1999/07/26 08:00:40 OS + #58419# insert Sound and Vidoo + + + Rev 1.66 26 Jul 1999 10:00:40 OS + #58419# insert Sound and Vidoo + + Rev 1.65 23 Jun 1999 11:57:00 JP + Bug #43028# disableflaf for edit in mailbody + + Rev 1.64 27 May 1999 13:20:14 OS + Einf?gen/Bearbeiten von Spalten ueberarbeitet + + Rev 1.63 19 Apr 1999 13:43:44 OS + #64780# Notizen und Scripts in geschuetzten Bereichen + + Rev 1.62 23 Mar 1999 12:16:30 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.61 01 Mar 1999 16:23:02 MA + #62490# Altlast entfernt (Drucken und Briefumschlaege/Etiketten und Datenbank) + + Rev 1.60 29 Jan 1999 17:15:38 JP + Task #58423#: Reports mit Bildern aus der Datenbank + + Rev 1.59 22 Jan 1999 11:54:32 JP + Task #58677#: Crsr in Readonly Bereichen zulassen + + Rev 1.58 15 Jan 1999 15:47:14 JP + Bug #60203#: MoveLeftMargin - optional um Betrag verschieben + + Rev 1.57 14 Jan 1999 15:47:20 JP + Bug #60794#: Fehlererkennung beim Tabellenrechnen und anspringen von Formeln + + Rev 1.56 12 Nov 1998 17:28:50 MA + #58677# Disable Flag + + Rev 1.55 21 Oct 1998 16:12:48 OM + #58157# Querverweise einfuegen + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/_viewsh.sdi b/sw/sdi/_viewsh.sdi new file mode 100644 index 000000000000..2c05679734e6 --- /dev/null +++ b/sw/sdi/_viewsh.sdi @@ -0,0 +1,683 @@ +/*------------------------------------------------------------------------ + + $Workfile: _VIEWSH.SDI $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/_viewsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: allgemeine interfaces fuer View + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + + +interface BaseTextEditView : View +[ + Automation = FALSE; +] +{ + FN_REFRESH_VIEW // status(final|play) + [ + ExecMethod = Execute ; + ] + FN_PAGEUP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_PAGEUP_SEL // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_UNDO // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_CLEARHISTORY // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_CREATE_SW_DRAWVIEW + [ + ExecMethod = Execute; + ] + FN_PAGEDOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_PAGEDOWN_SEL // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_NAVIGATION_PI_GOTO_PAGE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] + FN_SCROLL_NAVIGATION + [ + ExecMethod = NoExec ; + StateMethod = NoState ; + ] + FN_SCROLL_NEXT_PREV + [ + ExecMethod = Execute; + ] + FN_SET_PAGE_STYLE // status(final|play) + [ + ExecMethod = ExecColl ; + ] + SID_OBJECT_SELECT + [ + ExecMethod = ExecDraw ; + StateMethod = GetDrawState ; + ] + SID_SHOW_HIDDEN // status() + [ + Export = FALSE ; + ExecMethod = ExecDraw ; + ] + SID_SHOW_FORMS // status() + [ + ExecMethod = ExecDraw ; + StateMethod = GetDrawState ; + ] + FN_REDLINE_ON // status() + [ + ExecMethod = Execute; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + FN_REDLINE_SHOW // status() + [ + ExecMethod = Execute; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + FN_REDLINE_ACCEPT // status(play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + SID_DOCUMENT_COMPARE // status(play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + SID_DOCUMENT_MERGE // status(play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + FN_ESCAPE // status(final|play|rec) + [ + ExecMethod = Execute ; + ] + FN_FAX // status(final|play) + [ + ExecMethod = ExecutePrint ; + ] + SID_PRINTDOC // status(final|play) + [ + ExecMethod = ExecutePrint ; + StateMethod = GetState ; + ] + SID_PRINTDOCDIRECT // status(final|play) + [ + ExecMethod = ExecutePrint ; + StateMethod = GetState ; + ] + SID_ATTR_LRSPACE + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + GroupId = GID_EDIT ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_ULSPACE + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_LONG_LRSPACE // status() + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_LONG_ULSPACE // status() + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_PARA_LRSPACE // status() + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_RULER_BORDERS // status() + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_RULER_PAGE_POS // status() + [ + ExecMethod = NoExec ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_RULER_LR_MIN_MAX // status() + [ + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_RULER_PROTECT // status() + [ + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_EDIT_LINK_DLG // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_LINE_NUMBERING_DLG // status() + [ + ExecMethod = Execute; + ] + FN_UPDATE_TOX // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + MenuConfig , AccelConfig , ToolBoxConfig ; + + ] + FN_UPDATE_CUR_TOX // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_EDIT_CURRENT_TOX // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_TWAIN_SELECT + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_TWAIN_TRANSFER + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + //--------------------------------------------------------------------- + //Ab hier Statusleiste + FN_STAT_PAGE // status() + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + FN_STAT_BOOKMARK // status() + [ + ExecMethod = ExecuteStatusLine ; + ] + FN_STAT_HYPERLINKS // status() + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + FN_STAT_TEMPLATE // status(final|play) + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + FN_STAT_SELMODE // status(final|play) + [ + //Aktueller Selektionsmode: 0 == Normal, 2 == Ergaenzen, 1 == Erweitern + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + FN_SET_ADD_MODE // status() + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = NoState ; + ] + FN_SET_EXT_MODE // status() + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = NoState ; + ] + SID_ATTR_ZOOM // status(final|play) + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + SID_ATTR_INSERT // status(final|play|rec) + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + SID_ATTR_SIZE // status() + [ + ExecMethod = ExecuteStatusLine ; + StateMethod = StateStatusLine ; + ] + SID_ATTR_POSITION // status() + [ + StateMethod = StateStatusLine ; + ] + SID_TABLE_CELL // status() + [ + StateMethod = StateStatusLine ; + ] + //---------------------------------------------- + //End mit Statusleiste + //---------------------------------------------- + SID_ATTR_BORDER_SHADOW // status() + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + /****************************************************/ + /* */ + /* Properties Seitenformat */ + /* */ + /****************************************************/ + SID_ATTR_PAGE // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_ATTR_PAGE_SIZE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_ATTR_PAGE_MAXSIZE // status() + [ + Export = FALSE ; + ExecMethod = Execute ; + ] + SID_ATTR_PAGE_PAPERBIN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_THESAURUS_DLG // status(final|play) + [ + ExecMethod = ExecLingu ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_SPELLING_DLG // status(final|play) + [ + ExecMethod = ExecLingu ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_ADD_UNKNOWN // status(final|play) + [ + ExecMethod = ExecLingu ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + /* + suchen und ersetzen +*/ + + + SID_SEARCH_ITEM // status() + [ + ExecMethod = ExecSearch ; + StateMethod = StateSearch ; + Export = FALSE; + ] + FN_REPEAT_SEARCH // status(final|play) + [ + ExecMethod = ExecSearch ; + ] + FID_SEARCH_NOW // status() + [ + ExecMethod = ExecSearch ; + ] + SID_SEARCH_OPTIONS // status() + [ + StateMethod = StateSearch ; + ] + FID_SEARCH_SEARCHSET // status() + [ + ExecMethod = ExecSearch ; + ] + FID_SEARCH_REPLACESET // status() + [ + ExecMethod = ExecSearch ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_TABSTOP // status() + [ + ExecMethod = ExecTabWin ; + StateMethod = StateTabWin ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + // ab hier Export = FALSE; + FID_SEARCH_ON // status() + [ + ExecMethod = ExecSearch ; + Export = FALSE; + ] + FID_SEARCH_OFF // status() + [ + ExecMethod = ExecSearch ; + Export = FALSE; + ] + FN_INSERT_CTRL + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Export = FALSE; + ] + + SID_ATTR_DEFTABSTOP + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Export = FALSE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_LANGUAGE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Export = FALSE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SfxVoidItem JumpToMark SID_JUMPTOMARK + + ( + SfxStringItem Bookmark SID_JUMPTOMARK + ) // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + FastCall , Cachable ; + ] + + FN_SYNC_LABELS // status(play) + [ + ExecMethod = Execute ; + ] + SID_ATTR_BRUSH // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +interface GlobalContents : Collection +[ uuid = "1FD80520-F517-11d0-AC9B-008029E867C6"; ] +{ + UINT16 Type FN_COLL_TYPE + ( + UINT16 Position FN_COLL_TYPE + ) + [ + ] + + // Bereichsname, Index-Titel oder Leerstring + String Title FN_COLL_TITLE + ( + UINT16 Position FN_COLL_TITLE + ) + [ + ] + // ohne FileName wird ein TextBereich an der Position eingefuegt + BOOL InsertDocument FN_COLL_ADD + ( + UINT16 Position FN_COLL_ADD, + UINT16 FileName FN_PARAM_1 + ) + [ + ] + +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.71 2000/05/29 14:33:20 os + OfaDBMgr Basic methods removed + + Revision 1.70 2000/05/26 07:06:16 os + old SW Basic API Slots removed + + Revision 1.69 2000/05/23 12:05:06 os + SvxTabStopItem is back + + Revision 1.68 2000/05/10 12:00:08 os + Basic API removed + + Revision 1.67 2000/01/21 13:33:27 tl + #70503# GetState method added for FN_THESAURUS_DLG + + Revision 1.66 1999/09/10 08:51:39 jp + LineNumberDialog: dont disable by protected cursor + + Revision 1.65 1999/06/23 09:57:02 JP + Bug #43028# disableflaf for edit in mailbody + + + Rev 1.64 23 Jun 1999 11:57:02 JP + Bug #43028# disableflaf for edit in mailbody + + Rev 1.63 09 Jun 1999 12:32:02 OS + #66578# new slot: FN_EDIT_CURENT_TOX + + Rev 1.62 23 Mar 1999 12:15:28 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.61 27 Jan 1999 13:40:36 JP + Bug #59688#: bei GlobalDokumenten gibts kein vergeleichen oder zusammenfuehren + + Rev 1.60 18 Nov 1998 15:07:26 OM + #59280# FormController Create Modes verlassen + + Rev 1.59 18 Nov 1998 12:58:26 OM + #58385# DrawView ueber Slot anziehen + + Rev 1.58 12 Nov 1998 17:29:26 MA + #58677# Disable Flag + + Rev 1.57 11 Jul 1998 12:28:56 MA + chg: State fuer scrollbody + + Rev 1.56 01 Jul 1998 12:55:56 JP + FN_DOCUMENT - Ids entfernt, werden vom SFX geliefert + + Rev 1.55 28 Jun 1998 12:49:32 MA + Mail_Scrollbody + + Rev 1.54 12 Jun 1998 16:09:52 OM + Gruppierung betreten/verlassen + + Rev 1.53 09 Jun 1998 15:37:06 OM + VC-Controls entfernt + + Rev 1.52 16 Mar 1998 11:02:44 OM + Labels: Statusmethode entfernt + + Rev 1.51 15 Mar 1998 14:10:48 OM + Synchron-Button + + Rev 1.50 13 Mar 1998 08:32:26 OS + SID_NEWWINDOW nicht mehr ueberladen + + Rev 1.49 04 Mar 1998 14:17:04 OM + Dokument Merge/Compare + + Rev 1.48 03 Mar 1998 10:41:24 OM + Redline-Browser + + Rev 1.47 26 Feb 1998 11:54:30 OM + Redline accept/reject + + Rev 1.46 18 Feb 1998 18:54:58 OM + Zeilennumerierung + + Rev 1.45 03 Feb 1998 15:26:28 OM + Redlining + + Rev 1.44 10 Dec 1997 11:27:30 OS + JumpToMark: Parameter heisst jetzt Bookmark wie im SFX + + Rev 1.43 18 Nov 1997 14:30:08 OM + Sba-Umstellung 372 + + Rev 1.42 10 Oct 1997 14:22:12 OS + Search/ReplaceAttributes von Object abgeleitet + + Rev 1.41 03 Sep 1997 09:33:54 MBA + OLEObjects in SVX + + Rev 1.40 02 Sep 1997 08:05:08 OS + ParaKeepTogether und PageStyle aus den SearchAttributes entfernt #43032# + FN_KILL_SELECTION entfernt #43143# + + Rev 1.39 28 Aug 1997 12:43:50 MBA + Neue Interface-Namen + + Rev 1.38 15 Aug 1997 11:26:04 OM + Draw- und Controlslots Bereichsumstellung + + Rev 1.37 28 Jul 1997 17:00:38 OM + Basic: ExpandTableName + + Rev 1.36 25 Jul 1997 11:32:46 AMA + Opt: GroupId und ConfigName aufgeraeumt + + Rev 1.35 23 Jul 1997 16:18:10 AMA + Opt: ConfigName etc. aufgeraeumt + + Rev 1.34 18 Jul 1997 09:37:30 OM + Fkts nicht exportieren + + Rev 1.33 14 Jul 1997 14:36:10 OS + SearchItem nicht mehr exportiert, stattdessen SearchSettings auch in der SourceView + + Rev 1.32 14 Jul 1997 11:45:52 OM + Basic: QuoteTableName + + Rev 1.31 07 Jul 1997 09:32:00 OS + Collection fuer GlobalDoc + + Rev 1.30 27 Jun 1997 16:22:42 OM + DB-Basic: DatabaseDelimiter + + Rev 1.29 27 Jun 1997 16:22:00 OS + SID_JUMPTOMARK von der View an die BaseShell + + Rev 1.28 26 Jun 1997 13:30:16 AMA + New: AddWord mit Window-Handle + Automatisches Aufnehmen unbekannter Woerter + + Rev 1.27 19 Jun 1997 11:41:48 OM + Basic: IsTableReadonly, QuoteIdentifier + + Rev 1.26 17 Jun 1997 15:42:04 MA + DrawTxtShell nicht von BaseShell ableiten + Opts + + Rev 1.25 22 Apr 1997 09:52:12 OS + GroupCount und GroupObject an der ControlsCollection + + Rev 1.24 19 Apr 1997 09:30:02 OS + Save in der SourceView reagiert >normal< + + Rev 1.23 15 Apr 1997 10:32:02 OM + Neu: GetDatabaseLimits + + Rev 1.22 14 Apr 1997 16:05:14 OS + neu: SearchAttributes und ReplaceAttributes + + Rev 1.21 25 Mar 1997 15:49:44 OS + SourceView: Clipboard u. Undo-Redo ueber Slots + + Rev 1.20 21 Mar 1997 11:24:16 OM + Neue DB-Basic Befehle + + Rev 1.19 11 Mar 1997 16:06:36 OS + MN_TOOLBOX_SWITCH entfernt + + Rev 1.18 11 Mar 1997 07:51:06 OS + Set/ResetLocks + + Rev 1.17 23 Feb 1997 22:17:18 OM + Feld-Controller an Textshell verschoben + + Rev 1.16 23 Feb 1997 15:20:06 OM + UpdateWholeRecord + + Rev 1.15 23 Feb 1997 14:34:24 OM + Neuer Datenbankslot + + Rev 1.14 22 Feb 1997 20:29:22 OM + FormatColumnValue + + Rev 1.13 21 Feb 1997 18:44:16 OM + GetSubType + + Rev 1.12 21 Feb 1997 17:47:06 OS + FN_SCROLL_NEXT_PREV + + Rev 1.11 20 Feb 1997 16:52:32 OM + Neuer Datenbankslot + + Rev 1.10 19 Feb 1997 16:50:38 OM + GetTableColumns + + Rev 1.9 19 Feb 1997 16:10:58 OS + Slot fuer Navigationscontroller + + Rev 1.8 17 Feb 1997 17:06:32 OM + Neue Datenbankslots + + Rev 1.7 17 Feb 1997 17:04:46 OM + Neue Datenbankslots + + Rev 1.6 16 Feb 1997 15:23:40 OM + DB-Manager an Ofa verschoben + + Rev 1.5 15 Feb 1997 15:25:00 OM + Field-Controller nochmal eingetragen + + Rev 1.4 13 Feb 1997 09:54:08 MA + unnoetige und falsche Texte entfernt + + Rev 1.3 06 Feb 1997 14:33:38 OM + Popup-Controller fuer Feldbefehle einfuegen + + Rev 1.2 28 Jan 1997 16:36:58 OS + DrawSelect nicht im WebWriter + + Rev 1.1 27 Jan 1997 16:37:46 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.0 23 Jan 1997 08:14:36 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/basesh.sdi b/sw/sdi/basesh.sdi new file mode 100644 index 000000000000..d11b1704b27b --- /dev/null +++ b/sw/sdi/basesh.sdi @@ -0,0 +1,111 @@ +/*----------------------------------------------------------------------- + + $Workfile: BASESH.SDI $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/basesh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwBaseShell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextSelection : BaseTextSelection +[ + uuid = "F23BA0A8-73A0-11d0-89CA-008029E4B0B1" +] +{ + // hier sollen die Slots eingefuegt werden, die vom StarWriter/WEB + // nicht unterstuetzt werden + + FN_TOOL_ANKER_PAGE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_CONTOUR_DLG + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_CONTOUR_EXEC + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + +} // end interface Base + + +shell SwBaseShell +{ + import TextSelection[Automation]; +} +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.119 2000/05/10 12:00:09 os + Basic API removed + + Revision 1.118 1999/01/19 13:58:20 OS + #60964# UniqueId fuer TextSelection - BaseShell kann eigenstaendig auftreten + + + Rev 1.117 19 Jan 1999 14:58:20 OS + #60964# UniqueId fuer TextSelection - BaseShell kann eigenstaendig auftreten + + Rev 1.116 12 Nov 1998 17:29:06 MA + #58677# Disable Flag + + Rev 1.115 28 Aug 1997 12:51:52 MBA + Neue Interface-Namen + + Rev 1.114 13 Feb 1997 12:45:08 MA + unnoetige Texte entfernt + + Rev 1.113 12 Feb 1997 12:09:02 MA + Kontur bearbeiten + + Rev 1.112 27 Jan 1997 16:37:42 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.111 23 Jan 1997 08:35:44 OS + Ableitung von _Base + + Rev 1.110 21 Jan 1997 08:22:16 OS + unpassende Slots aus interface Interior herausgeschoben + + Rev 1.109 18 Dec 1996 12:15:28 OM + Slot fuer Konturumfluss im Draw-Menue + + Rev 1.108 29 Nov 1996 15:55:32 OS + FN_TOOL_ANKER in der BaseShell + + Rev 1.107 28 Nov 1996 18:36:24 OS + AccelConfig nachgetragen + + Rev 1.106 14 Nov 1996 08:06:54 SWG + _TEMPLATE_ -> _STYLE_ + + Rev 1.105 07 Nov 1996 16:17:52 OS + Wrap- und Anker-Methoden an die BaseShell + + Rev 1.104 26 Sep 1996 19:14:00 OS + Statusmethode fuer FNINSERT_REGION + + Rev 1.103 21 Sep 1996 17:36:22 OS + Sot-Umstellung beendet + + Rev 1.102 19 Sep 1996 11:29:48 OM + Kommentar geaendert + + Rev 1.101 18 Sep 1996 19:06:10 OS + Para/Char/-Style wird wieder exportiert + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/beziersh.sdi b/sw/sdi/beziersh.sdi new file mode 100644 index 000000000000..af73ae66685a --- /dev/null +++ b/sw/sdi/beziersh.sdi @@ -0,0 +1,155 @@ +/*------------------------------------------------------------------------ + + $Workfile: beziersh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/beziersh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwBezierShell fuer Sw4 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextBezier : TextSelection +[ + uuid = "68EF7EA0-6876-11D0-A887-008029E86826" ] +{ + SID_DELETE + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_BACKSPACE + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_ESCAPE // api: + [ + ExecMethod = Execute; + ] + + SID_BEZIER_MOVE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_INSERT + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_DELETE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CUTLINE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CONVERT + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_EDGE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_SMOOTH + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_SYMMTR + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_CLOSE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_ELIMINATE_POINTS + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +shell SwBezierShell: SwBaseShell +{ + import TextBezier[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.9 1998/11/12 16:28:52 MA + #58677# Disable Flag + + + Rev 1.8 12 Nov 1998 17:28:52 MA + #58677# Disable Flag + + Rev 1.7 11 Jul 1998 12:47:56 OM + #51754# BezierShell ist von SwBaseShell abgeleitet + + Rev 1.6 08 Sep 1997 12:54:08 MBA + Bezier von DrawBase abgeleitet + + Rev 1.5 28 Aug 1997 12:52:06 MBA + Neue Interface-Namen + + Rev 1.4 13 Feb 1997 12:44:42 MA + unnoetige Texte entfernt + + Rev 1.3 23 Jan 1997 14:33:24 OS + Ableitung von _Bezier + + Rev 1.2 16 Jan 1997 16:50:34 OM + Escape an Bezier-Shell + + Rev 1.1 13 Jan 1997 16:01:42 OM + Bezier-Punkte loeschen + + Rev 1.0 08 Jan 1997 12:40:12 OM + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/docsh.sdi b/sw/sdi/docsh.sdi new file mode 100644 index 000000000000..dcc79c6f4e49 --- /dev/null +++ b/sw/sdi/docsh.sdi @@ -0,0 +1,142 @@ +/*------------------------------------------------------------------------ + + $Workfile: docsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/docsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File DocShell fuer Sw3 + + (c) Copyright 1995 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextDocument : BaseTextDocument +[ + uuid = "0D960120-111C-101D-9757-6E74207A7520" +] +{ + // Slots, die nicht in der WebDocShell gebraucht werden + + FN_OUTLINE_TO_IMPRESS + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + + FN_OUTLINE_TO_CLIPBOARD + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + FN_ABSTRACT_STARIMPRESS + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + FN_ABSTRACT_NEWDOC + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + FN_NEW_GLOBAL_DOC + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + FN_NEW_HTML_DOC + [ + ExecMethod = Execute; + StateMethod = GetState; + ] + + SID_BROWSER_MODE + [ + ExecMethod = Execute; + StateMethod = GetState; + ] +} + +shell SwDocShell : SfxObjectShell +{ + import TextDocument[Automation]; +} + +shell SwGlosDocShell : SwDocShell +{ + import TextDocument[Automation]; + + SID_SAVEDOC // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] +} +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.87 1999/03/23 11:16:28 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.86 23 Mar 1999 12:16:28 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.85 24 Apr 1998 15:03:12 OM + Seitenvorschau auch im Html-Mode + + Rev 1.84 17 Mar 1998 15:41:28 JP + neu: NewHTMLDoc - aequivalent zum NewGlobalDoc + + Rev 1.83 28 Aug 1997 12:50:12 MBA + Neue Interface-Namen + + Rev 1.82 25 Jul 1997 11:28:26 AMA + Opt: GroupId und ConfigName aufgeraeumt + + Rev 1.81 27 Jun 1997 13:38:06 OM + Globaldokument erzeugen + + Rev 1.80 16 Jun 1997 13:08:16 MA + #40731# falsches Exportverbot entfernt + + Rev 1.79 09 Jun 1997 14:27:08 MA + chg: Browse-Flag nur noch am Doc + + Rev 1.78 26 Mar 1997 11:32:04 OS + GlosDocShell muss Document importieren + + Rev 1.77 22 Feb 1997 15:14:04 OS + Abstract erzeugen + + Rev 1.76 16 Feb 1997 15:19:52 MA + new: OutlineToClipboard und OutlineToImpress + + Rev 1.75 13 Feb 1997 12:45:04 MA + unnoetige Texte entfernt + + Rev 1.74 23 Jan 1997 08:36:26 OS + Ableitung von __Document + + Rev 1.73 10 Dec 1996 16:51:42 OS + neu: SID_GET_COLORTABLE + + Rev 1.72 14 Nov 1996 19:11:10 OS + SID_TEMPLATE_LOAD wieder aktiviert + + Rev 1.71 14 Nov 1996 08:06:48 SWG + _TEMPLATE_ -> _STYLE_ + + Rev 1.70 08 Oct 1996 16:45:04 OS + neu: Sourceview + + Rev 1.69 01 Oct 1996 13:03:14 AMA + Fix: SID_TEMPLATE_DELETE wieder aktiviert. + + Rev 1.68 21 Sep 1996 17:35:38 OS + Sot-Umstellung beendet + + Rev 1.67 18 Sep 1996 17:36:56 OS + LoadStyles wieder vollstaendig + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/drawsh.sdi b/sw/sdi/drawsh.sdi new file mode 100644 index 000000000000..b9949987eab6 --- /dev/null +++ b/sw/sdi/drawsh.sdi @@ -0,0 +1,317 @@ +interface TextDraw : TextDrawBase +[ + uuid = "626DE480-111A-101D-9757-6E74207A7520" +] +{ + SID_ATTR_LINEEND_STYLE + [ + SlotType = SfxBoolItem ; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = DisableState ; + Export = FALSE; + ] + + SID_ATTR_LINE_STYLE + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_LINE_DASH + [ + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_LINE_WIDTH + [ + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + Export = FALSE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_LINE_COLOR + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_FILL_STYLE + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_FILL_COLOR + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_FILL_GRADIENT + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_FILL_HATCH + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_FILL_BITMAP + [ + Export = FALSE; + ExecMethod = ExecDrawAttrArgs ; + StateMethod = GetDrawAttrState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTRIBUTES_LINE + [ + ExecMethod = ExecDrawDlg ; + StateMethod = DisableState ; + ] + + SID_ATTRIBUTES_AREA + [ + ExecMethod = ExecDrawDlg ; + StateMethod = DisableState ; + ] + + FN_DRAWTEXT_ATTR_DLG + [ + ExecMethod = ExecDrawDlg ; + StateMethod = DisableState ; + ] + + FN_TOOL_HMIRROR + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_VMIRROR + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_OBJECT_ROTATE + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_BEZIER_EDIT + [ + Export = FALSE; + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FONTWORK + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_OBJECT_HELL + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_OBJECT_HEAVEN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_TOOL_HIERARCHIE + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +shell SwDrawShell : SwDrawBaseShell +{ + import TextDraw [Automation]; + + // no export + + SID_FORMTEXT_STYLE + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_ADJUST + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_DISTANCE + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_START + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_MIRROR + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_HIDEFORM + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_OUTLINE + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWXVAL + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHADOW + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWCOLOR + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWYVAL + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_STDFORM + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.77 1999/05/07 12:57:58 JP + Bug #66007#: LineEndStyle wieder mit einer Execute-Methode + + + Rev 1.76 07 May 1999 14:57:58 JP + Bug #66007#: LineEndStyle wieder mit einer Execute-Methode + + Rev 1.75 12 Nov 1998 17:28:38 MA + #58677# Disable Flag + + Rev 1.74 10 Jun 1998 11:20:44 OM + Hell/Heaven nicht in FormShell + + Rev 1.73 28 Aug 1997 12:39:08 MBA + Neue Interface-Namen + + Rev 1.72 18 Jul 1997 09:37:22 OM + Fkts nicht exportieren + + Rev 1.71 16 Jul 1997 16:47:26 OM + Einige Basic-Fkts nicht exportieren + + Rev 1.70 13 Feb 1997 12:44:48 MA + unnoetige Texte entfernt + + Rev 1.69 23 Jan 1997 10:49:22 OM + Neue Shells: Control- und DrawBaseShell + + Rev 1.68 22 Jan 1997 11:18:24 OM + Neue Shells: DrawBaseShell und DrawControlShell + + Rev 1.67 13 Jan 1997 16:01:42 OM + Bezier-Punkte loeschen + + Rev 1.66 08 Jan 1997 12:40:30 OM + Slots in Bezier-Shell verschoben + + Rev 1.65 13 Dec 1996 12:24:30 OM + Slots fuer Bezier-Fkts + + Rev 1.64 11 Dec 1996 12:03:46 OM + Bezier-Controller + + Rev 1.63 29 Nov 1996 15:55:34 OS + FN_TOOL_ANKER in der BaseShell + + Rev 1.62 18 Nov 1996 13:39:20 MA + chg: State fuer align + + Rev 1.61 14 Nov 1996 08:06:50 SWG + _TEMPLATE_ -> _STYLE_ + + Rev 1.60 07 Nov 1996 16:17:22 OS + Anker-Methoden an die BaseShell + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/drwbassh.sdi b/sw/sdi/drwbassh.sdi new file mode 100644 index 000000000000..433db34f4b06 --- /dev/null +++ b/sw/sdi/drwbassh.sdi @@ -0,0 +1,60 @@ +/*----------------------------------------------------------------------- + + $Workfile: drwbassh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/drwbassh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwDrawBaseShell + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextDrawBase : BaseTextDrawBase +[ + Automation = FALSE; +] +{ + import TextSelection; +} + +shell SwDrawBaseShell: SwBaseShell +{ + import TextDrawBase[Automation]; + + SID_OBJECT_ALIGN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.6 1998/11/12 16:28:34 MA + #58677# Disable Flag + + + Rev 1.5 12 Nov 1998 17:28:34 MA + #58677# Disable Flag + + Rev 1.4 28 Aug 1997 12:56:24 MBA + Neue Interface-Namen + + Rev 1.3 13 Feb 1997 12:44:46 MA + unnoetige Texte entfernt + + Rev 1.2 23 Jan 1997 14:39:02 OS + Ableitung von _DrawBase + + Rev 1.1 23 Jan 1997 10:49:24 OM + Neue Shells: Control- und DrawBaseShell + + Rev 1.0 22 Jan 1997 11:18:06 OM + Initial revision. + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/drwtxtsh.sdi b/sw/sdi/drwtxtsh.sdi new file mode 100644 index 000000000000..523b30be88e2 --- /dev/null +++ b/sw/sdi/drwtxtsh.sdi @@ -0,0 +1,452 @@ +/*------------------------------------------------------------------------ + + $Workfile: drwtxtsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/drwtxtsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File DrawTextshell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextDrawText : Selection +[ + uuid = "CA0C4280-293D-11D1-89CB-008029E4B0B1" +] +{ + SID_SELECTALL // api: + [ + ExecMethod = ExecDraw ; + StateMethod = NoState ; + ] + + SfxVoidItem Cut SID_CUT ( ) // api: + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + Volatile ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_COPY // api: + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + Volatile ; + ] + + SID_PASTE // api: + [ + ExecMethod = ExecClpbrd ; + StateMethod = StateClpbrd ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_PASTESPECIAL // api: + [ + StateMethod = StateClpbrd ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_ESCAPE // api: + [ + ExecMethod = ExecDraw ; + ] + + SID_UNDO // api: + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + + ToolBoxConfig , MenuConfig , AccelConfig , PlugComm ; + ] + + SID_REDO // api: + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + ] + + SID_REPEAT // api: + [ + ExecMethod = ExecUndo ; + StateMethod = StateUndo ; + ] + + FN_FORMAT_RESET // api: + [ + ExecMethod = ExecDraw ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_INSERT_SYMBOL // api: + [ + ExecMethod = ExecDraw ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_ATTR_CHAR_WEIGHT // api: + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_POSTURE // api: + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_UNDERLINE // api: + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_CONTOUR + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_SHADOWED + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_STRIKEOUT + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_ADJUST_LEFT // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_ADJUST_CENTER // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_ADJUST_RIGHT // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_ADJUST_BLOCK // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_LINESPACE_10 // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_LINESPACE_15 // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_PARA_LINESPACE_20 // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_CHAR_DLG // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_PARA_DLG // api: + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_SET_SUPER_SCRIPT + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_SET_SUB_SCRIPT + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FONTWORK // api: + [ + ExecMethod = ExecFontWork ; + StateMethod = StateFontWork ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_STYLE // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_ADJUST // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_DISTANCE // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_START // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_MIRROR // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + + SID_FORMTEXT_HIDEFORM // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_OUTLINE // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHADOW // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWCOLOR // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWXVAL // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_SHDWYVAL // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_FORMTEXT_STDFORM // api: + [ + ExecMethod = ExecFormText ; + StateMethod = GetFormTextState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_THESAURUS_DLG // api: + [ + ExecMethod = ExecDrawLingu ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_SPELLING_DLG // api: + [ + ExecMethod = ExecDrawLingu ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_DRAWTEXT_ATTR_DLG + [ + ExecMethod = ExecDraw ; + StateMethod = NoState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_STYLE_CATALOG // ole(no) api(play/rec) + [ + StateMethod = StateDisableItems ; + ] + + SID_AUTOSPELL_CHECK + [ + ExecMethod = Execute; + StateMethod = GetDrawTxtCtrlState + ] + + SID_AUTOSPELL_MARKOFF + [ + ExecMethod = Execute; + StateMethod = GetDrawTxtCtrlState + ] + + SID_SEARCH_DLG + [ + StateMethod = StateDisableItems + ] + + SID_HYPERLINK_SETLINK // status() + [ + ExecMethod = Execute ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_HYPERLINK_GETLINK // status() + [ + StateMethod = StateInsert ; + ] +} + +interface TextDrawFont : Object +[ uuid = "074C35E0-11EF-101D-9757-6E74207A7520"; ] +{ + SID_ATTR_CHAR_FONT // status() + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_FONTHEIGHT // status() + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_ATTR_CHAR_COLOR // api: + [ + ExecMethod = Execute ; + StateMethod = GetDrawTxtCtrlState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + +} + + + +shell SwDrawTextShell +{ + import TextDrawText[Automation]; + import TextDrawFont ".DrawFont"; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.72 2000/05/26 07:06:16 os + old SW Basic API Slots removed + + Revision 1.71 2000/05/10 12:00:09 os + Basic API removed + + Revision 1.70 2000/01/21 13:33:54 tl + #70503# GetState method added for FN_THESAURUS_DLG + + Revision 1.69 1999/03/23 11:16:26 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.68 23 Mar 1999 12:16:26 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.67 12 Nov 1998 17:28:36 MA + #58677# Disable Flag + + Rev 1.66 17 Sep 1997 13:09:54 OM + Editierbare Links in DrawText-Objekten + + Rev 1.65 09 Sep 1997 18:04:54 MBA + DrawTextShell war nicht exportiert + + Rev 1.64 28 Aug 1997 12:53:42 MBA + Neue Interface-Namen + + Rev 1.63 19 Jun 1997 13:54:18 OS + doppelten DrawText vermieden + + Rev 1.62 17 Jun 1997 15:42:06 MA + DrawTxtShell nicht von BaseShell ableiten + Opts + + Rev 1.61 13 Feb 1997 12:44:48 MA + unnoetige Texte entfernt + + Rev 1.60 23 Jan 1997 14:32:28 OS + Ableitung von _DrawText + + Rev 1.59 13 Dec 1996 16:37:54 OS + Autospell fuer aktives DrawTextObject + + Rev 1.58 22 Nov 1996 14:51:40 OS + FN_SET_JUSTIFY_PARA -> SID_ATTR_PARA_ADJUST_BLOCK + + Rev 1.57 14 Nov 1996 08:06:52 SWG + _TEMPLATE_ -> _STYLE_ + + Rev 1.56 21 Sep 1996 17:36:30 OS + Sot-Umstellung beendet + + Rev 1.55 16 Sep 1996 10:25:12 MBA + FontDialog RecordPerItem + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/formsh.sdi b/sw/sdi/formsh.sdi new file mode 100644 index 000000000000..daab58bd9c06 --- /dev/null +++ b/sw/sdi/formsh.sdi @@ -0,0 +1,25 @@ +interface TextDrawForm: BaseTextDrawForm +[ + uuid = "1D396B40-B8CC-11d1-AB80-006097B418C2" +] +{ + import TextDrawBase; +} + +shell SwDrawFormShell : SwDrawBaseShell +{ + import TextDrawForm[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.1 1998/03/11 16:14:00 OM + DB-FormShell + + + Rev 1.0 11 Mar 1998 17:14:00 OM + DB-FormShell + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/frmsh.sdi b/sw/sdi/frmsh.sdi new file mode 100644 index 000000000000..6ad8aec01c05 --- /dev/null +++ b/sw/sdi/frmsh.sdi @@ -0,0 +1,83 @@ +/*------------------------------------------------------------------------ + + $Workfile: frmsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/frmsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File FrameShell fuer Sw3 + + (c) Copyright 1995 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextFrame : BaseTextFrame +[ + uuid = "564CBAA0-111A-101D-9757-6E74207A7520" +] +{ + import TextSelection; +} + + //========================================================================= + +shell SwFrameShell : SwBaseShell +{ + import TextFrame[Automation]; + + FN_FRAME_CHAIN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_FRAME_UNCHAIN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.86 1998/11/12 16:29:08 MA + #58677# Disable Flag + + + Rev 1.85 12 Nov 1998 17:29:08 MA + #58677# Disable Flag + + Rev 1.84 05 Nov 1997 11:49:44 MA + chain + + Rev 1.83 28 Aug 1997 12:50:20 MBA + Neue Interface-Namen + + Rev 1.82 13 Feb 1997 12:45:02 MA + unnoetige Texte entfernt + + Rev 1.81 23 Jan 1997 14:30:30 OS + Ableitung von _Frame + + Rev 1.80 07 Nov 1996 16:17:06 OS + Wrap-Methoden an die Baseshell + + Rev 1.79 21 Sep 1996 17:35:42 OS + Sot-Umstellung beendet + + Rev 1.78 18 Sep 1996 10:35:46 OM + Umlauf: Nur Anker + + Rev 1.77 10 Sep 1996 16:39:16 OS + Slotvereinheitlichung zu, 1. + + Rev 1.76 20 Aug 1996 17:27:28 HJS + eu... + + Rev 1.75 17 Jul 1996 07:31:30 OS + ReadOnlyDoc - Flag + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/grfsh.sdi b/sw/sdi/grfsh.sdi new file mode 100644 index 000000000000..3662d6d8fdc0 --- /dev/null +++ b/sw/sdi/grfsh.sdi @@ -0,0 +1,64 @@ +/*------------------------------------------------------------------------ + + $Workfile: GRFSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/grfsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File GrafShell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + + +interface TextGraphic : BaseTextGraphic +[ + uuid = "1885FE00-111C-101D-9757-6E74207A7520" +] +{ +} + + //========================================================================= + +shell SwGrfShell : SwBaseShell + +{ + import TextGraphic[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.45 2000/08/08 13:42:51 os + #77423# separate graphic shell + + Revision 1.44 1997/08/28 10:55:24 MBA + Neue Interface-Namen + + + Rev 1.43 28 Aug 1997 12:55:24 MBA + Neue Interface-Namen + + Rev 1.42 13 Feb 1997 12:45:04 MA + unnoetige Texte entfernt + + Rev 1.41 31 Jan 1997 13:25:22 OS + von _Graphic abgeleitet + + Rev 1.40 01 Oct 1996 16:52:26 OM + Hyperlinks editieren + + Rev 1.39 21 Sep 1996 17:35:40 OS + Sot-Umstellung beendet + + Rev 1.38 20 Aug 1996 17:27:00 HJS + eu... + + Rev 1.37 17 Jul 1996 07:31:30 OS + ReadOnlyDoc - Flag + + Rev 1.36 05 Jul 1996 13:38:50 OS + neue Properities: GrfLinkName, GrfLinkFilterName + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/listsh.sdi b/sw/sdi/listsh.sdi new file mode 100644 index 000000000000..a1cea8fccfb0 --- /dev/null +++ b/sw/sdi/listsh.sdi @@ -0,0 +1,60 @@ +/*------------------------------------------------------------------------ + + $Workfile: listSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/listsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwBaseShell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextList : BaseTextList +[ + uuid = "509E9100-111A-101D-9757-6E74207A7520" +] +{ + import TextSelection; +} + + //========================================================================= + +shell SwListShell : SwBaseShell +{ + import TextList[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.31 1997/08/28 10:51:34 MBA + Neue Interface-Namen + + + Rev 1.30 28 Aug 1997 12:51:34 MBA + Neue Interface-Namen + + Rev 1.29 13 Feb 1997 12:44:52 MA + unnoetige Texte entfernt + + Rev 1.28 23 Jan 1997 14:31:54 OS + Ableitung von _List + + Rev 1.27 21 Sep 1996 17:36:34 OS + Sot-Umstellung beendet + + Rev 1.26 20 Aug 1996 17:27:42 HJS + eu... + + Rev 1.25 17 Jul 1996 07:31:26 OS + ReadOnlyDoc - Flag + + Rev 1.24 13 May 1996 11:40:30 OS + Ableitung List : Base + + Rev 1.23 28 Mar 1996 14:20:32 OS + neu: NumberOrNoNumber + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/makefile.mk b/sw/sdi/makefile.mk new file mode 100644 index 000000000000..4506f71cb6b3 --- /dev/null +++ b/sw/sdi/makefile.mk @@ -0,0 +1,178 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.1.1.1 $ +# +# last change: $Author: hr $ $Date: 2000-09-18 17:14:30 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + +# wx mktyplib nur unter Windows aufrufbar +# VMB.386 und WXSRVR.EXE muessen geladen sein! (n:\mscwini\bin) + +PRJ=.. + +PRJNAME=sw +TARGET=swslots + +# --- Settings ----------------------------------------------------- + +SVSDIINC=$(PRJ)$/source$/ui$/inc + +.INCLUDE : $(PRJ)$/inc$/swpre.mk +.INCLUDE : settings.mk +.INCLUDE : $(PRJ)$/inc$/sw.mk + + +SDINAME=$(TARGET) +SDIEXPORT=swnew +SIDHRCNAME=swslots.hrc + +# --- Files -------------------------------------------------------- + +SVSDIDEPEND= \ + $(SOLARINCXDIR)$/ofa.ilb \ + switems.sdi\ + swnew.sdi\ + swriter.sdi\ + _docsh.sdi\ + docsh.sdi\ + wdocsh.sdi\ + wrtapp.sdi\ + _basesh.sdi\ + basesh.sdi\ + _textsh.sdi\ + textsh.sdi\ + wtextsh.sdi\ + _drwbase.sdi\ + drwbassh.sdi\ + wdrwbase.sdi\ + formsh.sdi\ + _formsh.sdi\ + wformsh.sdi\ + drawsh.sdi\ + drwtxtsh.sdi\ + _listsh.sdi\ + listsh.sdi\ + wlistsh.sdi\ + _frmsh.sdi\ + frmsh.sdi\ + wfrmsh.sdi\ + _tabsh.sdi\ + tabsh.sdi\ + wtabsh.sdi\ + _grfsh.sdi\ + grfsh.sdi\ + wgrfsh.sdi\ + _olesh.sdi\ + olesh.sdi\ + wolesh.sdi\ + beziersh.sdi\ + _viewsh.sdi\ + viewsh.sdi\ + wviewsh.sdi\ + swslots.hrc \ + $(INC)$/globals.hrc \ + $(INC)$/cmdid.h + +SRCFILES= \ + swslots.src + +# --- Targets ------------------------------------------------------- + +.IF "$(depend)" == "" + +TLBLIST+=\ + $(BIN)$/$(SDINAME).tlb + +ALL: \ + ALLTAR \ + $(TLBLIST) + +.ENDIF + +.INCLUDE : target.mk + +.IF "$(GUIBASE)$(VCL)"=="WIN" +$(BIN)$/$(SDINAME).tlb: \ + $(MISCX)$/$(SDINAME).odl + rscpp -I.;$(SVSDIINC);$(INC) -DSOLAR_VERSION=$(solar_version) $(MISC)$/$(SDINAME).odl $(MISC)$/$(SDINAME).odx +.IF "$(GUI)"=="WIN" + wx /w /a mktyplib /nocpp /o $(MISC)$/$(SDINAME).err /tlb $(BIN)$/$(SDINAME).tlb $(MISC)$/$(SDINAME).odx +.ELSE + mktyplib /win32 /nocpp /o $(MISC)$/$(SDINAME).err /tlb $(BIN)$/$(SDINAME).tlb $(MISC)$/$(SDINAME).odx +.ENDIF + +type $(MISC)$/$(SDINAME).err +.ELSE +$(BIN)$/$(SDINAME).tlb: + @echo nix +.ENDIF + +.IF "$(GUIBASE)$(VCL)"=="WIN" +$(BIN)$/$(SDI2NAME).tlb: \ + $(MISCX)$/$(SDI2NAME).odl + rscpp -I.;$(SVSDIINC);$(INC) -DSOLAR_VERSION=$(solar_version) $(MISC)$/$(SDI2NAME).odl $(MISC)$/$(SDI2NAME).odx +.IF "$(GUI)"=="WIN" + wx mktyplib /nocpp /o $(MISC)$/$(SDI2NAME).err /tlb $(BIN)$/$(SDI2NAME).tlb $(MISC)$/$(SDI2NAME).odx +.ELSE + mktyplib /win32 /nocpp /o $(MISC)$/$(SDI2NAME).err /tlb $(BIN)$/$(SDI2NAME).tlb $(MISC)$/$(SDI2NAME).odx +.ENDIF + +type $(MISC)$/$(SDI2NAME).err +.ELSE +$(BIN)$/$(SDI2NAME).tlb: + @echo nix +.ENDIF + diff --git a/sw/sdi/olesh.sdi b/sw/sdi/olesh.sdi new file mode 100644 index 000000000000..a1d50876ba61 --- /dev/null +++ b/sw/sdi/olesh.sdi @@ -0,0 +1,76 @@ +/*------------------------------------------------------------------------ + + $Workfile: OLESH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/olesh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwBaseShell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextOLEObject : BaseTextOLEObject +[ + uuid = "B156B300-39FC-101D-9757-C667E8298000" +] +{ + import TextFrame; +} + +shell SwOleShell: SwFrameShell +{ + import TextOLEObject[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.16 1997/09/10 06:56:54 OS + OLE importiert Frame + + + Rev 1.15 10 Sep 1997 08:56:54 OS + OLE importiert Frame + + Rev 1.14 28 Aug 1997 12:53:24 MBA + Neue Interface-Namen + + Rev 1.13 13 Feb 1997 12:44:42 MA + unnoetige Texte entfernt + + Rev 1.12 31 Jan 1997 13:25:46 OS + von _OleObject abgeleitet + + Rev 1.11 21 Sep 1996 17:35:42 OS + Sot-Umstellung beendet + + Rev 1.10 17 Jul 1996 07:31:32 OS + ReadOnlyDoc - Flag + + Rev 1.9 08 Jul 1996 16:59:06 HJS + uebersetzung + + Rev 1.8 22 Mar 1996 16:01:16 OS + status fuer neue Funktionen nachgetragen + + Rev 1.7 08 Feb 1996 16:26:20 OM + OLE-Objekte wieder vertikal zentrieren + + Rev 1.6 06 Feb 1996 15:16:06 OS + neu: Activate/Deactivate fuer Objekte + + Rev 1.5 26 Jan 1996 10:56:30 OS + neu: Interface Object, um Ole-Object herauszureichen + + Rev 1.4 28 Nov 1995 15:39:06 OS + dummy slot + + Rev 1.3 11 Oct 1995 12:26:58 MA + Bestimme -> Setze + + Rev 1.2 28 Aug 1995 15:43:36 MA + Renovierung: IDL, Shells, Textshell-Doktrin aufgegeben + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/swinterf.c b/sw/sdi/swinterf.c new file mode 100644 index 000000000000..36010f080099 --- /dev/null +++ b/sw/sdi/swinterf.c @@ -0,0 +1,283 @@ +/************************************************************************* + * + * $RCSfile: swinterf.c,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:30 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#include + +#include +#include + +static char pEmpty[] = ""; + +extern void *pSvClient; + +/* WRITER */ +short SwInsertDocument (void *pHandle, + const char *pFileName, + const char *pFilter) +{ + return 0; +} + +/**************************************************************************/ + +/* WRITER */ +short SwDeleteTableColumns (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_TABLE_DELETE_COL | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwDeleteTableRows (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_TABLE_DELETE_ROW | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwGotoStartOfTable (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_START_TABLE | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwGotoEndOfTable (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_END_TABLE | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwGotoNextTable (void *pHandle) +{ + return 0; +} + +/* WRITER */ +short SwGotoPrevTable (void *pHandle) +{ + return 0; +} + +/* WRITER */ +short SwSelectTableRow (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_TABLE_SELECT_ROW | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwSelectTableColumn (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_TABLE_SELECT_COL | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwTableSelect (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_TABLE_SELECT_ALL | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwInsertTable (void *pHandle, const char *pName, + unsigned short nRow, unsigned short nColumn) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_INSERT_TABLE | 0x10000, + pHandle,0,"hh",nRow,nColumn); + return 0; + +} + +/**************************************************************************/ + +/* WRITER */ +short SwCharLeft(void *pHandle, unsigned short nCount, unsigned short bSelect) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_CHAR_LEFT | 0x10000, + pHandle,0,"hb",nCount,bSelect); + return 0; +} + +/* WRITER */ +short SwCharRight(void *pHandle, unsigned short nCount, unsigned short bSelect) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_CHAR_RIGHT | 0x10000, + pHandle,0,"hb",nCount,bSelect); + return 0; +} + +/* WRITER */ +short SwLineUp(void *pHandle, unsigned short nCount, unsigned short bSelect) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_LINE_UP | 0x10000, + pHandle,0,"hb",nCount,bSelect); + return 0; +} + +/* WRITER */ +short SwLineDown(void *pHandle, unsigned short nCount, unsigned short bSelect) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_LINE_DOWN | 0x10000, + pHandle,0,"hb",nCount,bSelect); + return 0; +} + +/**************************************************************************/ + +/* WRITER */ +const char *SwGetSelectedText(void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallStringFunction(SvIPCGetClient(),FN_GET_SELECTED_TEXT, + pHandle,0,pEmpty); + return NULL; +} + +/* WRITER */ +short SwInsertString(void *pHandle,const char *pString) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_INSERT_STRING | 0x10000, + pHandle,0,"s",pString); + return 0; +} + +/* WRITER */ +extern short SwInsertLineBreak(void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_INSERT_LINEBREAK | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/**************************************************************************/ + +/* WRITER */ +short SwDelLeft (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_BACKSPACE | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwDelRight (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_DELETE | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwDelLine (void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_DELETE_WHOLE_LINE | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/**************************************************************************/ + +/* WRITER */ +short SwCharDlg(void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_FORMAT_CHAR_DLG | 0x10000, + pHandle,0,pEmpty); + return 0; +} + +/* WRITER */ +short SwParagrDlg(void *pHandle) +{ + if (SvIPCIsConnected()) + return pIPCCallShortFunction(SvIPCGetClient(),FN_FORMAT_PARA_DLG | 0x10000, + pHandle,0,pEmpty); + return 0; +} + + diff --git a/sw/sdi/switems.sdi b/sw/sdi/switems.sdi new file mode 100644 index 000000000000..976e0d9ee95a --- /dev/null +++ b/sw/sdi/switems.sdi @@ -0,0 +1,205 @@ +enum SwHoriOrient +{ + HORI_NONE, + HORI_RIGHT, + HORI_CENTER, + HORI_LEFT, + HORI_INSIDE, + HORI_OUTSIDE, + HORI_FULL +}; +enum SwRelationOrient +{ + FRAME, + PRTAREA +}; + +enum SwVertOrient +{ + VERT_NONE, + VERT_TOP, + VERT_CENTER, + VERT_BOTTOM, + VERT_LINE_TOP, + VERT_LINE_CENTER, + VERT_LINE_BOTTOM +}; + +enum SwSurround +{ + SURROUND_BEGIN, + SURROUND_THROUGHT, + SURROUND_PARALLEL, + SURROUND_DYNAMIC, + SURROUND_LEFT, + SURROUND_RIGHT, + SURROUND_END +}; + +struct FmtHoriOrient +{ + INT32 XPos MID_1; + SwHoriOrient HorzOrientation MID_2; + SwRelationOrient HorzRelation MID_3; +}; + +item FmtHoriOrient SwFmtHoriOrient; + +struct FmtVertOrient +{ + INT32 YPos MID_1; + SwVertOrient VertOrientation MID_2; + SwRelationOrient VertRelation MID_3; +}; +item FmtVertOrient SwFmtVertOrient; + +struct FmtFrmSize +{ + UINT32 Width MID_WIDTH; + UINT32 Height MID_HEIGHT; + BYTE WidthPercent MID_1; + BYTE HeightPercent MID_2; +}; +item FmtFrmSize SwFmtFrmSize; + +struct Drop +{ + BYTE Lines MID_LINES; + BYTE Count MID_CHARS; + UINT16 Distance MID_DIST; +}; +item Drop SwFmtDrop; + +struct SwDocDisplay +{ + BOOL ParagraphEnd MID_1; + BOOL Tab MID_2; + BOOL Space MID_3; + BOOL NonbreakingSpace MID_4; + BOOL SoftHyphen MID_5; + BOOL HiddenText MID_6; + BOOL ManualBreak MID_7; + BOOL IndexEntry MID_8; + BOOL FootnoteBackground MID_9; + BOOL Field MID_A; + BOOL Table MID_B; + BOOL Graphic MID_C; + BOOL Drawing MID_D; + BOOL FieldName MID_E; + BOOL Notes MID_F; + BOOL ShowHiddenPara MID_10; +} + + +item SwDocDisplay SwDocDisplayItem; + +struct SwElem +{ + BOOL HorzScrollbar MID_1; + BOOL VertScrollbar MID_2; + BOOL HorzRuler MID_3; + BOOL VertRuler MID_4; + BOOL TableBounds MID_5; + BOOL Crosshair MID_6; + BOOL Bounds MID_7; + BOOL StatusLine MID_8; + BOOL SolidHandles MID_9; + BOOL SmoothScroll MID_A; +} + +item SwElem SwElemItem; + +struct SwPrintOpt +{ + BOOL PrintGraphic MID_1; + BOOL PrintTable MID_2; + BOOL PrintDrawing MID_3; + BOOL PrintLeftPage MID_4; + BOOL PrintRightPage MID_5; + BOOL PrintControl MID_6; + BOOL PrintReverse MID_7; + BOOL PaperFromSetup MID_8; + String FaxName MID_9; + UINT16 PrintAnnotations MID_A; + BOOL PrintProspect MID_B; + BOOL PrintBackground MID_C; + BOOL PrintBlackFont MID_D; + +} +item SwPrintOpt SwAddPrinterItem; + +struct SwPageFtnInfo +{ + + INT32 FtnHeight MID_1; + INT32 FtnPenWidth MID_2; + INT32 FtnTopDistance MID_3; + INT32 FtnBottomDistance MID_4; + INT16 FtnWidth MID_5; // in Prozent + INT16 FtnAdjust MID_6; + INT16 FtnPenStyle MID_7; +}; +item SwPageFtnInfo SwPageFtnInfoItem; + +item String SvxBoxInfoItem; //! Dummy + + +//umdefiniert wg. doppelter Benutzung + +struct SwPageLRSpace +{ + UINT16 PageLeftMargin MID_LEFT_MARGIN; // % or direct + UINT16 PageRightMargin MID_RIGHT_MARGIN; // % or direct +}; +item SwPageLRSpace SwPageLRSpaceItem; + +struct SwPageULSpace +{ + UINT16 PageTopMargin MID_UPPER; // % or direct + UINT16 PageBottomMargin MID_LOWER; // % or direct +}; +item SwPageULSpace SwPageULSpaceItem + + +struct SwGraphicSize +{ + UINT32 GraphicWidth MID_WIDTH; + UINT32 GraphicHeight MID_HEIGHT; +}; +item SwGraphicSize SwGraphicSizeItem; + +struct CropGrf +{ + INT32 Left MID_1; + INT32 Right MID_2; + INT32 Top MID_3; + INT32 Bottom MID_4; +}; +item CropGrf SwCropGrf; + +struct INetFmt +{ + String URL MID_1; + String TargetFrame MID_2; + String VisitedFmt MID_3; + String UnvisitedFmt MID_4; +}; +item INetFmt SwFmtINetFmt; + +struct FmtSurround +{ + SwSurround Surround MID_1; + BOOL AnchorOnly MID_3; + BOOL Contour MID_4; + BOOL Outside MID_5 +}; + +item FmtSurround SwFmtSurround; + +struct SwShadowCursor +{ + BOOL ShadowCursor MID_1; + BYTE ShadowCursorMode MID_2; + INT32 ShadowCursorColor MID_3; +}; +item SwShadowCursor SwShadowCursorItem; diff --git a/sw/sdi/swpatch.txt b/sw/sdi/swpatch.txt new file mode 100644 index 000000000000..2628f81618c0 --- /dev/null +++ b/sw/sdi/swpatch.txt @@ -0,0 +1,19 @@ +swinter.h: + +unsigned char SYSCALL SwDocumentGetIsPrinting( C_Object ObjHdl ); + + +swinter.c: + +unsigned char SYSCALL SwDocumentGetIsPrinting( C_Object ObjHdl ) +{ + if( SvIPCIsConnected() ) + { + return (unsigned char) pIPCCallFunction( SvIPCGetClient(), 136598, + ObjHdl , 1, NULL ); + } + return 0; +} + +#pragma code_seg("swinter2","CODE") + diff --git a/sw/sdi/swriter.sdi b/sw/sdi/swriter.sdi new file mode 100644 index 000000000000..104cee5141c1 --- /dev/null +++ b/sw/sdi/swriter.sdi @@ -0,0 +1,8432 @@ +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevObject FN_GOTO_PREV_OBJ +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PrintPagePreView FN_PRINT_PAGEPREVIEW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem AcceptRedlining FN_REDLINE_ACCEPT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CommentRedlining FN_REDLINE_COMMENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToFooter FN_TO_FOOTER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SbaInsert FN_QRY_INSERT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextWrongTableFormula FN_NEXT_TBLFML_ERR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem BulletsAndNumberingDialog FN_NUMBER_BULLETS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToPrevTable FN_PREV_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevTableFormula FN_PREV_TBLFML +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem WordLeftSel FN_PREV_WORD_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToPrevFootnote FN_PREV_FOOTNOTE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem VRuler FN_VLINEAL + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToPrevSentence FN_PREV_SENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PreviewPrintOptions FN_PREVIEW_PRINT_OPTIONS +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOC; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EndOfDocumentSel FN_END_OF_DOCUMENT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevWrongTableFormula FN_PREV_TBLFML_ERR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertNeutralParagraph FN_NUM_BULLET_NONUM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToPrevWord FN_PREV_WORD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageStyleApply FN_SET_PAGE_STYLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignCharBottom FN_FRAME_ALIGN_VERT_CHAR_BOTTOM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Repaginate FN_REPAGINATE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ShowHiddenParagraphs FN_VIEW_HIDDEN_PARA + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetMultiSelection FN_SET_ADD_MODE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FormatGroup FN_TOOL_GROUP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ShowTwoPages FN_SHOW_TWO_PAGES +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertAuthoritiesEntry FN_INSERT_AUTH_ENTRY_DLG +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem SuperScript FN_SET_SUPER_SCRIPT + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ShadowCursor FN_SHADOWCURSOR + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ShiftBackspace FN_SHIFT_BACKSPACE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GotoPrevSentenceSel FN_PREV_SENT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Ruler FN_RULER + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = TRUE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EditCurIndex FN_EDIT_CURRENT_TOX +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ShowRedlining FN_REDLINE_SHOW +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Refresh FN_REFRESH_VIEW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ScrollNavigation FN_SCROLL_NAVIGATION + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ScrollNextPrev FN_SCROLL_NEXT_PREV +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SelectText FN_SELECT_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EntireColumn FN_TABLE_SELECT_COL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SwMailMerge FN_SBA_BRW_MERGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFrame FN_INSERT_FRAME +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Remove FN_NUM_BULLET_OFF +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpDownThisLevel FN_NUM_BULLET_NEXT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SelectWord FN_SELECT_WORD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToNextBookmark FN_NEXT_BOOKMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToNextWord FN_NEXT_WORD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem WordRightSel FN_NEXT_WORD_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem IncrementSubLevels FN_NUM_BULLET_OUTLINE_UP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem IncrementIndentValue FN_INC_INDENT_OFFSET +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem IncrementLevel FN_NUM_BULLET_UP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ViewBounds FN_VIEW_BOUNDS + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MoveDownSubItems FN_NUM_BULLET_OUTLINE_MOVEDOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MoveUpSubItems FN_NUM_BULLET_OUTLINE_MOVEUP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToNextFootnote FN_NEXT_FOOTNOTE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToNextPara FN_NEXT_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GotoPage FN_NAVIGATION_PI_GOTO_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem NewGlobalDoc FN_NEW_GLOBAL_DOC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_APPLICATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem NumberingStart FN_NUMBER_NEWSTART + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Asynchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextTableFormula FN_NEXT_TBLFML +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MergeDialog FN_QRY_MERGE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = TRUE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextIndexMark FN_NEXT_TOXMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToStartOfLine FN_START_OF_LINE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GotoNextSentenceSel FN_NEXT_SENT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToNextTable FN_NEXT_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EndOfParaSel FN_END_OF_PARA_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SendOutlineToStarImpress FN_OUTLINE_TO_IMPRESS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageDown FN_PAGEDOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToFootnoteOrAnchor FN_FOOTNOTE_TO_ANCHOR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ObjectMirrorVertical FN_TOOL_VMIRROR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item OptimizeTable FN_OPTIMIZE_TABLE + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxInt16Item PasteSpecial FN_PASTESPECIAL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertAnnotation FN_POSTIT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToNextSentence FN_NEXT_SENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignLeft FN_FRAME_ALIGN_HORZ_LEFT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToEndOfWord FN_DELETE_WORD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageUpSel FN_PAGEUP_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatDate FN_NUMBER_DATE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageDownSel FN_PAGEDOWN_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TableNumberFormatDialog FN_NUM_FORMAT_TABLE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ShowFourPages FN_SHOW_FOUR_PAGES +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfPage FN_END_OF_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatStandard FN_NUMBER_STANDARD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertDateField FN_INSERT_FLD_DATE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatDecimal FN_NUMBER_TWODEC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfPage FN_START_OF_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatPercent FN_NUMBER_PERCENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatScientific FN_NUMBER_SCIENTIFIC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfNextColumn FN_START_OF_NEXT_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetAnchorToFrame FN_TOOL_ANKER_FRAME +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SbaInsertField FN_QRY_INSERT_FIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SvxColorItem BackColor SID_ATTR_CHAR_COLOR_BACKGROUND + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ToggleAnchorType FN_TOOL_ANKER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetAnchorAtChar FN_TOOL_ANKER_AT_CHAR +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ObjectMirrorHorizontal FN_TOOL_HMIRROR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FormatUngroup FN_TOOL_UNGROUP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ChapterNumberingDialog FN_NUMBERING_OUTLINE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetAnchorToPara FN_TOOL_ANKER_PARAGRAPH +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FootnoteDialog FN_FORMAT_FOOTNOTE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ToggleObjectLayer FN_TOOL_HIERARCHIE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ResetTableProtection FN_TABLE_UNSET_READ_ONLY +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UnsetCellsReadOnly FN_TABLE_UNSET_READ_ONLY_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToStartOfPara FN_START_OF_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetRowHeight FN_TABLE_SET_ROW_HEIGHT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MergeCells FN_TABLE_MERGE_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ThesaurusDialog FN_THESAURUS_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetExtSelection FN_SET_EXT_MODE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToHeader FN_TO_HEADER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertPageCountField FN_INSERT_FLD_PGCOUNT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem CellVertCenter FN_TABLE_VERT_CENTER + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxBoolItem CellVertTop FN_TABLE_VERT_NONE + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxBoolItem TableBoundaries FN_VIEW_TABLEGRID + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextObject FN_GOTO_NEXT_OBJ +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem VScroll FN_VSCROLLBAR + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoUp FN_LINE_UP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Marks FN_VIEW_MARKS + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ControlCodes FN_VIEW_META_CHARS + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SvxColorItem FontColor SID_ATTR_CHAR_COLOR2 + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item HtmlMode SID_HTML_MODE + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = TRUE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem LoadStyles SID_TEMPLATE_LOAD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapAnchorOnly FN_WRAP_ANCHOR_ONLY +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxStringItem StateZoom FN_STAT_ZOOM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem CharColorExt SID_ATTR_CHAR_COLOR_EXT + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateFields FN_UPDATE_FIELDS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MoveDown FN_NUM_BULLET_MOVEDOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem UnderlineDouble FN_UNDERLINE_DOUBLE + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapIdeal FN_FRAME_WRAP_IDEAL +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateAllLinks FN_UPDATE_ALL_LINKS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Hyphenate FN_HYPHENATE_OPT_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UnhainFrames FN_FRAME_UNCHAIN + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxBoolItem CharBackgroundExt SID_ATTR_CHAR_COLOR_BACKGROUND_EXT + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateAllIndexes FN_UPDATE_TOX +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ExecuteMacroField FN_EXECUTE_MACROFIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_MACRO; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Fieldnames FN_VIEW_FIELDNAME + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem StartOfParaSel FN_START_OF_PARA_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfPrevColumn FN_START_OF_PREV_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AutoFormatRedlineApply FN_AUTOFORMAT_REDLINE_APPLY +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertMultiIndex FN_INSERT_MULTI_TOX +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfColumn FN_END_OF_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem StateBookmark FN_STAT_BOOKMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_INTERN; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageUp FN_PAGEUP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxStringItem StatePageNumber FN_STAT_PAGE + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = TRUE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapThroughTransparent FN_FRAME_WRAPTHRU_TRANSP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfPrevPageSel FN_START_OF_PREV_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStart FN_START_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfColumn FN_START_OF_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem InsertHeader FN_INSERT_HEADER + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SortDialog FN_SORTING_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoRight FN_CHAR_RIGHT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Spelling FN_SPELLING_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem StartAutoCorrect FN_AUTO_CORRECT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfNextPage FN_START_OF_NEXT_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfNextPageSel FN_START_OF_NEXT_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem StartOfDocumentSel FN_START_OF_DOCUMENT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapContour FN_FRAME_WRAP_CONTOUR +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem StartOfLineSel FN_START_OF_LINE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Fields FN_VIEW_FIELDS + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TableModeFix FN_TABLE_MODE_FIX +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TableModeFixProp FN_TABLE_MODE_FIX_PROP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetOptimalColumnWidth FN_TABLE_ADJUST_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertRowDialog FN_TABLE_INSERT_ROW_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToStartOfPara FN_DELETE_BACK_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Sourceview FN_SOURCEVIEW + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = TRUE, + Container = FALSE, + Asynchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetColumnWidth FN_TABLE_SET_COL_WIDTH +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Protect FN_TABLE_SET_READ_ONLY_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetOptimalRowHeight FN_TABLE_OPTIMAL_HEIGHT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Select FN_TABLE_SELECT_ALL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextPlacemarker FN_GOTO_NEXT_MARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AutoSum FN_TABLE_AUTOSUM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignTop FN_FRAME_ALIGN_VERT_TOP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item SelectionMode FN_STAT_SELMODE + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = TRUE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxStringItem PageStyleName FN_STAT_TEMPLATE + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = TRUE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = TRUE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem SynchronizeLabelsDlg FN_SYNC_LABELS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FormatColumns FN_FORMAT_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CalculateSel FN_CALCULATE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertRows FN_TABLE_INSERT_ROW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DistributeRows FN_TABLE_BALANCE_ROWS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DeleteColumns FN_TABLE_DELETE_COL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EntireRow FN_TABLE_SELECT_ROW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TextAttributes FN_DRAWTEXT_ATTR_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem MergeTable FN_TABLE_MERGE_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FootnoteDialog FN_EDIT_FOOTNOTE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertReferenzField FN_INSERT_REF_FIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelLine FN_DELETE_WHOLE_LINE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TextWrap FN_DRAW_WRAP_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToEndOfDoc FN_END_DOC_DIRECT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageDialog FN_FORMAT_PAGE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToEndOfDoc FN_END_OF_DOCUMENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFormula FN_EDIT_FORMULA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem LinkDialog FN_EDIT_LINK_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ObjectForwardOne FN_FRAME_DOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertColumnBreak FN_INSERT_COLUMN_BREAK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoLeft FN_CHAR_LEFT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Backspace FN_BACKSPACE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Calc FN_CALC_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ChangeDatabaseField FN_CHANGE_DBFIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateInputFields FN_UPDATE_INPUTFIELDS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ConvertTableText FN_CONVERT_TEXT_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxBoolItem RepeatSearch FN_REPEAT_SEARCH +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CharLeftSel FN_CHAR_LEFT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetAnchorToPage FN_TOOL_ANKER_PAGE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CharRightSel FN_CHAR_RIGHT_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem PrintLayout FN_PRINT_LAYOUT + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ExpandGlossary FN_EXPAND_GLOSSARY +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TableDialog FN_FORMAT_TABLE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfNextColumn FN_END_OF_NEXT_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DecrementIndentValue FN_DEC_INDENT_OFFSET +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertEnvelop FN_ENVELOP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem BorderDialog FN_FORMAT_BORDER_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SwFmtDrop FormatDropcap FN_FORMAT_DROPCAPS + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateCurIndex FN_UPDATE_CUR_TOX + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FlipVertical FN_FLIP_VERT_GRAFIC +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToEndOfPara FN_END_OF_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem BackgroundDialog FN_FORMAT_BACKGROUND_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertObject FN_INSERT_OBJECT_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfNextPageSel FN_END_OF_NEXT_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem NumberOrNoNumber FN_NUM_OR_NONUM + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToEndOfLine FN_END_OF_LINE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EndOfLineSel FN_END_OF_LINE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfPrevColumn FN_END_OF_PREV_COLUMN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfPrevPage FN_END_OF_PREV_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem InsertField FN_INSERT_FIELD + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoDown FN_LINE_DOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfPageSel FN_END_OF_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfNextPage FN_END_OF_NEXT_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToStartOfLine FN_DELETE_BACK_LINE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToStartOfSentence FN_DELETE_BACK_SENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToStartOfWord FN_DELETE_BACK_WORD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DecrementSubLevels FN_NUM_BULLET_OUTLINE_DOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SplitTable FN_TABLE_SPLIT_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem MoveUp FN_NUM_BULLET_MOVEUP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem TableModeVariable FN_TABLE_MODE_VARIABLE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Escape FN_ESCAPE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatTime FN_NUMBER_TIME +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToEndOfLine FN_DELETE_LINE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertLabels FN_LABEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToEndOfSentence FN_DELETE_SENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PreviewZoom FN_PREVIEW_ZOOM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfPageSel FN_START_OF_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToNextFrame FN_CNTNT_TO_NEXT_FRAME +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DeleteRows FN_TABLE_DELETE_ROW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FlipHorizontal FN_FLIP_HORZ_GRAFIC +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToPrevPara FN_PREV_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SetAnchorToChar FN_TOOL_ANKER_CHAR +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem LineUpSel FN_LINE_UP_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem CellVertBottom FN_TABLE_VERT_BOTTOM + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToStartOfPrevPage FN_START_OF_PREV_PAGE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EditRegion FN_EDIT_REGION +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DataBaseBrowser FN_QRY +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = TRUE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEndOfPrevPageSel FN_END_OF_PREV_PAGE_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFrameInteract FN_INSERT_FRAME_INTERACT_NOCOL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignVerticalRowCenter FN_FRAME_ALIGN_VERT_ROW_CENTER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxBoolItem TableNumberRecognition FN_SET_MODOPT_TBLNUMFMT + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EditHyperlink FN_EDIT_HYPERLINK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AutoCorrectDialog FN_AUTO_CORRECT_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AutoFormatApply FN_AUTOFORMAT_APPLY +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem OnlineAutoFormat FN_AUTOFORMAT_AUTO + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CreateAbstract FN_ABSTRACT_NEWDOC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SendAbstractToStarImpress FN_ABSTRACT_STARIMPRESS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToStartOfDoc FN_START_DOC_DIRECT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertIndexesEntry FN_INSERT_IDX_ENTRY_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem IndexEntryDialog FN_EDIT_IDX_ENTRY_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxStringItem InsertColumnSection FN_INSERT_COLUMN_SECTION +(SfxUInt16Item Columns FN_INSERT_COLUMN_SECTION) +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertColumns FN_TABLE_INSERT_COL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ActivateRedlining FN_REDLINE_ON +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem RemoveTableOf FN_REMOVE_CUR_TOX +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem AppendParaBehindTheSection FN_SECTION_APPENDNODE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ExecHyperlinks FN_STAT_HYPERLINKS + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = TRUE, + ToolBoxConfig = FALSE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AuthoritiesEntryDialog FN_EDIT_AUTH_ENTRY_DLG +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Shrink FN_SHRINK_FONT_SIZE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertBusinessCard FN_BUSINESS_CARD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertPageNumberField FN_INSERT_FLD_PGNUMBER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertTimeField FN_INSERT_FLD_TIME +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertBookmark FN_INSERT_BOOKMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertAuthorField FN_INSERT_FLD_AUTHOR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertColumnDialog FN_TABLE_INSERT_COL_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFootnoteDirect FN_INSERT_FOOTNOTE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFootnote FN_INSERT_FOOTNOTE_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SplitCell FN_TABLE_SPLIT_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertTopicField FN_INSERT_FLD_TOPIC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem InsertGraphicRuler FN_INSERT_HRULER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem InsertFooter FN_INSERT_FOOTER + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertPara FN_INSERT_BREAK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertBreak FN_INSERT_BREAK_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DecrementLevel FN_NUM_BULLET_DOWN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem IndexMarkToIndex FN_IDX_MARK_TO_IDX +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxStringItem NumberFormat FN_NUMBER_FORMAT + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertEndnoteDirect FN_INSERT_ENDNOTE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SbaMerge FN_QRY_MERGE_FIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxBoolItem InsertFieldCtrl FN_INSERT_FIELD_CTRL + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem NumberFormatCurrency FN_NUMBER_CURRENCY +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem NewHtmlDoc FN_NEW_HTML_DOC +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_APPLICATION; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item InsertCtrl FN_INSERT_CTRL + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertObjectStarMath FN_INSERT_SMA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToPrevBookmark FN_PREV_BOOKMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertSymbol FN_INSERT_SYMBOL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GoToStartOfDoc FN_START_OF_DOCUMENT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxStringItem InsertRegion FN_INSERT_REGION +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertObjectStarImage FN_INSERT_SIM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem LineDownSel FN_LINE_DOWN_SEL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem LineNumberingDialog FN_LINE_NUMBERING_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SwBrwInsert FN_SBA_BRW_INSERT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertTable FN_INSERT_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertScript FN_JAVAEDIT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem CreateSWDrawView SID_CREATE_SW_DRAWVIEW +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertHyperlinkDlg FN_INSERT_HYPERLINK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertLinebreak FN_INSERT_LINEBREAK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertNonBreakingSpace FN_INSERT_HARD_SPACE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertHardHyphen FN_INSERT_HARDHYPHEN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item PageOffset FN_CHANGE_PAGENUM +[ + SfxVoidItem PageOffsetDialog(SfxUInt16Item nOffset FN_CHANGE_PAGENUM); + + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxObjectItem InsertPageFooter FN_INSERT_PAGEFOOTER + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxObjectItem InsertPageHeader FN_INSERT_PAGEHEADER + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FieldDialog FN_EDIT_FIELD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Volatile, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxUInt16Item InsertObjCtrl FN_INSERT_OBJ_CTRL + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem SubScript FN_SET_SUB_SCRIPT + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertPagebreak FN_INSERT_PAGEBREAK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignCharTop FN_FRAME_ALIGN_VERT_CHAR_TOP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignRowBottom FN_FRAME_ALIGN_VERT_ROW_BOTTOM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SwUpdate FN_SBA_BRW_UPDATE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_DATA; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DelToEndOfPara FN_DELETE_PARA +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertCaptionDialog FN_INSERT_CAPTION +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignVerticalCharCenter FN_FRAME_ALIGN_VERT_CHAR_CENTER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem SendOutlineToClipboard FN_OUTLINE_TO_CLIPBOARD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_DOCUMENT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem MirrorOnEvenPages FN_FRAME_MIRROR_ON_EVEN_PAGES +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapOff FN_FRAME_NOWRAP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignRowTop FN_FRAME_ALIGN_VERT_ROW_TOP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AddAllUnknownWords FN_ADD_UNKNOWN +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_OPTIONS; +] + +//-------------------------------------------------------------------------- +SfxBoolItem ChainFrames FN_FRAME_CHAIN + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = TRUE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem Grow FN_GROW_FONT_SIZE +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ResetAttributes FN_FORMAT_RESET +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertSoftHyphen FN_INSERT_SOFT_HYPHEN +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem FrameDialog FN_FORMAT_FRAME_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GraphicDialog FN_FORMAT_GRAFIC_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_GRAPHIC; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignRight FN_FRAME_ALIGN_HORZ_RIGHT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignBottom FN_FRAME_ALIGN_VERT_BOTTOM +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignVerticalCenter FN_FRAME_ALIGN_VERT_CENTER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxStringItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpUpThisLevel FN_NUM_BULLET_PREV +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_ENUMERATION; +] + +//-------------------------------------------------------------------------- +SfxVoidItem AlignHorizontalCenter FN_FRAME_ALIGN_HORZ_CENTER +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToEnd FN_END_TABLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToNextRegion FN_GOTO_NEXT_REGION +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevInputField FN_GOTO_PREV_INPUTFLD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevPlacemarker FN_GOTO_PREV_MARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapOn FN_FRAME_WRAP +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxVoidItem PageColumnDialog FN_FORMAT_PAGE_COLUMN_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoPrevIndexMark FN_PREV_TOXMARK +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem MirrorGraphicOnEvenPages FN_GRAPHIC_MIRROR_ON_EVEN_PAGES +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertFrameInteract FN_INSERT_FRAME_INTERACT +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* status: */ + SlotType = SfxUInt16Item + + /* config: */ + AccelConfig = FALSE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem HScroll FN_HSCROLLBAR + +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateCharts FN_UPDATE_CHARTS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem JumpToPrevRegion FN_GOTO_PREV_REGION +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem JumpToReference FN_GOTO_REFERENCE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxVoidItem DistributeColumns FN_TABLE_BALANCE_CELLS +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_TABLE; +] + +//-------------------------------------------------------------------------- +SfxVoidItem UpdateAll FN_UPDATE_ALL +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem GoToAnchor FN_FRAME_TO_ANCHOR +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxBoolItem Graphic FN_VIEW_GRAPHIC + +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + Readonly = FALSE, + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_VIEW; +] + +//-------------------------------------------------------------------------- +SfxVoidItem ObjectBackOne FN_FRAME_UP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FORMAT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem InsertTitleField FN_INSERT_FLD_TITLE +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_INSERT; +] + +//-------------------------------------------------------------------------- +SfxVoidItem EditGlossary FN_GLOSSARY_DLG +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = TRUE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Asynchron; + + /* status: */ + SlotType = SfxBoolItem + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_EDIT; +] + +//-------------------------------------------------------------------------- +SfxBoolItem GotoNextInputField FN_GOTO_NEXT_INPUTFLD +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = TRUE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_NAVIGATOR; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapLeft FN_FRAME_WRAP_LEFT +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapRight FN_FRAME_WRAP_RIGHT +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + +//-------------------------------------------------------------------------- +SfxBoolItem WrapThrough FN_FRAME_WRAPTHRU +() +[ + /* flags: */ + AutoUpdate = TRUE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + Synchron; + + /* config: */ + AccelConfig = TRUE, + MenuConfig = TRUE, + StatusBarConfig = FALSE, + ToolBoxConfig = TRUE, + GroupId = GID_FRAME; +] + diff --git a/sw/sdi/swslots.hrc b/sw/sdi/swslots.hrc new file mode 100644 index 000000000000..cb4ec51434cf --- /dev/null +++ b/sw/sdi/swslots.hrc @@ -0,0 +1,68 @@ +/************************************************************************* + * + * $RCSfile: swslots.hrc,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:30 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#include +#include +#include +#include +#include +#include "globals.hrc" +#include "cmdid.h" + diff --git a/sw/sdi/swslots.sdi b/sw/sdi/swslots.sdi new file mode 100644 index 000000000000..e7f3ff61134f --- /dev/null +++ b/sw/sdi/swslots.sdi @@ -0,0 +1,166 @@ +/*------------------------------------------------------------------------ + + $Workfile: SWSLOTS.SDI $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/swslots.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: Main - IDL - File fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +import "ofa.ilb" + +module +"9F76B581-23DD-101C-80B6-000024021835" +"A1810F00-23DE-101C-80B6-000024021835" +StarWriter +[ +HelpText( "StarWriter Application" ) +SlotIdFile( "swslots.hrc" ) +TypeLibFile( "swslots.tlb" ) +ModulePrefix( "Sw" ) +] +{ + item String SfxTemplateItem; + item String SvxColumnItem; + item String SvxLineItem; + item String SfxSetItem; + + item String TbxDummyItem; + + item String SvxBoxItem; + + item String XFillAttrSetItem; + item String XFillBitmapItem; + item String XFillColorItem; + item String XFillGradientItem; + item String XFillHatchItem; + item String XFillStyleItem; + item String XLineAttrSetItem; + item String XLineColorItem; + item String XLineDashItem; + item String XLineEndItem; + item String XLineEndWidthItem; + item String XLineEndCenterItem; + item String XLineStartItem; + item String XLineStartWidthItem; + item String XLineStartCenterItem; + item String XLineStyleItem; + item String XLineWidthItem; + + enum Language + { + LANGUAGE_DONTKNOW, + LANGUAGE_SYSTEM + }; + item Language SvxLanguageItem; + + include "switems.sdi" + include "swnew.sdi" + include "swriter.sdi" + + include "_docsh.sdi" + include "docsh.sdi" + include "wdocsh.sdi" + + include "wrtapp.sdi" + + include "_basesh.sdi" + include "basesh.sdi" + + include "_textsh.sdi" + include "textsh.sdi" + include "wtextsh.sdi" + + include "_drwbase.sdi" + include "drwbassh.sdi" + include "wdrwbase.sdi" + + include "_formsh.sdi" + include "formsh.sdi" + include "wformsh.sdi" + + include "drawsh.sdi" + include "drwtxtsh.sdi" + + include "_listsh.sdi" + include "listsh.sdi" + include "wlistsh.sdi" + + include "_frmsh.sdi" + include "frmsh.sdi" + include "wfrmsh.sdi" + + include "_tabsh.sdi" + include "tabsh.sdi" + include "wtabsh.sdi" + + include "_grfsh.sdi" + include "grfsh.sdi" + include "wgrfsh.sdi" + + include "_olesh.sdi" + include "olesh.sdi" + include "wolesh.sdi" + + include "beziersh.sdi" + + include "_viewsh.sdi" + include "viewsh.sdi" + include "wviewsh.sdi" +} +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.38 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.37 1998/06/09 13:37:10 OM + VC-Controls entfernt + + + Rev 1.36 09 Jun 1998 15:37:10 OM + VC-Controls entfernt + + Rev 1.35 08 Jun 1998 18:08:30 OM + Forms im HTML-Mode + + Rev 1.34 11 Mar 1998 17:14:00 OM + DB-FormShell + + Rev 1.33 07 Mar 1998 11:31:22 OS + idl->sdi - funktioniert aber nicht! + + Rev 1.32 28 Aug 1997 12:37:00 MBA + Text+HTML in eine IDL + + Rev 1.31 13 Feb 1997 12:45:06 MA + unnoetige Texte entfernt + + Rev 1.30 31 Jan 1997 13:24:10 OS + neu: _/wgrfsh _/wolesh + + Rev 1.29 23 Jan 1997 15:41:42 OS + +_textsh.idl + + Rev 1.28 23 Jan 1997 14:39:50 OS + Umstellung fuer StarWriter/Web + + Rev 1.27 23 Jan 1997 08:37:16 OS + neue files fuer Basis-interfaces + + Rev 1.26 22 Jan 1997 11:18:24 OM + Neue Shells: DrawBaseShell und DrawControlShell + + Rev 1.25 08 Jan 1997 12:39:46 OM + Neu: Bezier-Shell + + Rev 1.24 27 Sep 1996 09:44:56 OS + swnew.idl vor swriter.idl + + Rev 1.23 19 Sep 1996 10:53:52 OS + neuese File: swnew.idl fuer neue Slots + +------------------------------------------------------------------------*/ diff --git a/sw/sdi/swslots.src b/sw/sdi/swslots.src new file mode 100644 index 000000000000..a86121942638 --- /dev/null +++ b/sw/sdi/swslots.src @@ -0,0 +1,8925 @@ +/************************************************************************* + * + * $RCSfile: swslots.src,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:30 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#include "cmdid.h" +#include "offmgr/ofaids.hrc" +#include "globals.hrc" + +SfxSlotInfo FN_ABSTRACT_NEWDOC +{ + SlotName = "Dokument aus Abstrakt"; + SlotName [ english ] = "Dokument aus Abstrakt"; + SlotName[ english_us ] = "Document From Abstract"; + SlotName[ portuguese ] = "Documento a partir de Abstracto"; + SlotName[ russian ] = "Äîêóìåíò èç ïðîñìîòðà"; + SlotName[ dutch ] = "Document van extract"; + SlotName[ french ] = "Document d'après synthèse"; + SlotName[ spanish ] = "Documento desde extracto"; + SlotName[ italian ] = "Crea documento dal sunto"; + SlotName[ danish ] = "Dokument fra abstract"; + SlotName[ swedish ] = "Dokument ur utdrag"; + SlotName[ polish ] = "Dokument z Abstraktu"; + SlotName[ portuguese_brazilian ] = "CreateAbstract"; + SlotName[ japanese ] = "±³Äײ݂©‚ç‚Ì•¶�‘"; + SlotName[ chinese_simplified ] = "ÎĵµÀ´×ÔÕªÒª"; + SlotName[ chinese_traditional ] = "¤å¥ó±qºK­n"; + SlotName[ arabic ] = "ãÓÊäÏ ãä ÇáÊáÎíÕ"; + SlotName[ dutch ] = "Document van extract"; + SlotName[ chinese_simplified ] = "ÎĵµÀ´×ÔÕªÒª"; + SlotName[ greek ] = "¸ããñáöá áðü Abstract"; + SlotName[ korean ] = "¿ä¾àÀ¸·ÎºÎÅÍ ¹®¼­"; + SlotName[ turkish ] = "Belge özeti çýkar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_ABSTRACT_STARIMPRESS +{ + SlotName = "Präsentation aus Abstrakt"; + SlotName [ english ] = "Präsentation aus Abstrakt"; + SlotName[ english_us ] = "Presentation from Abstract"; + SlotName[ portuguese ] = "Apresentação a partir do Abstracto"; + SlotName[ russian ] = "Ïðåçåíòàöèÿ èç ïðîñìîòðà"; + SlotName[ dutch ] = "Presentatie uit extract"; + SlotName[ french ] = "Présentation d'après synthèse"; + SlotName[ spanish ] = "Presentación desde extracto"; + SlotName[ italian ] = "Presentazione dal sunto"; + SlotName[ danish ] = "Præsentation fra abstract"; + SlotName[ swedish ] = "Presentation från Utdrag"; + SlotName[ polish ] = "Prezentacja z Abstraktu"; + SlotName[ portuguese_brazilian ] = "SendAbstractToStarOffice Impress"; + SlotName[ japanese ] = "±³Äײ݂©‚ç‚ÌÌßÚ¾ÞÝð¼®Ý"; + SlotName[ chinese_simplified ] = "ÑÝʾÎĸåÀ´×ÔÕªÒª"; + SlotName[ chinese_traditional ] = "²³ø±qºK­n"; + SlotName[ arabic ] = "ÚÑÖ ÊÞÏíãí ãä ÇáÊáÎíÕ"; + SlotName[ dutch ] = "Presentatie uit extract"; + SlotName[ chinese_simplified ] = "ÑÝʾÎĸåÀ´×ÔÕªÒª"; + SlotName[ greek ] = "Ðáñïõóßáóç áðü Abstract"; + SlotName[ korean ] = "¿ä¾ÇÀ¸·ÎºÎÅÍ ÇÁ¸®Á¨Å×À̼Ç"; + SlotName[ turkish ] = "Sunu özeti çýkar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_ADD_UNKNOWN +{ + SlotName = "Unbekannte Wörter aufnehmen"; + SlotName [ english ] = "Unbekannte Wörter aufnehmen"; + SlotName[ english_us ] = "Add Unknown Words"; + SlotName[ portuguese ] = "Adicionar palavras desconhecidas"; + SlotName[ russian ] = "Äîáàâèòü íåçíàêîìûå ñëîâà"; + SlotName[ dutch ] = "Onbekende woorden opnemen"; + SlotName[ french ] = "Ajouter mots inconnus"; + SlotName[ spanish ] = "Aceptar palabras desconocidas"; + SlotName[ italian ] = "Preleva le parole sconosciute"; + SlotName[ danish ] = "Tilføj alle ukendte ord"; + SlotName[ swedish ] = "Lägg till okända ord"; + SlotName[ polish ] = "Do³¹cz nieznane s³owa"; + SlotName[ portuguese_brazilian ] = "AddAllUnknownWords"; + SlotName[ japanese ] = "Ž«�‘‚ɒljÁ"; + SlotName[ chinese_simplified ] = "ÌíÈë²»Ã÷µÄ×Ö"; + SlotName[ chinese_traditional ] = "¥[¤J¤£©úªº¦r"; + SlotName[ arabic ] = "ÅÖÇÝÉ ÇáßáãÇÊ ÇáÛíÑ ãÚÑæÝÉ"; + SlotName[ dutch ] = "Onbekende woorden opnemen"; + SlotName[ chinese_simplified ] = "ÌíÈë²»Ã÷µÄ×Ö"; + SlotName[ greek ] = "Ðñüóèåóç Üãíùóôùí ëÝîåùí"; + SlotName[ korean ] = "¾Ë·ÁÁöÁö¾ÊÀº ´Ü¾î Ãß°¡"; + SlotName[ turkish ] = "Bilinmeyen sözcükler ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_AUTO_CORRECT +{ + SlotName = "AutoKorrektur"; + SlotName [ english ] = "AutoKorrektur"; + SlotName[ english_us ] = "AutoCorrect"; + SlotName[ portuguese ] = "AutoCorrecção"; + SlotName[ russian ] = "Àâòîçàìåíà"; + SlotName[ dutch ] = "AutoCorrectie"; + SlotName[ french ] = "AutoCorrection"; + SlotName[ spanish ] = "AutoCorrección"; + SlotName[ italian ] = "Correzione automatica"; + SlotName[ danish ] = "AutoKorrektur"; + SlotName[ swedish ] = "AutoKorrigering"; + SlotName[ polish ] = "Autokorekta"; + SlotName[ portuguese_brazilian ] = "StartAutoCorrect"; + SlotName[ japanese ] = "µ°ÄºÚ¸Ä"; + SlotName[ chinese_simplified ] = "×Ô¶¯¸üÕý"; + SlotName[ chinese_traditional ] = "¦Û°Ê®Õ¥¿"; + SlotName[ arabic ] = "ÊÕÍíÍ ÊáÞÇÆí"; + SlotName[ dutch ] = "AutoCorrectie"; + SlotName[ chinese_simplified ] = "×Ô¶¯¸üÕý"; + SlotName[ greek ] = "ÁõôïÄéüñèùóç"; + SlotName[ korean ] = "ÀÚµ¿ °íħ"; + SlotName[ turkish ] = "Otomatik düzeltme"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_AUTO_CORRECT_DLG +{ + SlotName = "AutoKorrektur bearbeiten"; + SlotName [ english ] = "AutoKorrektur bearbeiten"; + SlotName[ english_us ] = "Edit AutoCorrect"; + SlotName[ portuguese ] = "Editar AutoCorrecção"; + SlotName[ russian ] = "Ïðàâêà àâòîçàìåíû"; + SlotName[ dutch ] = "AutoCorrectie bewerken"; + SlotName[ french ] = "Modifier AutoCorrection"; + SlotName[ spanish ] = "Editar AutoCorrección"; + SlotName[ italian ] = "Modifica correzione automatica"; + SlotName[ danish ] = "Rediger AutoKorrektur"; + SlotName[ swedish ] = "Redigera AutoKorrigering"; + SlotName[ polish ] = "Edytuj autokorektê"; + SlotName[ portuguese_brazilian ] = "ToolsAutoCorrect"; + SlotName[ japanese ] = "µ°ÄºÚ¸Ä‚Ì•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­×Ô¶¯¸üÕý"; + SlotName[ chinese_traditional ] = "½s¿è¦Û°Ê®Õ¥¿"; + SlotName[ arabic ] = "ÊÍÑíÑ ÇáÊÕÍíÍ ÇáÊáÞÇÆí"; + SlotName[ dutch ] = "AutoCorrectie bewerken"; + SlotName[ chinese_simplified ] = "±à¼­×Ô¶¯¸üÕý"; + SlotName[ greek ] = "Åðåîåñãáóßá ÁõôïÄéüñèùóç"; + SlotName[ korean ] = "ÀÚµ¿ °íħ ÆÄÀÏ ¼öÁ¤"; + SlotName[ turkish ] = "Otomatik düzelt dosyasýný düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_AUTOFORMAT_APPLY +{ + SlotName = "AutoFormat-Optionen anwenden"; + SlotName [ english ] = "AutoFormat-Optionen anwenden"; + SlotName[ english_us ] = "Apply AutoFormat Options"; + SlotName[ portuguese ] = "Aplicar opções de AutoFormato"; + SlotName[ russian ] = "Ïðèìåíèòü ïàðàìåòðû àâòîôîðìàòà"; + SlotName[ dutch ] = "AutoOpmaak-opties toepassen"; + SlotName[ french ] = "Utiliser les options de l'AutoFormat"; + SlotName[ spanish ] = "Aplicar opciones AutoFormato"; + SlotName[ italian ] = "Applica le opzioni di AutoFormat"; + SlotName[ danish ] = "Anvend AutoFormat-indstillinger"; + SlotName[ swedish ] = "Använd AutoFormat"; + SlotName[ polish ] = "U¿yj opcji autoformatowania"; + SlotName[ portuguese_brazilian ] = "AutoFormatApply"; + SlotName[ japanese ] = "µ°ÄÌ«°Ï¯Ä‚̵Ìß¼®Ý‚ð“K—p"; + SlotName[ chinese_simplified ] = "²ÉÓÃ×Ô¶¯¸ñʽѡÏî"; + SlotName[ chinese_traditional ] = "¨Ï¥Î¦Û°Ê®æ¦¡¿ï¶µ"; + SlotName[ arabic ] = "ÇÓÊÎÏÇã ÎíÇÑÇÊ AutoFormat"; + SlotName[ dutch ] = "AutoOpmaak-opties toepassen"; + SlotName[ chinese_simplified ] = "²ÉÓÃ×Ô¶¯¸ñʽѡÏî"; + SlotName[ greek ] = "ÅöáñìïãÞ åðéëïãþí ÁõôïÌïñöïðïßçóçò"; + SlotName[ korean ] = "ÀÚµ¿ ¼­½Ä ¿É¼Ç Àû¿ë"; + SlotName[ turkish ] = "Otomatik formatlama seçeneklerini uygula"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_AUTOFORMAT_AUTO +{ + SlotName = "AutoFormat"; + SlotName [ english ] = "AutoFormat"; + SlotName[ english_us ] = "AutoFormat"; + SlotName[ portuguese ] = "AutoFormato"; + SlotName[ russian ] = "Àâòîôîðìàò"; + SlotName[ dutch ] = "AutoOpmaak"; + SlotName[ french ] = "AutoFormat"; + SlotName[ spanish ] = "AutoFormato"; + SlotName[ italian ] = "Foramttazione automatica"; + SlotName[ danish ] = "AutoFormat"; + SlotName[ swedish ] = "AutoFormat"; + SlotName[ polish ] = "Autoformatowanie"; + SlotName[ japanese ] = "µ°ÄÌ«°Ï¯Ä"; + SlotName[ chinese_simplified ] = "×Ô¶¯¸ñʽ"; + SlotName[ chinese_traditional ] = "¦Û°Ê®æ¦¡"; + SlotName[ arabic ] = "ÊäÓíÞ ÊáÞÇÆí"; + SlotName[ dutch ] = "AutoOpmaak"; + SlotName[ chinese_simplified ] = "×Ô¶¯¸ñʽ"; + SlotName[ greek ] = "ÁõôïÌïñöïðïßçóç"; + SlotName[ korean ] = "ÀÚµ¿ ¼­½Ä"; + SlotName[ turkish ] = "Otomatik formatlama"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_AUTOFORMAT_REDLINE_APPLY +{ + SlotName = "AutoFormat-Optionen anwenden und Änderungen bestätigen"; + SlotName [ english ] = "AutoFormat-Optionen anwenden und Änderungen bestätigen"; + SlotName[ english_us ] = "Apply AutoFormat Options and confirm Changes"; + SlotName[ portuguese ] = "Aplicar opções de AutoFormato e confirmar modificações"; + SlotName[ russian ] = "Ïðèìåíèòü ïàðàìåòðû àâòîôîðìàòà è ïîäòâåðäèòü èçìåíåíèÿ"; + SlotName[ dutch ] = "AutoOpmaak-opties toepassen en wijzigingen bevestigen"; + SlotName[ french ] = "Utiliser les options d'AutoFormat et confirmer les modifications"; + SlotName[ spanish ] = "AutoFormato-Aplicar opciones y confirmar modificaciones"; + SlotName[ italian ] = "Applica le opzioni della Formattazione automatica e conferma le modifiche"; + SlotName[ danish ] = "Anvend AutoFormat-indstillinger og bekræft ændringer"; + SlotName[ swedish ] = "Använd AutoFormat-alternativ och bekräfta ändringar"; + SlotName[ polish ] = "Zastosuj opcje autoformatowania i potwierdŸ zmiany"; + SlotName[ portuguese_brazilian ] = "AutoFormatRedlineApply"; + SlotName[ japanese ] = "µ°ÄÌ«°Ï¯Ä‚̵Ìß¼®Ý‚ð“K—p‚µ‚Ä•Ï�X‚ðŠm”F"; + SlotName[ chinese_simplified ] = "ʹÓÃ×Ô¶¯¸ñʽѡÏȷ¶¨¸ü¸Ä"; + SlotName[ chinese_traditional ] = "¨Ï¥Î¦Û°Ê®æ¦¡¿ï¶µ¨Ã½T©wÅܧó"; + SlotName[ arabic ] = "ÇÓÊÎÏÇã ÎíÇÑÇÊ AutoFormat æÊÃßíÏ ÇáÊÛííÑÇÊ"; + SlotName[ dutch ] = "AutoOpmaak-opties toepassen en wijzigingen bevestigen"; + SlotName[ chinese_simplified ] = "ʹÓÃ×Ô¶¯¸ñʽѡÏȷ¶¨¸ü¸Ä"; + SlotName[ greek ] = "ÅöáñìïãÞ åðéëïãþí ÁõôïÌïñöïðïßçóçò êáé åðéâåâáßùóç áëëáãþí"; + SlotName[ korean ] = "ÀÚµ¿ ¼­½Ä ¿É¼Ç°ú º¯°æÈ®ÀÎ Àû¿ë"; + SlotName[ turkish ] = "Otomatik formatlama seçeneklerini uygula ve deðiþiklikleri onayla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_BACKSPACE +{ + SlotName = "Rückschritt"; + SlotName [ english ] = "Rückschritt"; + SlotName[ english_us ] = "Backspace"; + SlotName[ portuguese ] = "Retroceder"; + SlotName[ russian ] = "Âîçâðàò"; + SlotName[ dutch ] = "Backspace"; + SlotName[ french ] = "Ret. Arr."; + SlotName[ spanish ] = "Retroceder"; + SlotName[ italian ] = "Backspace"; + SlotName[ danish ] = "Tilbage"; + SlotName[ swedish ] = "Backsteg"; + SlotName[ polish ] = "Cofnij"; + SlotName[ portuguese_brazilian ] = "Backspace"; + SlotName[ japanese ] = "ÊÞ¯¸½Íß°½"; + SlotName[ chinese_simplified ] = "Í˸ñ"; + SlotName[ chinese_traditional ] = "ºM®ø©R¥O"; + SlotName[ arabic ] = "ÊÑÇÌÚ"; + SlotName[ dutch ] = "Backspace"; + SlotName[ chinese_simplified ] = "Í˸ñ"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "Backspace"; + SlotName[ korean ] = "¹é ½ºÆäÀ̽º"; + SlotName[ turkish ] = "Geri al"; +}; +SfxSlotInfo FN_CALC_TABLE +{ + SlotName = "Tabelle berechnen"; + SlotName [ english ] = "Tabelle berechnen"; + SlotName[ english_us ] = "Calculate Table"; + SlotName[ portuguese ] = "Calcular tabela"; + SlotName[ russian ] = "Âû÷èñëèòü òàáëèöó"; + SlotName[ dutch ] = "Tabel berekenen"; + SlotName[ french ] = "Calculer le tableau"; + SlotName[ spanish ] = "Calcular tabla"; + SlotName[ italian ] = "Calcola tabella"; + SlotName[ danish ] = "Beregn tabel"; + SlotName[ swedish ] = "Beräkna tabell"; + SlotName[ polish ] = "Oblicz tabelê"; + SlotName[ portuguese_brazilian ] = "CalculateTable"; + SlotName[ japanese ] = "•\\‚ÌŒvŽZ"; + SlotName[ chinese_simplified ] = "ÔËË㹤×÷±í"; + SlotName[ chinese_traditional ] = "¹Bºâ¤u§@ªí"; + SlotName[ arabic ] = "ÍÓÇÈ ÌÏæá"; + SlotName[ dutch ] = "Tabel berekenen"; + SlotName[ chinese_simplified ] = "ÔËË㹤×÷±í"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "Õðïëïãéóìüò ðßíáêá"; + SlotName[ korean ] = "Ç¥ °è»ê"; + SlotName[ turkish ] = "Tabloyu hesapla"; +}; +SfxSlotInfo FN_CALCULATE +{ + SlotName = "Auswahl berechnen"; + SlotName [ english ] = "Auswahl berechnen"; + SlotName[ english_us ] = "Calculate Selection"; + SlotName[ portuguese ] = "Calcular selecção"; + SlotName[ russian ] = "Âû÷èñëèòü âûäåëåííîå"; + SlotName[ dutch ] = "Selectie berekenen"; + SlotName[ french ] = "Calculer sélection"; + SlotName[ spanish ] = "Calcular selección"; + SlotName[ italian ] = "Calcola selezione"; + SlotName[ danish ] = "Beregn markering"; + SlotName[ swedish ] = "Beräkna urval"; + SlotName[ polish ] = "Oblicz selekcjê"; + SlotName[ portuguese_brazilian ] = "CalculateSel"; + SlotName[ japanese ] = "‘I‘ð”͈͂̌vŽZ"; + SlotName[ chinese_simplified ] = "ÔËËãÑ¡¶¨ÇøÓò"; + SlotName[ chinese_traditional ] = "¹Bºâ¿ï¨ú°Ï°ì"; + SlotName[ arabic ] = "ÍÓÇÈ ÇáÊÍÏíÏ"; + SlotName[ dutch ] = "Selectie berekenen"; + SlotName[ chinese_simplified ] = "ÔËËãÑ¡¶¨ÇøÓò"; + SlotName[ greek ] = "Õðïëïãïóìüò åðéëïãÞò"; + SlotName[ korean ] = "¼±Åà °è»ê"; + SlotName[ turkish ] = "Seçimi hesapla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHANGE_DBFIELD +{ + SlotName = "Datenbank ändern"; + SlotName [ english ] = "Datenbank ändern"; + SlotName[ english_us ] = "Change Database"; + SlotName[ portuguese ] = "Alterar base de dados"; + SlotName[ russian ] = "Èçìåíèòü áàçó äàííûõ"; + SlotName[ dutch ] = "Database veranderen"; + SlotName[ french ] = "Modifier base de données"; + SlotName[ spanish ] = "Modificar base de datos"; + SlotName[ italian ] = "Cambia database"; + SlotName[ danish ] = "Modificer database"; + SlotName[ swedish ] = "Ändra databas"; + SlotName[ polish ] = "Zmieñ bazê danych"; + SlotName[ portuguese_brazilian ] = "InsertDatabaseModify"; + SlotName[ japanese ] = "ÃÞ°ÀÍÞ°½‚Ì•Ï�X"; + SlotName[ chinese_simplified ] = "ÐÞ¸ÄÊý¾Ý¿â"; + SlotName[ chinese_traditional ] = "­×§ï¸ê®Æ®w"; + SlotName[ arabic ] = "ÊÚÏíá ÞÇÚÏÉ ÇáÈíÇäÇÊ"; + SlotName[ dutch ] = "Database veranderen"; + SlotName[ chinese_simplified ] = "ÐÞ¸ÄÊý¾Ý¿â"; + SlotName[ greek ] = "ÁëëáãÞ âÜóçò äåäïìåíþí"; + SlotName[ korean ] = "µ¥ÀÌÅͺ£À̽º ¼öÁ¤"; + SlotName[ turkish ] = "Veritabanýný düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHANGE_PAGENUM +{ + SlotName = "Seitennummer"; + SlotName [ english ] = "Seitennummer"; + SlotName[ english_us ] = "Page Number"; + SlotName[ portuguese ] = "Número de página"; + SlotName[ russian ] = "Íîìåð ñòðàíèöû"; + SlotName[ dutch ] = "Paginanummer"; + SlotName[ french ] = "Numéro de page"; + SlotName[ spanish ] = "Número de página"; + SlotName[ italian ] = "Numeri di pagina"; + SlotName[ danish ] = "Sidetal"; + SlotName[ swedish ] = "Sidnummer"; + SlotName[ polish ] = "Numer strony"; + SlotName[ portuguese_brazilian ] = "ToolsPageNumber"; + SlotName[ japanese ] = "Íß°¼Þ”Ô�†"; + SlotName[ chinese_simplified ] = "Ò³Âë"; + SlotName[ chinese_traditional ] = "­¶½X"; + SlotName[ arabic ] = "ÑÞã ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Paginanummer"; + SlotName[ chinese_simplified ] = "Ò³Âë"; + SlotName[ greek ] = "Áñéèìüò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ¹øÈ£"; + SlotName[ turkish ] = "Sayfa numarasý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHAR_LEFT +{ + SlotName = "Zeichen links"; + SlotName [ english ] = "Zeichen links"; + SlotName[ english_us ] = "To Character Left"; + SlotName[ portuguese ] = "Carácter à esquerda"; + SlotName[ russian ] = "Çíàê ñëåâà"; + SlotName[ dutch ] = "Teken links"; + SlotName[ french ] = "Caractère à gauche"; + SlotName[ spanish ] = "Carácter a la izquierda"; + SlotName[ italian ] = "Carattere sinistro"; + SlotName[ danish ] = "Tegn til venstre"; + SlotName[ swedish ] = "Tecken till vänster"; + SlotName[ polish ] = "Znak z lewej strony"; + SlotName[ portuguese_brazilian ] = "GoLeft"; + SlotName[ japanese ] = "•¶Žš‚Ì�¶"; + SlotName[ chinese_simplified ] = "תµ½×Ö·û×ó¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¦r¤¸­ººÝ"; + SlotName[ arabic ] = "ÍÑÝ ááÎáÝ"; + SlotName[ dutch ] = "Teken links"; + SlotName[ chinese_simplified ] = "תµ½×Ö·û×ó¶Ë"; + SlotName[ greek ] = "×áñáêôÞñáò áñéóôåñÜ"; + SlotName[ korean ] = "¹®ÀÚ ¿ÞÂÊÀ¸·Î"; + SlotName[ turkish ] = "Soldaki karakter"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHAR_LEFT_SEL +{ + SlotName = "Zeichen links selektieren"; + SlotName [ english ] = "Zeichen links selektieren"; + SlotName[ english_us ] = "Select Character Left"; + SlotName[ portuguese ] = "Seleccionar carácter à esquerda"; + SlotName[ russian ] = "Âûäåëèòü çíàê ñëåâà"; + SlotName[ dutch ] = "Tekens links selecteren"; + SlotName[ french ] = "Sélect. caratère à gauche"; + SlotName[ spanish ] = "Seleccionar carácter a la izquierda"; + SlotName[ italian ] = "Seleziona carattere sinistro"; + SlotName[ danish ] = "Marker tegn til venstre"; + SlotName[ swedish ] = "Markera tecken till vänster"; + SlotName[ polish ] = "Zaznacz znak z lewej strony"; + SlotName[ portuguese_brazilian ] = "CharLeftMark"; + SlotName[ japanese ] = "•¶Žš‚Ì�¶‚ð‘I‘ð"; + SlotName[ chinese_simplified ] = "×óÏòÑ¡Ôñ×Ö·û"; + SlotName[ chinese_traditional ] = "¥ª¦V¿ï¾Ü¦r¤¸"; + SlotName[ arabic ] = "ÊÍÏíÏ ÇáÍÑÝ ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Tekens links selecteren"; + SlotName[ chinese_simplified ] = "×óÏòÑ¡Ôñ×Ö·û"; + SlotName[ greek ] = "ÅðéëïãÞ áñéóôåñïý ÷áñáêôÞñá"; + SlotName[ korean ] = "¹®ÀÚ ¿ÞÂÊ ¼±ÅÃ"; + SlotName[ turkish ] = "Soldaki karakteri seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHAR_RIGHT +{ + SlotName = "Zeichen rechts"; + SlotName [ english ] = "Zeichen rechts"; + SlotName[ english_us ] = "Go Right"; + SlotName[ portuguese ] = "Carácter à direita"; + SlotName[ russian ] = "Çíàê ñïðàâà"; + SlotName[ dutch ] = "Teken rechts"; + SlotName[ french ] = "Caractère à droite"; + SlotName[ spanish ] = "Carácter a la derecha"; + SlotName[ italian ] = "Carattere a destra"; + SlotName[ danish ] = "Tegn til højre"; + SlotName[ swedish ] = "Tecken till höger"; + SlotName[ polish ] = "Znaki z prawej strony"; + SlotName[ portuguese_brazilian ] = "GoRight"; + SlotName[ japanese ] = "•¶Žš‚̉E"; + SlotName[ chinese_simplified ] = "×Ö·ûÏòÓÒ"; + SlotName[ chinese_traditional ] = "¦r¤¸¦V¥k"; + SlotName[ arabic ] = "ÃÍÑÝ Åáì Çáíãíä"; + SlotName[ dutch ] = "Teken rechts"; + SlotName[ chinese_simplified ] = "×Ö·ûÏòÓÒ"; + SlotName[ greek ] = "×áñáêôÞñáò äåîéÜ"; + SlotName[ korean ] = "¿À¸¥ÂÊÀ¸·Î °¡±â"; + SlotName[ turkish ] = "Saðdaki karakter"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CHAR_RIGHT_SEL +{ + SlotName = "Zeichen rechts selektieren"; + SlotName [ english ] = "Zeichen rechts selektieren"; + SlotName[ english_us ] = "Select Character Right"; + SlotName[ portuguese ] = "Seleccionar carácter à direita"; + SlotName[ russian ] = "Âûäåëèòü çíàê ñïðàâà"; + SlotName[ dutch ] = "Teken rechts selecteren"; + SlotName[ french ] = "Sélect. caractère à droite"; + SlotName[ spanish ] = "Seleccionar carácter a la derecha"; + SlotName[ italian ] = "Seleziona carattere destro"; + SlotName[ danish ] = "Marker tegn til højre"; + SlotName[ swedish ] = "Markera tecken till höger"; + SlotName[ polish ] = "Zaznacz znak z prawej strony"; + SlotName[ portuguese_brazilian ] = "CharRightMark"; + SlotName[ japanese ] = "•¶Žš‚̉E‚ð‘I‘ð"; + SlotName[ chinese_simplified ] = "ÓÒÏòÑ¡Ôñ×Ö·û"; + SlotName[ chinese_traditional ] = "¦V¥k¿ï¾Ü¦r¤¸"; + SlotName[ arabic ] = "ÊÍÏíÏ ÇáÍÑÝ ÇáÊÇáí"; + SlotName[ dutch ] = "Teken rechts selecteren"; + SlotName[ chinese_simplified ] = "ÓÒÏòÑ¡Ôñ×Ö·û"; + SlotName[ greek ] = "ÅðéëïãÞ äåîéïý ÷áñáêôÞñá"; + SlotName[ korean ] = "¹®ÀÚ ¿À¸¥ÂÊ ¼±ÅÃ"; + SlotName[ turkish ] = "Saðdaki karakteri seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CNTNT_TO_NEXT_FRAME +{ + SlotName = "Zum nächsten Rahmen"; + SlotName [ english ] = "Zum nächsten Rahmen"; + SlotName[ english_us ] = "To Next Frame"; + SlotName[ portuguese ] = "Moldura seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåé ðàìêè"; + SlotName[ dutch ] = "Naar het volgende kader"; + SlotName[ french ] = "Cadre suivant"; + SlotName[ spanish ] = "Ir al marco siguiente"; + SlotName[ italian ] = "Alla cornice successiva"; + SlotName[ danish ] = "Til næste ramme"; + SlotName[ swedish ] = "Till nästa ram"; + SlotName[ polish ] = "Do nastêpnej ramki"; + SlotName[ portuguese_brazilian ] = "ContentsToNextFrame"; + SlotName[ japanese ] = "ŽŸ‚̘g‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¿ò"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó®Ø"; + SlotName[ arabic ] = "Åáì ÇáÅØÇÑ ÇáÊÇáí"; + SlotName[ dutch ] = "Naar het volgende kader"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¿ò"; + SlotName[ greek ] = "Åðüìåíï ðëáßóéï"; + SlotName[ korean ] = "´ÙÀº ÇÁ·¹ÀÓÀ¸·Î"; + SlotName[ turkish ] = "Sonraki çerçeveye git"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_CONVERT_TEXT_TABLE +{ + SlotName = "Konvertiere Tabelle/Text"; + SlotName [ english ] = "Konvertiere Tabelle/Text"; + SlotName[ english_us ] = "Convert Table/Text"; + SlotName[ portuguese ] = "Converter Tabela/Texto"; + SlotName[ russian ] = "Ïðåîáðàçîâàòü òàáëèöó â òåêñò"; + SlotName[ dutch ] = "Converteer tabel/tekst"; + SlotName[ french ] = "Conversion tableau/texte"; + SlotName[ spanish ] = "ConvertirTabla/Texto"; + SlotName[ italian ] = "Converti tabella/testo"; + SlotName[ danish ] = "Konverter tabel/tekst"; + SlotName[ swedish ] = "Konvertera tabell/text"; + SlotName[ polish ] = "Konwertuj tabelê/tekst"; + SlotName[ portuguese_brazilian ] = "ConvertTableText"; + SlotName[ japanese ] = "•\\/÷½Ä‚̕ϊ·"; + SlotName[ chinese_simplified ] = "ת»» ±í¸ñ/Îı¾"; + SlotName[ chinese_traditional ] = "Âà´«¦¨ªí®æ/¤å¦r"; + SlotName[ arabic ] = "ÊÍæíá ÌÏæá/äÕ"; + SlotName[ dutch ] = "Converteer tabel/tekst"; + SlotName[ chinese_simplified ] = "ת»» ±í¸ñ/Îı¾"; + SlotName[ greek ] = "ÌåôáôñïðÞ ðßíáêá/êåßìåíï"; + SlotName[ korean ] = "Ç¥/ÅØ½ºÆ® º¯È¯"; + SlotName[ turkish ] = "Tablo/metin dönüþtür"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DEC_INDENT_OFFSET +{ + SlotName = "Einzug um Betrag vermindern"; + SlotName [ english ] = "Einzug um Betrag vermindern"; + SlotName[ english_us ] = "Decrement Indent Value"; + SlotName[ portuguese ] = "Diminuir avanço de texto"; + SlotName[ russian ] = "Óìåíüøèòü îòñóï ñîãëàñíî çíà÷åíèÿ"; + SlotName[ dutch ] = "Inspringing om getal verkleinen"; + SlotName[ french ] = "Diminuer le retrait de"; + SlotName[ spanish ] = "Disminuir sangría en"; + SlotName[ italian ] = "Riduci rientro valore"; + SlotName[ danish ] = "Formindsk indrykning om værdi"; + SlotName[ swedish ] = "Minska indrag med enhet"; + SlotName[ polish ] = "Zmniejsz wciêcie o wartoœæ"; + SlotName[ portuguese_brazilian ] = "DecrementIndentValue"; + SlotName[ japanese ] = "²ÝÃÞÝĂ̒l‚ðŒ¸‚ç‚·"; + SlotName[ chinese_simplified ] = "¼õÉÙËõ½øÖµ"; + SlotName[ chinese_traditional ] = "´î¤ÖÁY±Æ­È"; + SlotName[ arabic ] = "ÅäÞÇÕ ãÞÏÇÑ ÇáÅÒÇÍÉ"; + SlotName[ dutch ] = "Inspringing om getal verkleinen"; + SlotName[ chinese_simplified ] = "¼õÉÙËõ½øÖµ"; + SlotName[ greek ] = "Ìåßùóç åóï÷Þò êáôÜ ôçí ôéìÞ"; + SlotName[ korean ] = "µé¿©¾²±â °ª °¨¼Ò"; + SlotName[ turkish ] = "Girintiyi küçült"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_BACK_LINE +{ + SlotName = "Bis Zeilenanfang löschen"; + SlotName [ english ] = "Bis Zeilenanfang löschen"; + SlotName[ english_us ] = "Delete to Start of Line"; + SlotName[ portuguese ] = "Eliminar até ao início da linha"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà ñòðîêè"; + SlotName[ dutch ] = "Tot regelbegin wissen"; + SlotName[ french ] = "Supprimer jusq'au début de la ligne"; + SlotName[ spanish ] = "Eliminar hasta el comienzo de la línea"; + SlotName[ italian ] = "Cancella fino all'inzio della riga"; + SlotName[ danish ] = "Slet til begyndelsen af rækken"; + SlotName[ swedish ] = "Radera till början av rad"; + SlotName[ polish ] = "Usuñ do pocz¹tku wiersza"; + SlotName[ portuguese_brazilian ] = "DelToStartOfLine"; + SlotName[ japanese ] = "�s“ª‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁÐÐÊ×"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¦æ­º"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì ÈÏÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Tot regelbegin wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁÐÐÊ×"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôçí áñ÷Þ ôçò ãñáììÞò"; + SlotName[ korean ] = "ÁÙ ½ÃÀÛ¿¡ »èÁ¦"; + SlotName[ turkish ] = "Satýr baþýna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_BACK_PARA +{ + SlotName = "Bis Absatzanfang löschen"; + SlotName [ english ] = "Bis Absatzanfang löschen"; + SlotName[ english_us ] = "Delete to Start of Paragraph"; + SlotName[ portuguese ] = "Eliminar até ao início do parágrafo"; + SlotName[ russian ] = "Óäàëèòü äî íà÷àëà àáçàöà"; + SlotName[ dutch ] = "Tot aan begin alinea wissen"; + SlotName[ french ] = "Supprimer jusqu'au début du paragraphe"; + SlotName[ spanish ] = "Eliminar hasta el comienzo del párrafo"; + SlotName[ italian ] = "Cancella fino alla fine del paragrafo"; + SlotName[ danish ] = "Slet til begyndelsen af afsnittet"; + SlotName[ swedish ] = "Radera till början av stycke"; + SlotName[ polish ] = "Usuñ do pocz¹tku akapitu"; + SlotName[ portuguese_brazilian ] = "DelToStartOfParagraph"; + SlotName[ japanese ] = "’i—Ž“ª‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¶ÎÂäÊ×¶Ë"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¬q¸¨­ººÝ"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì ÈÏÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Tot aan begin alinea wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¶ÎÂäÊ×¶Ë"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôçí áñ÷Þ ôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ôÀÇ ½ÃÀÛ¿¡ »èÁ¦"; + SlotName[ turkish ] = "Paragraf baþýna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_BACK_SENT +{ + SlotName = "Bis Satzanfang löschen"; + SlotName [ english ] = "Bis Satzanfang löschen"; + SlotName[ english_us ] = "Delete to Start of Sentence"; + SlotName[ portuguese ] = "Eliminar até ao início da frase"; + SlotName[ russian ] = "Óäàëèòü äî íà÷àëà ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan begin van de zin wissen"; + SlotName[ french ] = "Suppr. jusqu'au début de la page"; + SlotName[ spanish ] = "Eliminar hasta el comienzo de la frase"; + SlotName[ italian ] = "Cancella fino all'inizio della frase"; + SlotName[ danish ] = "Slet til begyndelsen af sætningen"; + SlotName[ swedish ] = "Radera till början av meningen"; + SlotName[ polish ] = "Usuñ do pocz¹tku zdania"; + SlotName[ portuguese_brazilian ] = "DelToStartOfSentence"; + SlotName[ japanese ] = "•¶“ª‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¾äÊ×"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¬q¸¨­ººÝ"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì ÈÏÇíÉ ÇáÌãáÉ"; + SlotName[ dutch ] = "Tot aan begin van de zin wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¾äÊ×"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôçí áñ÷Þ ôçò ðñüôáóçò"; + SlotName[ korean ] = "¹®ÀåÀÇ ½ÃÀÛ¿¡ »èÁ¦"; + SlotName[ turkish ] = "Cümle baþýna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_BACK_WORD +{ + SlotName = "Bis Wortanfang löschen"; + SlotName [ english ] = "Bis Wortanfang löschen"; + SlotName[ english_us ] = "Delete to Start of Word"; + SlotName[ portuguese ] = "Eliminar até ao início da palavra"; + SlotName[ russian ] = "Óäàëèòü äî íà÷àëà ñëîâà"; + SlotName[ dutch ] = "Tot aan woordbegin wissen"; + SlotName[ french ] = "Supprimer jusqu'au début du mot"; + SlotName[ spanish ] = "Eliminar hasta el comienzo de la palabra"; + SlotName[ italian ] = "Cancella fino all'inizio della parola"; + SlotName[ danish ] = "Slet til begyndelsen af ordet"; + SlotName[ swedish ] = "Radera till början av ord"; + SlotName[ polish ] = "Usuñ do pocz¹tku s³owa"; + SlotName[ portuguese_brazilian ] = "DelToStartOfWord"; + SlotName[ japanese ] = "Œê“ª‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ×ÖÊ×"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¦r­º"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì ÈÏÇíÉ ÇáßáãÉ"; + SlotName[ dutch ] = "Tot aan woordbegin wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ×ÖÊ×"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôçí áñ÷Þ ôçò ëÝîçò"; + SlotName[ korean ] = "´Ü¾îÀÇ ½ÃÀÛ¿¡ »èÁ¦"; + SlotName[ turkish ] = "Sözcük baþýna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_LINE +{ + SlotName = "Bis Zeilenende löschen"; + SlotName [ english ] = "Bis Zeilenende löschen"; + SlotName[ english_us ] = "Delete to End of Line"; + SlotName[ portuguese ] = "Eliminar até ao fim da linha"; + SlotName[ russian ] = "Óäàëèòü äî êîíöà ñòðîêè"; + SlotName[ dutch ] = "Tot regeleinde wissen"; + SlotName[ french ] = "Suppr. jusqu'à la fin de la ligne"; + SlotName[ spanish ] = "Eliminar hasta el final de la línea"; + SlotName[ italian ] = "Cancella fino a fine riga"; + SlotName[ danish ] = "Slet til slutningen af rækken"; + SlotName[ swedish ] = "Radera till radslut"; + SlotName[ polish ] = "Usuñ do koñca wiersza"; + SlotName[ portuguese_brazilian ] = "DelToEndOfLine"; + SlotName[ japanese ] = "�s––‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁÐÐÄ©"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¦æ¥½"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì äåÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Tot regeleinde wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁÐÐÄ©"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôï ôÝëïò ôçò ãñáììÞò"; + SlotName[ korean ] = "ÁÙÀÇ ³¡¿¡ »èÁ¦"; + SlotName[ turkish ] = "Satýr sonuna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_PARA +{ + SlotName = "Bis Absatzende löschen"; + SlotName [ english ] = "Bis Absatzende löschen"; + SlotName[ english_us ] = "Delete to End of Paragraph"; + SlotName[ portuguese ] = "Eliminar até ao fim do parágrafo"; + SlotName[ russian ] = "Óäàëèòü äî êîíöà àáçàöà"; + SlotName[ dutch ] = "Tot aan einde alinea wissen"; + SlotName[ french ] = "Suppr. jusqu'à la fin du paragraphe"; + SlotName[ spanish ] = "Eliminar hasta el final del párrafo"; + SlotName[ italian ] = "Cancella fino alla fine del paragrafo"; + SlotName[ danish ] = "Slet til slutningen af afsnittet"; + SlotName[ swedish ] = "Radera till slutet av stycket"; + SlotName[ polish ] = "Usuñ do koñca akapitu"; + SlotName[ portuguese_brazilian ] = "DelToEndOfParagraph"; + SlotName[ japanese ] = "’i—Ž––‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¶ÎÂäβ¶Ë"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¬q¸¨§ÀºÝ"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì äåÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Tot aan einde alinea wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¶ÎÂäβ¶Ë"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôï ôÝëïò ôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ôÀÇ ³¡¿¡ »èÁ¦"; + SlotName[ turkish ] = "Paragraf sonuna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_SENT +{ + SlotName = "Bis Satzende löschen"; + SlotName [ english ] = "Bis Satzende löschen"; + SlotName[ english_us ] = "Delete to End of Sentence"; + SlotName[ portuguese ] = "Eliminar até ao fim da frase"; + SlotName[ russian ] = "Óäàëèòü äî êîíöà ïðåäëîæåíèÿ"; + SlotName[ dutch ] = "Tot aan einde zin wissen"; + SlotName[ french ] = "Supprimer jusqu'à la fin de la phrase"; + SlotName[ spanish ] = "Eliminar hasta el final de la frase"; + SlotName[ italian ] = "Cancella fino alla fine della riga"; + SlotName[ danish ] = "Slet til slutningen af sætningen"; + SlotName[ swedish ] = "Radera till slutet av mening"; + SlotName[ polish ] = "Usuñ do koñca zdania"; + SlotName[ portuguese_brazilian ] = "DelToEndOfSentence"; + SlotName[ japanese ] = "•¶––‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¾äÄ©"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¥y¥½"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì äåÇíÉ ÇáÌãáÉ"; + SlotName[ dutch ] = "Tot aan einde zin wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ¾äÄ©"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôï ôÝëïò ôçò ðñüôáóçò"; + SlotName[ korean ] = "¹®ÀåÀÇ ³¡¿¡ »èÁ¦"; + SlotName[ turkish ] = "Cümle sonuna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_WHOLE_LINE +{ + SlotName = "Zeile löschen"; + SlotName [ english ] = "Zeile löschen"; + SlotName[ english_us ] = "Delete Row"; + SlotName[ portuguese ] = "Eliminar linha"; + SlotName[ russian ] = "Óäàëèòü ñòðîêó"; + SlotName[ dutch ] = "Rij wissen"; + SlotName[ french ] = "Supprimer la ligne"; + SlotName[ spanish ] = "Eliminar línea"; + SlotName[ italian ] = "Elimina riga"; + SlotName[ danish ] = "Slet rækken"; + SlotName[ swedish ] = "Radera rad"; + SlotName[ polish ] = "Usuñ wiersz"; + SlotName[ portuguese_brazilian ] = "DeleteLine"; + SlotName[ japanese ] = "�s‚Ì�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÐÐ"; + SlotName[ chinese_traditional ] = "§R°£¦æ"; + SlotName[ arabic ] = "ÍÐÝ ÕÝ"; + SlotName[ dutch ] = "Rij wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÐÐ"; + SlotName[ greek ] = "ÄéáãñáöÞ ãñáììÞò"; + SlotName[ korean ] = "¿­ »èÁ¦"; + SlotName[ turkish ] = "Satýrý sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DELETE_WORD +{ + SlotName = "Bis Wortende löschen"; + SlotName [ english ] = "Bis Wortende löschen"; + SlotName[ english_us ] = "Delete to End of Word"; + SlotName[ portuguese ] = "Eliminar até ao fim da palavra"; + SlotName[ russian ] = "Óäàëèòü äî êîíöà ñëîâà"; + SlotName[ dutch ] = "Tot aan woordeinde wissen"; + SlotName[ french ] = "Supprimer jusqu'à la fin du mot"; + SlotName[ spanish ] = "Eliminar hasta el final de la palabra"; + SlotName[ italian ] = "Cancella fino alla fine della pagina"; + SlotName[ danish ] = "Slet til slutningen af ordet"; + SlotName[ swedish ] = "Radera till slutet av ord"; + SlotName[ polish ] = "Usuñ do koñca s³owa"; + SlotName[ portuguese_brazilian ] = "DelToEndOfWord"; + SlotName[ japanese ] = "Œê––‚Ü‚Å�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ×ÖÄ©"; + SlotName[ chinese_traditional ] = "§R°£¦Ü¦r¥½"; + SlotName[ arabic ] = "ÍÐÝ ÍÊì äåÇíÉ ÇáßáãÉ"; + SlotName[ dutch ] = "Tot aan woordeinde wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÖÁ×ÖÄ©"; + SlotName[ greek ] = "ÄéáãñáöÞ åþò ôï ôÝëïò ôçò ëÝîåùò"; + SlotName[ korean ] = "´Ü¾îÀÇ ³¡¿¡ »èÁ¦"; + SlotName[ turkish ] = "Sözcük sonuna kadar sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DRAW_WRAP_DLG +{ + SlotName = "Textumlauf"; + SlotName [ english ] = "Textumlauf"; + SlotName[ english_us ] = "Text Wrap"; + SlotName[ portuguese ] = "Ajustar texto"; + SlotName[ russian ] = "Îáòåêàíèå òåêñòîì"; + SlotName[ dutch ] = "Tekstomloop"; + SlotName[ french ] = "Habillage"; + SlotName[ spanish ] = "Ajuste de texto"; + SlotName[ italian ] = "Scorrimento testo"; + SlotName[ danish ] = "Tekstombrydning"; + SlotName[ swedish ] = "Textanpassning"; + SlotName[ polish ] = "Obieg tekstu"; + SlotName[ portuguese_brazilian ] = "FormatWrap"; + SlotName[ japanese ] = "÷½Ä‚Ì�Ü‚è•Ô‚µ"; + SlotName[ chinese_simplified ] = "ÎÄ×Ö»·ÈÆ"; + SlotName[ chinese_traditional ] = "´«¦æ"; + SlotName[ arabic ] = "ÇáÊÝÇÝ ÇáäÕ"; + SlotName[ dutch ] = "Tekstomloop"; + SlotName[ chinese_simplified ] = "ÎÄ×Ö»·ÈÆ"; + SlotName[ greek ] = "Áíáäßðëùóç êåéìÝíïõ"; + SlotName[ korean ] = "ÅØ½ºÆ® ¼øÈ¯"; + SlotName[ turkish ] = "Metin daðýlýmý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_DRAWTEXT_ATTR_DLG +{ + SlotName = "Textattribute"; + SlotName [ english ] = "Textattribute"; + SlotName[ english_us ] = "Text Attributes"; + SlotName[ portuguese ] = "Atributos de texto"; + SlotName[ russian ] = "Òåêñòîâûå àòðèáóòû"; + SlotName[ dutch ] = "Tekstattributen"; + SlotName[ french ] = "Attributs de texte"; + SlotName[ spanish ] = "Atributos de texto"; + SlotName[ italian ] = "Attributi di testo"; + SlotName[ danish ] = "Tekstattributter"; + SlotName[ swedish ] = "Textattribut"; + SlotName[ polish ] = "Atrybuty tekstu"; + SlotName[ portuguese_brazilian ] = "FormatText"; + SlotName[ japanese ] = "÷½Ä‚Ì‘®�«"; + SlotName[ chinese_simplified ] = "ÎÄ×ÖÊôÐÔ"; + SlotName[ chinese_traditional ] = "¤å¦rÄÝ©Ê"; + SlotName[ arabic ] = "ÓãÇÊ ÇáäÕ"; + SlotName[ dutch ] = "Tekstattributen"; + SlotName[ chinese_simplified ] = "ÎÄ×ÖÊôÐÔ"; + SlotName[ greek ] = "×áñáêôçñéóôéêÜ êåéìÝíïõ"; + SlotName[ korean ] = "ÅØ½ºÆ® ¼Ó¼º"; + SlotName[ turkish ] = "Metin öznitelikleri"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_FIELD +{ + SlotName = "Feldbefehl"; + SlotName [ english ] = "Feldbefehl"; + SlotName[ english_us ] = "Fields"; + SlotName[ portuguese ] = "Campos"; + SlotName[ russian ] = "Ïîëå"; + SlotName[ dutch ] = "Veldopdracht"; + SlotName[ french ] = "Instruction de champ"; + SlotName[ spanish ] = "Código de campo"; + SlotName[ italian ] = "Comando di campo"; + SlotName[ danish ] = "Felt"; + SlotName[ swedish ] = "Fältkommando"; + SlotName[ polish ] = "Pola"; + SlotName[ portuguese_brazilian ] = "EditFieldCommand"; + SlotName[ japanese ] = "̨°ÙÄÞ"; + SlotName[ chinese_simplified ] = "×Ö¶ÎÖ¸Áî"; + SlotName[ chinese_traditional ] = "Äæ¦ì«ü¥O"; + SlotName[ arabic ] = "ÍÞá"; + SlotName[ dutch ] = "Veldopdracht"; + SlotName[ chinese_simplified ] = "×Ö¶ÎÖ¸Áî"; + SlotName[ greek ] = "ÅíôïëÞ ðåäßïõ"; + SlotName[ korean ] = "Çʵå"; + SlotName[ turkish ] = "Alan öðesi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_FOOTNOTE +{ + SlotName = "Fußnote"; + SlotName [ english ] = "Fußnote"; + SlotName[ english_us ] = "Footnote"; + SlotName[ portuguese ] = "Nota de rodapé"; + SlotName[ russian ] = "Ñíîñêà"; + SlotName[ dutch ] = "Voetnoot"; + SlotName[ french ] = "Note de bas de page"; + SlotName[ spanish ] = "Nota al pie"; + SlotName[ italian ] = "Nota a piè pagina"; + SlotName[ danish ] = "Fodnote"; + SlotName[ swedish ] = "Fotnot"; + SlotName[ polish ] = "Przypis dolny"; + SlotName[ portuguese_brazilian ] = "EditFootnotes"; + SlotName[ japanese ] = "‹r’�"; + SlotName[ chinese_simplified ] = "×¢½Å"; + SlotName[ chinese_traditional ] = "µù¸}"; + SlotName[ arabic ] = "ÍÇÔíÉ ÓÝáíÉ"; + SlotName[ dutch ] = "Voetnoot"; + SlotName[ chinese_simplified ] = "×¢½Å"; + SlotName[ greek ] = "Õðïóçìåßùóç"; + SlotName[ korean ] = "¹Ù´Ú±Û"; + SlotName[ turkish ] = "Dipnot"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_FORMULA +{ + SlotName = "Formel einfügen"; + SlotName [ english ] = "Formel einfügen"; + SlotName[ english_us ] = "Insert Formula"; + SlotName[ portuguese ] = "Inserir fórmula"; + SlotName[ russian ] = "Âñòàâèòü ôîðìóëó"; + SlotName[ dutch ] = "Formule invoegen"; + SlotName[ french ] = "Insérer une formule"; + SlotName[ spanish ] = "Insertar fórmula"; + SlotName[ italian ] = "Inserisci formula"; + SlotName[ danish ] = "Indsæt formel"; + SlotName[ swedish ] = "Infoga formel"; + SlotName[ polish ] = "Wstaw formu³ê"; + SlotName[ portuguese_brazilian ] = "InsertFormula"; + SlotName[ japanese ] = "�”Ž®‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈ빫ʽ"; + SlotName[ chinese_traditional ] = "´¡¤J¤½¦¡"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÕíÛÉ"; + SlotName[ dutch ] = "Formule invoegen"; + SlotName[ chinese_simplified ] = "²åÈ빫ʽ"; + SlotName[ greek ] = "ÅéóáãùãÞ ôýðïõ"; + SlotName[ korean ] = "¼ö½Ä »ðÀÔ"; + SlotName[ turkish ] = "Formül ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_IDX_ENTRY_DLG +{ + SlotName = "Verzeichniseintrag"; + SlotName [ english ] = "Verzeichniseintrag"; + SlotName[ english_us ] = "Index Entry"; + SlotName[ portuguese ] = "Registo de índice"; + SlotName[ russian ] = "Ýëåìåíò óêàçàòåëÿ"; + SlotName[ dutch ] = "Indexitem"; + SlotName[ french ] = "Entrée d'index"; + SlotName[ spanish ] = "Entrada del índice"; + SlotName[ italian ] = "Voce di indice"; + SlotName[ danish ] = "Indekselement"; + SlotName[ swedish ] = "Förteckningspost"; + SlotName[ polish ] = "Wpis w indeksie"; + SlotName[ portuguese_brazilian ] = "EditIndexEntry"; + SlotName[ japanese ] = "�õˆø�€–Ú"; + SlotName[ chinese_simplified ] = "Ŀ¼ÌõÄ¿"; + SlotName[ chinese_traditional ] = "¥Ø¿ý±ø¥Ø"; + SlotName[ arabic ] = "ÅÏÎÇá ÝåÑÓí"; + SlotName[ dutch ] = "Indexitem"; + SlotName[ chinese_simplified ] = "Ŀ¼ÌõÄ¿"; + SlotName[ greek ] = "Êáôá÷þñéóç åõñåôçñßïõ"; + SlotName[ korean ] = "»öÀÎ Ç׸ñ"; + SlotName[ turkish ] = "Dizin giriþi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_LINK_DLG +{ + SlotName = "Verknüpfungen"; + SlotName [ english ] = "Verknüpfungen"; + SlotName[ english_us ] = "Links"; + SlotName[ portuguese ] = "Ligações"; + SlotName[ russian ] = "Ññûëêè"; + SlotName[ dutch ] = "Koppelingen"; + SlotName[ french ] = "Liens"; + SlotName[ spanish ] = "Vínculos"; + SlotName[ italian ] = "Collegamenti"; + SlotName[ danish ] = "Kæder"; + SlotName[ swedish ] = "Länkar"; + SlotName[ polish ] = "£¹cza"; + SlotName[ portuguese_brazilian ] = "EditLink"; + SlotName[ japanese ] = "ØÝ¸‚Ì�Ý’è"; + SlotName[ chinese_simplified ] = "Á´½Ó"; + SlotName[ chinese_traditional ] = "±¶®|"; + SlotName[ arabic ] = "ãæÇÞÚ ãÑÊÈØÉ"; + SlotName[ dutch ] = "Koppelingen"; + SlotName[ chinese_simplified ] = "Á´½Ó"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÓõíäÝóåéò"; + SlotName[ korean ] = "¿¬°á"; + SlotName[ turkish ] = "Baðlantýlar"; +}; +SfxSlotInfo FN_EDIT_REGION +{ + SlotName = "Bereiche"; + SlotName [ english ] = "Bereiche"; + SlotName[ english_us ] = "Sections"; + SlotName[ portuguese ] = "Categorias"; + SlotName[ russian ] = "Ðàçäåëû"; + SlotName[ dutch ] = "Bereiken"; + SlotName[ french ] = "Sections"; + SlotName[ spanish ] = "Areas"; + SlotName[ italian ] = "Sezioni"; + SlotName[ danish ] = "Områder"; + SlotName[ swedish ] = "Områden"; + SlotName[ polish ] = "Sekcje"; + SlotName[ portuguese_brazilian ] = "EditSection"; + SlotName[ japanese ] = "”͈Í"; + SlotName[ chinese_simplified ] = "ÇøÓò"; + SlotName[ chinese_traditional ] = "°Ï°ì"; + SlotName[ arabic ] = "äØÇÞÇÊ"; + SlotName[ dutch ] = "Bereiken"; + SlotName[ chinese_simplified ] = "ÇøÓò"; + SlotName[ greek ] = "Åíüôçôåò"; + SlotName[ korean ] = "±¸¿ª"; + SlotName[ turkish ] = "Bölüm"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_DOC_DIRECT +{ + SlotName = "Direkt zum Dokumentende"; + SlotName [ english ] = "Direkt zum Dokumentende"; + SlotName[ english_us ] = "Directly to Document End"; + SlotName[ portuguese ] = "Ir para fim do documento"; + SlotName[ russian ] = "Íåïîñðåäñòâåííî äî êîíöà äîêóìåíòà"; + SlotName[ dutch ] = "Direct naar documenteinde"; + SlotName[ french ] = "À la fin du document"; + SlotName[ spanish ] = "Final del documento"; + SlotName[ italian ] = "Direttamente alla fine del documento"; + SlotName[ danish ] = "Direkte til dokumentets slutning"; + SlotName[ swedish ] = "Direkt till slutet av dokumentet"; + SlotName[ polish ] = "Bezpoœrednio na koniec dokumentu"; + SlotName[ portuguese_brazilian ] = "EndOfDoc"; + SlotName[ japanese ] = "’¼�Ú•¶�‘––‚Ö"; + SlotName[ chinese_simplified ] = "Ö±½Óתµ½ÎĵµÎ²¶Ë"; + SlotName[ chinese_traditional ] = "ª½±µÂà¨ì¤å¥ó§ÀºÝ"; + SlotName[ arabic ] = "ãÈÇÔÑÉ ÍÊì äåÇíÉ ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Direct naar documenteinde"; + SlotName[ chinese_simplified ] = "Ö±½Óתµ½ÎĵµÎ²¶Ë"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "Áð åõèåßáò ðñïò ôï ôÝëïò ôïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­³¡¿¡ ¹Ù·Î"; + SlotName[ turkish ] = "Doðrudan belge sonuna"; +}; +SfxSlotInfo FN_END_OF_COLUMN +{ + SlotName = "Zum Spaltenende"; + SlotName [ english ] = "Zum Spaltenende"; + SlotName[ english_us ] = "To Column End"; + SlotName[ portuguese ] = "Ir para fim da coluna"; + SlotName[ russian ] = "Äî êîíöà ñòîëáöà"; + SlotName[ dutch ] = "Naar kolomeinde"; + SlotName[ french ] = "Aller à la fin de la colonne"; + SlotName[ spanish ] = "Ir al final de la columna"; + SlotName[ italian ] = "Alla fine della colonna"; + SlotName[ danish ] = "Til kolonnens slutning"; + SlotName[ swedish ] = "Till slutet av kolumnen"; + SlotName[ polish ] = "Do koñca kolumny"; + SlotName[ portuguese_brazilian ] = "GoToEndOfColumn"; + SlotName[ japanese ] = "—ñ‚Ì––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÁÐβ"; + SlotName[ chinese_traditional ] = "Âà¨ìÄæ§À"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÚãæÏ"; + SlotName[ dutch ] = "Naar kolomeinde"; + SlotName[ chinese_simplified ] = "תµ½ÁÐβ"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôçò óôÞëçò"; + SlotName[ korean ] = "¿­ ³¡À¸·Î"; + SlotName[ turkish ] = "Sütun sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_DOCUMENT +{ + SlotName = "Zum Dokumentende"; + SlotName [ english ] = "Zum Dokumentende"; + SlotName[ english_us ] = "To Document End"; + SlotName[ portuguese ] = "Ir para fim do documento"; + SlotName[ russian ] = "Ê êîíöó äîêóìåíòà"; + SlotName[ dutch ] = "Naar einde document"; + SlotName[ french ] = "À la fin du document"; + SlotName[ spanish ] = "Ir al final del documento"; + SlotName[ italian ] = "Alla fine del documento"; + SlotName[ danish ] = "Til dokumentets slutning"; + SlotName[ swedish ] = "Till slutet av dokumentet"; + SlotName[ polish ] = "Do koñca dokumentu"; + SlotName[ portuguese_brazilian ] = "GoToEndOfDoc"; + SlotName[ japanese ] = "•¶�‘––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÎĵµÎ²¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤å¥ó§ÀºÝ"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Naar einde document"; + SlotName[ chinese_simplified ] = "תµ½ÎĵµÎ²¶Ë"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ ³¡À¸·Î"; + SlotName[ turkish ] = "Belge sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_DOCUMENT_SEL +{ + SlotName = "Bis Dokumentende selektieren"; + SlotName [ english ] = "Bis Dokumentende selektieren"; + SlotName[ english_us ] = "Select to Document End"; + SlotName[ portuguese ] = "Seleccionar até fim do documento"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà äîêóìåíòà"; + SlotName[ dutch ] = "Tot aan einde document selecteren"; + SlotName[ french ] = "Sélectionner jusqu'à la fin du document"; + SlotName[ spanish ] = "Seleccionar hasta el final del documento"; + SlotName[ italian ] = "Seleziona fino alla fine del documento"; + SlotName[ danish ] = "Marker til dokumentets slutning"; + SlotName[ swedish ] = "Markera till slutet av dokumentet"; + SlotName[ polish ] = "Zaznacz do koñca dokumentu"; + SlotName[ portuguese_brazilian ] = "EndOfDocumentSel"; + SlotName[ japanese ] = "•¶�‘––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÎĵµÎ²¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤å¥ó§ÀºÝ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Tot aan einde document selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÎĵµÎ²¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ ³¡¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Belge sonuna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_LINE +{ + SlotName = "Zum Zeilenende"; + SlotName [ english ] = "Zum Zeilenende"; + SlotName[ english_us ] = "To End of Line"; + SlotName[ portuguese ] = "Ir para fim da linha"; + SlotName[ russian ] = "Äî êîíöà ñòðîêè"; + SlotName[ dutch ] = "Naar einde regel"; + SlotName[ french ] = "A la fin de la ligne"; + SlotName[ spanish ] = "Ir al final de la línea"; + SlotName[ italian ] = "Alla fine della riga"; + SlotName[ danish ] = "Til rækkens slutning"; + SlotName[ swedish ] = "Till slutet av raden"; + SlotName[ polish ] = "Do koñca wiersza"; + SlotName[ portuguese_brazilian ] = "GoToEndOfLine"; + SlotName[ japanese ] = "�s––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÄ©"; + SlotName[ chinese_traditional ] = "Âà¨ì¦æ¥½"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Naar einde regel"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÄ©"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôçò ãñáììÞò"; + SlotName[ korean ] = "¼±ÀÇ ³¡À¸·Î"; + SlotName[ turkish ] = "Satýr sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_LINE_SEL +{ + SlotName = "Bis Zeilenende selektieren"; + SlotName [ english ] = "Bis Zeilenende selektieren"; + SlotName[ english_us ] = "Select to End of Line"; + SlotName[ portuguese ] = "Seleccionar até fim da linha"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà ñòðîêè"; + SlotName[ dutch ] = "Tot aan regeleinde selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la fin de la ligne"; + SlotName[ spanish ] = "Seleccionar hasta el final de la línea"; + SlotName[ italian ] = "Seleziona fino alla fine della linea"; + SlotName[ danish ] = "Marker til rækkens slutning"; + SlotName[ swedish ] = "Markera till slutet av raden"; + SlotName[ polish ] = "Zaznacz do koñca wiersza"; + SlotName[ portuguese_brazilian ] = "EndOfLineSel"; + SlotName[ japanese ] = "�s––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÐÐÄ©"; + SlotName[ chinese_traditional ] = "¦Ü¦æ¥½"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Tot aan regeleinde selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÐÐÄ©"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò ãñáììÞò"; + SlotName[ korean ] = "¼±Àdz¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Satýr sonuna kadara seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_NEXT_COLUMN +{ + SlotName = "Zum Ende nächster Spalte"; + SlotName [ english ] = "Zum Ende nächster Spalte"; + SlotName[ english_us ] = "To End of Next Column"; + SlotName[ portuguese ] = "Ir para fim da coluna seguinte"; + SlotName[ russian ] = "Äî êîíöà ñëåäóþùåãî ñòîëáöà"; + SlotName[ dutch ] = "Naar einde volgende kolom"; + SlotName[ french ] = "A la fin de la colonne suivante"; + SlotName[ spanish ] = "Ir al final de la columna siguiente"; + SlotName[ italian ] = "Alla fine della colonna successiva"; + SlotName[ danish ] = "TIl næste kolonnes slutning"; + SlotName[ swedish ] = "Till slutet av nästa kolumn"; + SlotName[ polish ] = "Do koñca nastêpnej kolumny"; + SlotName[ portuguese_brazilian ] = "GoToEndOfNextColumn"; + SlotName[ japanese ] = "ŽŸ‚Ì—ñ‚Ì––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÁеÄβ¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@Äæ§À"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÚãæÏ ÇáÊÇáí"; + SlotName[ dutch ] = "Naar einde volgende kolom"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÁеÄβ¶Ë"; + SlotName[ greek ] = "Ðñïò ôÝëïò åðüìåíçò óôÞëçò"; + SlotName[ korean ] = "´ÙÀ½ ¿­ÀÇ ³¡À¸·Î"; + SlotName[ turkish ] = "Sonraki sütun sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_NEXT_PAGE +{ + SlotName = "Zum Ende nächster Seite"; + SlotName [ english ] = "Zum Ende nächster Seite"; + SlotName[ english_us ] = "To End of Next Page"; + SlotName[ portuguese ] = "Ir para fim da página seguinte"; + SlotName[ russian ] = "Äî êîíöà ñëåäóþùåé ñòðàíèöû"; + SlotName[ dutch ] = "Naar einde volgende pagina"; + SlotName[ french ] = "À la fin de la page suivante"; + SlotName[ spanish ] = "Ir al final de la página siguiente"; + SlotName[ italian ] = "Alla fine dell pagina successiva"; + SlotName[ danish ] = "Til næste sides slutning"; + SlotName[ swedish ] = "Till slutet av nästa sida"; + SlotName[ polish ] = "Do koñca nastêpnej strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfNextPage"; + SlotName[ japanese ] = "ŽŸ‚ÌÍß°¼Þ––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂһҳβ¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­¶§À"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar einde volgende pagina"; + SlotName[ chinese_simplified ] = "תµ½ÏÂһҳβ¶Ë"; + SlotName[ greek ] = "Ðñïò ôÝëïò åðüìåíçò óåëßäáò"; + SlotName[ korean ] = "´ÙÀ½ ÆäÀÌÁöÀÇ ³¡À¸·Î"; + SlotName[ turkish ] = "Sonraki sayfanýn sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_NEXT_PAGE_SEL +{ + SlotName = "Bis Ende nächster Seite selektieren"; + SlotName [ english ] = "Bis Ende nächster Seite selektieren"; + SlotName[ english_us ] = "Select to End of Next Page"; + SlotName[ portuguese ] = "Seleccionar até fim da página seguinte"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà ñëåäóþùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan einde volgende pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la fin de la page suivante"; + SlotName[ spanish ] = "Seleccionar hasta el final de la página siguiente"; + SlotName[ italian ] = "Seleziona fino alla fine della pagina successiva"; + SlotName[ danish ] = "Marker til næste sides slutning"; + SlotName[ swedish ] = "Markera till slutet av nästa sida"; + SlotName[ polish ] = "Zaznacz do koñca nastêpnej strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfNextPageSel"; + SlotName[ japanese ] = "ŽŸ‚ÌÍß°¼Þ––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»Ò³µÄβ¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤U¤@­¶§À"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Tot aan einde volgende pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»Ò³µÄβ¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò åðüìåíçò óåëßäáò"; + SlotName[ korean ] = "´ÙÀ½ÆäÀÌÁö ³¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Sonraki sayfanýn sonuna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PAGE +{ + SlotName = "Zum Seitenende"; + SlotName [ english ] = "Zum Seitenende"; + SlotName[ english_us ] = "To Page End"; + SlotName[ portuguese ] = "Ir para fim da página"; + SlotName[ russian ] = "Äî êîíöà ñòðàíèöû"; + SlotName[ dutch ] = "Naar paginaeinde"; + SlotName[ french ] = "Aller jusqu'à la fin de la page"; + SlotName[ spanish ] = "Ir al final de la página"; + SlotName[ italian ] = "Alla fine della pagina"; + SlotName[ danish ] = "Til sidens slutning"; + SlotName[ swedish ] = "Till slutet av sidan"; + SlotName[ polish ] = "Do koñca strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPage"; + SlotName[ japanese ] = "Íß°¼Þ––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ò³ÃæÎ²¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì­¶§À"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Naar paginaeinde"; + SlotName[ chinese_simplified ] = "תµ½Ò³ÃæÎ²¶Ë"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôçò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁöÀÇ ³¡À¸·Î"; + SlotName[ turkish ] = "Sayfa sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PAGE_SEL +{ + SlotName = "Bis Seitenende selektieren"; + SlotName [ english ] = "Bis Seitenende selektieren"; + SlotName[ english_us ] = "Select to Page End"; + SlotName[ portuguese ] = "Seleccionar até fim da página"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan paginaeinde selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la fin de la page"; + SlotName[ spanish ] = "Seleccionar hasta el final de la página"; + SlotName[ italian ] = "Seleziona fino alla fine della pagina"; + SlotName[ danish ] = "Marker til sidens slutning"; + SlotName[ swedish ] = "Markera till slutet av sidan"; + SlotName[ polish ] = "Zaznacz do koñca strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPageSel"; + SlotName[ japanese ] = "Íß°¼Þ––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÒ³ÃæÎ²¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü­¶§À"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Tot aan paginaeinde selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÒ³ÃæÎ²¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ³¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Sayfa sonuna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PARA +{ + SlotName = "Zum Absatzende"; + SlotName [ english ] = "Zum Absatzende"; + SlotName[ english_us ] = "To Paragraph End"; + SlotName[ portuguese ] = "Para o fim do parágrafo"; + SlotName[ russian ] = "Äî êîíöà àáçàöà"; + SlotName[ dutch ] = "Naar einde alinea"; + SlotName[ french ] = "A la fin du paragraphe"; + SlotName[ spanish ] = "Ir al final del párrafo"; + SlotName[ italian ] = "Alla fine del paragrafo"; + SlotName[ danish ] = "Til afsnittets slutning"; + SlotName[ swedish ] = "Till slutet av stycket"; + SlotName[ polish ] = "Do koñca akapitu"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPara"; + SlotName[ japanese ] = "’i—Ž––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½¶ÎÂäβ¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¬q¸¨§ÀºÝ"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Naar einde alinea"; + SlotName[ chinese_simplified ] = "תµ½¶ÎÂäβ¶Ë"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ôÀÇ ³¡À¸·Î"; + SlotName[ turkish ] = "Paragraf sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PARA_SEL +{ + SlotName = "Bis Absatzende selektieren"; + SlotName [ english ] = "Bis Absatzende selektieren"; + SlotName[ english_us ] = "Select to Paragraph End"; + SlotName[ portuguese ] = "Seleccionar até fim do parágrafo"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà àáçàöà"; + SlotName[ dutch ] = "Tot aan einde alinea selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la fin du paragraphe"; + SlotName[ spanish ] = "Seleccionar hasta final del párrafo"; + SlotName[ italian ] = "Seleziona fino alla fine del paragrafo"; + SlotName[ danish ] = "Marker til afsnittets slutning"; + SlotName[ swedish ] = "Markera till slutet av stycket"; + SlotName[ polish ] = "Zaznacz do koñca akapitu"; + SlotName[ portuguese_brazilian ] = "EndOfParaSel"; + SlotName[ japanese ] = "’i—Ž––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ¶ÎÂäβ¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¬q¸¨§ÀºÝ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Tot aan einde alinea selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ¶ÎÂäβ¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ôÀÇ ³¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Paragraf sonuna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PREV_COLUMN +{ + SlotName = "Zur vorherigen Spalte"; + SlotName [ english ] = "Zur vorherigen Spalte"; + SlotName[ english_us ] = "To Previous Column"; + SlotName[ portuguese ] = "Ir para coluna anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî ñòîëáöà"; + SlotName[ dutch ] = "Naar vorige kolom"; + SlotName[ french ] = "A la colonne précédente"; + SlotName[ spanish ] = "Ir a la columna anterior"; + SlotName[ italian ] = "Alla colonna precedente"; + SlotName[ danish ] = "Til forrige kolonne"; + SlotName[ swedish ] = "Till föregående kolumn"; + SlotName[ polish ] = "Do poprzedniej kolumny"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPrevColumn"; + SlotName[ japanese ] = "‘O‚Ì—ñ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»ÁÐ"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@Äæ"; + SlotName[ arabic ] = "Åáì ÇáÚãæÏ ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorige kolom"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»ÁÐ"; + SlotName[ greek ] = "Ðñïò ôçí ðñïçãïýìåíç óôÞëç"; + SlotName[ korean ] = "ÀÌÀü ¿­À¸·Î"; + SlotName[ turkish ] = "Önceki sütuna"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PREV_PAGE +{ + SlotName = "Zum Ende vorheriger Seite"; + SlotName [ english ] = "Zum Ende vorheriger Seite"; + SlotName[ english_us ] = "To End of Previous Page"; + SlotName[ portuguese ] = "Ir para fim da página anterior"; + SlotName[ russian ] = "Äî êîíöà ïðåäûäóùåé ñòðàíèöû"; + SlotName[ dutch ] = "Naar einde vorige pagina"; + SlotName[ french ] = "Aller à la fin de la page précédente"; + SlotName[ spanish ] = "Ir al final de la página anterior"; + SlotName[ italian ] = "Alla fine della pagina precedente"; + SlotName[ danish ] = "Til forrige sides slutning"; + SlotName[ swedish ] = "Till slutet av föregående sidan"; + SlotName[ polish ] = "Do koñca poprzedniej strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPrevPage"; + SlotName[ japanese ] = "‘O‚ÌÍß°¼Þ––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏһҳβ¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­¶§À"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar einde vorige pagina"; + SlotName[ chinese_simplified ] = "תµ½ÉÏһҳβ¶Ë"; + SlotName[ greek ] = "Ðñïò ôÝëïò ðñïçãïýìåíçò óåëßäáò"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁö ³¡À¸·Î"; + SlotName[ turkish ] = "Öneki sayfanýn sonuna"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_OF_PREV_PAGE_SEL +{ + SlotName = "Bis Ende vorheriger Seite selektieren"; + SlotName [ english ] = "Bis Ende vorheriger Seite selektieren"; + SlotName[ english_us ] = "Select to End of Previous Page"; + SlotName[ portuguese ] = "Seleccionar até fim da página anterior"; + SlotName[ russian ] = "Âûäåëèòü äî êîíöà ïðåäûäóùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan einde vorige pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la fin de la page précédente"; + SlotName[ spanish ] = "Seleccionar hasta el final de la página anterior"; + SlotName[ italian ] = "Fino alla fine della pagina precedente"; + SlotName[ danish ] = "Marker til forrige sides slutning"; + SlotName[ swedish ] = "Markera till slutet av föregående sidan"; + SlotName[ polish ] = "Zaznacz do koñca poprzedniej strony"; + SlotName[ portuguese_brazilian ] = "GoToEndOfPrevPageSel"; + SlotName[ japanese ] = "‘O‚ÌÍß°¼Þ––‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏһҳβ¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤W¤@­¶§À"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì äåÇíÉ ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Tot aan einde vorige pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏһҳβ¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ åþò ôÝëïò ðñïçãïýìåíçò óåëßäáò"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁö ³¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Önceki sayfanýn sonuna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_END_TABLE +{ + SlotName = "Zum Tabellenende"; + SlotName [ english ] = "Zum Tabellenende"; + SlotName[ english_us ] = "To Table End"; + SlotName[ portuguese ] = "Ir para fim da tabela"; + SlotName[ russian ] = "Äî êîíöà òàáëèöû"; + SlotName[ dutch ] = "Naar tabeleinde"; + SlotName[ french ] = "A la fin du tableau"; + SlotName[ spanish ] = "Ir al final de la tabla"; + SlotName[ italian ] = "Alla fine della tabella"; + SlotName[ danish ] = "Til tabellens slutning"; + SlotName[ swedish ] = "Till slutet av tabell"; + SlotName[ polish ] = "Do koñca tabeli"; + SlotName[ portuguese_brazilian ] = "GoToTableEnd"; + SlotName[ japanese ] = "•\\––‚Ö"; + SlotName[ chinese_simplified ] = "תµ½±í¸ñβ¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ìªí®æ§ÀºÝ"; + SlotName[ arabic ] = "Åáì äåÇíÉ ÇáÌÏæá"; + SlotName[ dutch ] = "Naar tabeleinde"; + SlotName[ chinese_simplified ] = "תµ½±í¸ñβ¶Ë"; + SlotName[ greek ] = "Ðñïò ôï ôÝëïò ôïõ ðßíáêá"; + SlotName[ korean ] = "Ç¥ ³¡À¸·Î"; + SlotName[ turkish ] = "Tablo sonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_ENVELOP +{ + SlotName = "Briefumschlag einfügen"; + SlotName [ english ] = "Briefumschlag einfügen"; + SlotName[ english_us ] = "Insert Envelope"; + SlotName[ portuguese ] = "Inserir envelope"; + SlotName[ russian ] = "Âñòàâèòü êîíâåðò"; + SlotName[ dutch ] = "Envelop invoegen"; + SlotName[ french ] = "Insérer une enveloppe"; + SlotName[ spanish ] = "Insertar sobre"; + SlotName[ italian ] = "Inserisci busta"; + SlotName[ danish ] = "Indsæt konvolut"; + SlotName[ swedish ] = "Infoga kuvert"; + SlotName[ polish ] = "Wstaw kopertê"; + SlotName[ portuguese_brazilian ] = "InsertEnvelope"; + SlotName[ japanese ] = "••“›‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÐÅ·â"; + SlotName[ chinese_traditional ] = "´¡¤J«H«Ê"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÙÑÝ"; + SlotName[ dutch ] = "Envelop invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÐÅ·â"; + SlotName[ greek ] = "ÅéóáãùãÞ öáêÝëïõ"; + SlotName[ korean ] = "ºÀÅõ »ðÀÔ"; + SlotName[ turkish ] = "Zarf ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_ESCAPE +{ + SlotName = "Abbrechen"; + SlotName [ english ] = "Abbrechen"; + SlotName[ english_us ] = "Cancel"; + SlotName[ portuguese ] = "Cancelar"; + SlotName[ russian ] = "Îòìåíà"; + SlotName[ dutch ] = "Annuleren"; + SlotName[ french ] = "Annuler"; + SlotName[ spanish ] = "Cancelar"; + SlotName[ italian ] = "Escape"; + SlotName[ danish ] = "Annuller"; + SlotName[ swedish ] = "Avbryt"; + SlotName[ polish ] = "Anuluj"; + SlotName[ portuguese_brazilian ] = "Cancel"; + SlotName[ japanese ] = "·¬Ý¾Ù"; + SlotName[ chinese_simplified ] = "È¡Ïû"; + SlotName[ chinese_traditional ] = "¨ú®ø"; + SlotName[ arabic ] = "ÅáÛÇÁ ÇáÃãÑ"; + SlotName[ dutch ] = "Annuleren"; + SlotName[ chinese_simplified ] = "È¡Ïû"; + SlotName[ greek ] = "Áêýñùóç"; + SlotName[ korean ] = "Ãë¼Ò"; + SlotName[ turkish ] = "Ýptal"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EXECUTE_MACROFIELD +{ + SlotName = "Makrofeld ausführen"; + SlotName [ english ] = "Makrofeld ausführen"; + SlotName[ english_us ] = "Run Macro Field"; + SlotName[ portuguese ] = "Executar campo da macro"; + SlotName[ russian ] = "Âûïîëíèòü ïîëå ìàêðîñà"; + SlotName[ dutch ] = "Macroveld uitvoeren"; + SlotName[ french ] = "Exécuter le champ de macro"; + SlotName[ spanish ] = "Ejecutar Campo de macro"; + SlotName[ italian ] = "Esegui un campo macro"; + SlotName[ danish ] = "Udfør makrofelt"; + SlotName[ swedish ] = "Utför makrofält"; + SlotName[ polish ] = "Wykonaj pole makro"; + SlotName[ portuguese_brazilian ] = "ExecuteMacroField"; + SlotName[ japanese ] = "Ï¸Û Ì¨°ÙÄÞ‚ÌŽÀ�s"; + SlotName[ chinese_simplified ] = "Ö´Ðкê×Ö¶Î"; + SlotName[ chinese_traditional ] = "°õ¦æ¥¨¶°Äæ¦ì"; + SlotName[ arabic ] = "ÊäÝíÐ ÍÞá ãÇßÑæ"; + SlotName[ dutch ] = "Macroveld uitvoeren"; + SlotName[ chinese_simplified ] = "Ö´Ðкê×Ö¶Î"; + SlotName[ greek ] = "ÅêôÝëåóç ðåäßïõ ìáêñïåíôïëÞò"; + SlotName[ korean ] = "¸ÅÅ©·Î ÇÊµå ½ÇÇà"; + SlotName[ turkish ] = "Makro alanýný çalýþtýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EXPAND_GLOSSARY +{ + SlotName = "AutoText-Eintrag ausführen"; + SlotName [ english ] = "AutoText-Eintrag ausführen"; + SlotName[ english_us ] = "Run AutoText Entry"; + SlotName[ portuguese ] = "Executar entrada do AutoTexto"; + SlotName[ russian ] = "Âûïîëíèòü çàïèñü àâòîòåêñòà"; + SlotName[ dutch ] = "AutoTekst-item uitvoeren"; + SlotName[ french ] = "Exécuter entrée AutoTexte"; + SlotName[ spanish ] = "Ejecutar entrada AutoTexto"; + SlotName[ italian ] = "Esegui digitazione testo automatico"; + SlotName[ danish ] = "Udfør Autoekst-element"; + SlotName[ swedish ] = "Utför AutoText-post"; + SlotName[ polish ] = "Wykonaj wpis autotekstu"; + SlotName[ portuguese_brazilian ] = "AutoTextEntryRun"; + SlotName[ japanese ] = "“ü—ÍŽx‰‡‚ÌŽÀ�s"; + SlotName[ chinese_simplified ] = "Ö´ÐÐ×Ô¶¯Í¼Îļ¯ÌõÄ¿"; + SlotName[ chinese_traditional ] = "°õ¦æ¦Û°Ê¹Ï¤å¶°¶µ¥Ø"; + SlotName[ arabic ] = "ÊäÝíÐ ÇáÅÏÎÇá ÇáÊáÞÇÆí ááäÕ"; + SlotName[ dutch ] = "AutoTekst-item uitvoeren"; + SlotName[ chinese_simplified ] = "Ö´ÐÐ×Ô¶¯Í¼Îļ¯ÌõÄ¿"; + SlotName[ greek ] = "ÅêôÝëåóç êáôá÷þñéóçò ÁõôïÊåéìÝíïõ"; + SlotName[ korean ] = "ÀÚµ¿ ÅØ½ºÆ® Ç׸ñ ½ÇÇà"; + SlotName[ turkish ] = "Otomatik metin giriþini uygula"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FLIP_HORZ_GRAFIC +{ + SlotName = "Horizontal spiegeln"; + SlotName [ english ] = "Horizontal spiegeln"; + SlotName[ english_us ] = "Flip Horizontal"; + SlotName[ portuguese ] = "Reflectir na horizontal"; + SlotName[ russian ] = "Îòîáðàçèòü ïî ãîðèçîíòàëè"; + SlotName[ dutch ] = "Horizontaal spiegelen"; + SlotName[ french ] = "Refléter horizontalement"; + SlotName[ spanish ] = "Reflejar horizontal"; + SlotName[ italian ] = "Rispecchia orizzontalmente"; + SlotName[ danish ] = "Spejlvend vandret"; + SlotName[ swedish ] = "Spegla horisontellt"; + SlotName[ polish ] = "Przerzuæ w poziomie"; + SlotName[ portuguese_brazilian ] = "GraphicFlipHorizontal"; + SlotName[ japanese ] = "�㉺”½“]"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò·´Ó³"; + SlotName[ chinese_traditional ] = "¤ô¥­¤Ï¬M"; + SlotName[ arabic ] = "ÇäÚßÇÓ ÃÝÞí"; + SlotName[ dutch ] = "Horizontaal spiegelen"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò·´Ó³"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "Ïñéæüíôéá áíáóôñïöÞ"; + SlotName[ korean ] = "¼öÆòÀ¸·Î ´ëĪ"; + SlotName[ turkish ] = "Yatay yansýt"; +}; +SfxSlotInfo FN_FLIP_VERT_GRAFIC +{ + SlotName = "Vertikal spiegeln"; + SlotName [ english ] = "Vertikal spiegeln"; + SlotName[ english_us ] = "Flip Vertical"; + SlotName[ portuguese ] = "Reflectir na vertical"; + SlotName[ russian ] = "Îòîáðàçèòü ïî âåðòèêàëè"; + SlotName[ dutch ] = "Verticaal spiegelen"; + SlotName[ french ] = "Refléter verticalement"; + SlotName[ spanish ] = "Reflejar verticalmente"; + SlotName[ italian ] = "Rispecchia verticalmente"; + SlotName[ danish ] = "Spejlvend lodret"; + SlotName[ swedish ] = "Spegla vertikalt"; + SlotName[ polish ] = "Przerzuæ w pionie"; + SlotName[ portuguese_brazilian ] = "FlipImageVertical"; + SlotName[ japanese ] = "�¶‰E”½“]"; + SlotName[ chinese_simplified ] = "´¹Ö±·´Ó³"; + SlotName[ chinese_traditional ] = "««ª½¤Ï¬M"; + SlotName[ arabic ] = "ÇäÚßÇÓ ÑÃÓí"; + SlotName[ dutch ] = "Verticaal spiegelen"; + SlotName[ chinese_simplified ] = "´¹Ö±·´Ó³"; + SlotName[ greek ] = "ÊÜèåôç áíáóôñïöÞ"; + SlotName[ korean ] = "¼öÁ÷À¸·Î ´ëĪ"; + SlotName[ turkish ] = "Dikey yansýt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FOOTNOTE_TO_ANCHOR +{ + SlotName = "Zu Fußnote/Anker"; + SlotName [ english ] = "Zu Fußnote/Anker"; + SlotName[ english_us ] = "To Footnote Anchor"; + SlotName[ portuguese ] = "Ir para nota de rodapé/âncora"; + SlotName[ russian ] = "Äî ñíîñêè/ïðèâÿçêè"; + SlotName[ dutch ] = "Naar voetnoot/anker"; + SlotName[ french ] = "À la note d.b.d. page/l'appel de note"; + SlotName[ spanish ] = "Ir a la nota al pie/Ancla"; + SlotName[ italian ] = "Alla nota a piè pagina/richiamo"; + SlotName[ danish ] = "Til fodnote/anker"; + SlotName[ swedish ] = "Till fotnot/ankare"; + SlotName[ polish ] = "Do przypisu dolnego/kotwicy"; + SlotName[ portuguese_brazilian ] = "GoToFootnoteOrAnchor"; + SlotName[ japanese ] = "‹r’�/±Ý¶°‚Ö"; + SlotName[ chinese_simplified ] = "תµ½×¢½Å/±ê¼Ç"; + SlotName[ chinese_traditional ] = "Âà¨ìµù¸}/¼Ð¸¹"; + SlotName[ arabic ] = "Åáì ÇáÍÇÔíÉ ÇáÓÝáíÉ/ÇáÅÑÓÇÁ"; + SlotName[ dutch ] = "Naar voetnoot/anker"; + SlotName[ chinese_simplified ] = "תµ½×¢½Å/±ê¼Ç"; + SlotName[ greek ] = "Ðñïò Õðïóçìåßùóç/Áãêýñùóç"; + SlotName[ korean ] = "¹Ù´Ú±Û °íÁ¤ À§Ä¡·Î"; + SlotName[ turkish ] = "Dipnot/sabitleyici"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_BACKGROUND_DLG +{ + SlotName = "Hintergrund"; + SlotName [ english ] = "Hintergrund"; + SlotName[ english_us ] = "Background"; + SlotName[ portuguese ] = "Plano de fundo"; + SlotName[ russian ] = "Ôîí"; + SlotName[ dutch ] = "Achtergrond"; + SlotName[ french ] = "Arrière-plan"; + SlotName[ spanish ] = "Fondo"; + SlotName[ italian ] = "Sfondo"; + SlotName[ danish ] = "Baggrund"; + SlotName[ swedish ] = "Bakgrund"; + SlotName[ polish ] = "T³o"; + SlotName[ portuguese_brazilian ] = "Background"; + SlotName[ japanese ] = "”wŒi"; + SlotName[ chinese_simplified ] = "±³¾°"; + SlotName[ chinese_traditional ] = "­I´º"; + SlotName[ arabic ] = "ÇáÎáÝíÉ"; + SlotName[ dutch ] = "Achtergrond"; + SlotName[ chinese_simplified ] = "±³¾°"; + SlotName[ greek ] = "Öüíôï"; + SlotName[ korean ] = "¹è°æ"; + SlotName[ turkish ] = "Artalan"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_BORDER_DLG +{ + SlotName = "Umrandung"; + SlotName [ english ] = "Umrandung"; + SlotName[ english_us ] = "Borders"; + SlotName[ portuguese ] = "Contornos"; + SlotName[ russian ] = "Îáðàìëåíèå"; + SlotName[ dutch ] = "Omranding"; + SlotName[ french ] = "Bordure"; + SlotName[ spanish ] = "Borde"; + SlotName[ italian ] = "Bordo"; + SlotName[ danish ] = "Ramme"; + SlotName[ swedish ] = "Inramning"; + SlotName[ polish ] = "Obramowanie"; + SlotName[ portuguese_brazilian ] = "Borders"; + SlotName[ japanese ] = "ŠO˜g"; + SlotName[ chinese_simplified ] = "±ß¿ò"; + SlotName[ chinese_traditional ] = "Ã䮨"; + SlotName[ arabic ] = "ÍÏæÏ"; + SlotName[ dutch ] = "Omranding"; + SlotName[ chinese_simplified ] = "±ß¿ò"; + SlotName[ greek ] = "Ðåñßãñáììá"; + SlotName[ korean ] = "°æ°è¼±"; + SlotName[ turkish ] = "Kenarlýk"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_DROPCAPS +{ + SlotName = "Initialien"; + SlotName [ english ] = "Initialien"; + SlotName[ english_us ] = "Drop Caps"; + SlotName[ portuguese ] = "Iniciais"; + SlotName[ russian ] = "Áóêâèöà"; + SlotName[ dutch ] = "Initialen"; + SlotName[ french ] = "Lettrines"; + SlotName[ spanish ] = "Iniciales"; + SlotName[ italian ] = "Capolettera"; + SlotName[ danish ] = "Initialer"; + SlotName[ swedish ] = "Anfangsbokstäver"; + SlotName[ polish ] = "Inicja³y"; + SlotName[ portuguese_brazilian ] = "FormatInitial"; + SlotName[ japanese ] = "ÄÞÛ¯Ìß·¬¯Ìß"; + SlotName[ chinese_simplified ] = "µ¥´ÊÊ××Öĸ´óд"; + SlotName[ chinese_traditional ] = "¦r­º¤j¼g"; + SlotName[ arabic ] = "ÇáÃÍÑÝ ÇáÇÓÊåáÇáíÉ"; + SlotName[ dutch ] = "Initialen"; + SlotName[ chinese_simplified ] = "µ¥´ÊÊ××Öĸ´óд"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "Áñ÷ßãñáììá"; + SlotName[ korean ] = "´ë¹®ÀÚ ³õ±â"; + SlotName[ turkish ] = "Baþharfler"; +}; +SfxSlotInfo FN_FORMAT_FOOTNOTE_DLG +{ + SlotName = "Fußnoten"; + SlotName [ english ] = "Fußnoten"; + SlotName[ english_us ] = "Footnotes"; + SlotName[ portuguese ] = "Notas de rodapé"; + SlotName[ russian ] = "Ñíîñêè"; + SlotName[ dutch ] = "Voetnoten"; + SlotName[ french ] = "Notes de bas de page"; + SlotName[ spanish ] = "Notas al pie"; + SlotName[ italian ] = "Note a piè pagina"; + SlotName[ danish ] = "Fodnoter"; + SlotName[ swedish ] = "Fotnoter"; + SlotName[ polish ] = "Przypisy"; + SlotName[ portuguese_brazilian ] = "ToolsFootnote"; + SlotName[ japanese ] = "‹r’�"; + SlotName[ chinese_simplified ] = "×¢½Å"; + SlotName[ chinese_traditional ] = "µù¸}"; + SlotName[ arabic ] = "ÍæÇÔí ÓÝáíÉ"; + SlotName[ dutch ] = "Voetnoten"; + SlotName[ chinese_simplified ] = "×¢½Å"; + SlotName[ greek ] = "Õðïóçìåéþóåéò"; + SlotName[ korean ] = "¹Ù´Ú±Û"; + SlotName[ turkish ] = "Dipnot"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_FRAME_DLG +{ + SlotName = "Rahmen Eigenschaften"; + SlotName [ english ] = "Rahmen Eigenschaften"; + SlotName[ english_us ] = "Frame Properties"; + SlotName[ portuguese ] = "Propriedades da moldura"; + SlotName[ russian ] = "Ñâîéñòâà ðàìêè"; + SlotName[ dutch ] = "Kadereigenschappen"; + SlotName[ french ] = "Propriétés du cadre"; + SlotName[ spanish ] = "Propiedades del marco"; + SlotName[ italian ] = "Proprietà cornice"; + SlotName[ danish ] = "Ramme-egenskaber"; + SlotName[ swedish ] = "Ram egenskaper"; + SlotName[ polish ] = "Edytuj ramkê"; + SlotName[ portuguese_brazilian ] = "FormatFrame"; + SlotName[ japanese ] = "˜g‚ÌÌßÛÊßè"; + SlotName[ chinese_simplified ] = "Îı¾¿òÊôÐÔ"; + SlotName[ chinese_traditional ] = "¤å¦r¤è¶ôÄÝ©Ê"; + SlotName[ arabic ] = "ÎÕÇÆÕ ÇáÅØÇÑ"; + SlotName[ dutch ] = "Kadereigenschappen"; + SlotName[ chinese_simplified ] = "Îı¾¿òÊôÐÔ"; + SlotName[ greek ] = "Éäéüôçôåò ðëáéóßïõ"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ µî·ÏÁ¤º¸"; + SlotName[ turkish ] = "Çerçeve özellikleri"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_GRAFIC_DLG +{ + SlotName = "Grafik bearbeiten"; + SlotName [ english ] = "Grafik bearbeiten"; + SlotName[ english_us ] = "Edit Graphics"; + SlotName[ portuguese ] = "Editar imagem"; + SlotName[ russian ] = "Ïðàâêà ðèñóíêà"; + SlotName[ dutch ] = "Afbeelding bewerken"; + SlotName[ french ] = "Éditer une image"; + SlotName[ spanish ] = "Editar imagen"; + SlotName[ italian ] = "Modifica immagine"; + SlotName[ danish ] = "Rediger billede"; + SlotName[ swedish ] = "Redigera grafik"; + SlotName[ polish ] = "Edytuj grafikê"; + SlotName[ portuguese_brazilian ] = "FormatGraphics"; + SlotName[ japanese ] = "�}‚Ì•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­Í¼ÐÎ"; + SlotName[ chinese_traditional ] = "½s¿è¹Ï¤ù"; + SlotName[ arabic ] = "ÊÍÑíÑ ÕæÑÉ"; + SlotName[ dutch ] = "Afbeelding bewerken"; + SlotName[ chinese_simplified ] = "±à¼­Í¼ÐÎ"; + SlotName[ greek ] = "Åðåîåñãáóßá ãñáöéêïý"; + SlotName[ korean ] = "±×·¡ÇÈ ÆíÁý"; + SlotName[ turkish ] = "Grafik düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_PAGE_COLUMN_DLG +{ + SlotName = "Seitenspalten"; + SlotName [ english ] = "Seitenspalten"; + SlotName[ english_us ] = "Page Columns"; + SlotName[ portuguese ] = "Colunas de página"; + SlotName[ russian ] = "Êîëîíêè ñòðàíèöû"; + SlotName[ dutch ] = "Paginakolommen"; + SlotName[ french ] = "Colonnes de page"; + SlotName[ spanish ] = "Columnas de la página"; + SlotName[ italian ] = "Colonne pagina"; + SlotName[ danish ] = "Sidekolonner"; + SlotName[ swedish ] = "Sidkolumner"; + SlotName[ polish ] = "Kolumny na stronie"; + SlotName[ portuguese_brazilian ] = "FormatPageColumn"; + SlotName[ japanese ] = "’i‘g‚Ý"; + SlotName[ chinese_simplified ] = "Ò³ÃæÀ¸"; + SlotName[ chinese_traditional ] = "­¶­±Äæ"; + SlotName[ arabic ] = "ÃÚãÏÉ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Paginakolommen"; + SlotName[ chinese_simplified ] = "Ò³ÃæÀ¸"; + SlotName[ greek ] = "ÓôÞëåò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ¿­"; + SlotName[ turkish ] = "Sayfa sütunlarý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_PAGE_DLG +{ + SlotName = "Seiteneinstellungen"; + SlotName [ english ] = "Seiteneinstellungen"; + SlotName[ english_us ] = "Page Settings"; + SlotName[ portuguese ] = "Configurar página"; + SlotName[ russian ] = "Íàñòðîéêè ñòðàíèöû"; + SlotName[ dutch ] = "Pagina-instellingen"; + SlotName[ french ] = "Paramètres de page"; + SlotName[ spanish ] = "Configuración de página"; + SlotName[ italian ] = "Impostazioni di pagina"; + SlotName[ danish ] = "Sideopsætning"; + SlotName[ swedish ] = "Sidinställningar"; + SlotName[ polish ] = "Ustawienia strony"; + SlotName[ portuguese_brazilian ] = "FormatPage"; + SlotName[ japanese ] = "Íß°¼Þ�Ý’è"; + SlotName[ chinese_simplified ] = "Ò³ÃæÉ趨"; + SlotName[ chinese_traditional ] = "³]©w­¶­±"; + SlotName[ arabic ] = "ÅÚÏÇÏÇÊ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Pagina-instellingen"; + SlotName[ chinese_simplified ] = "Ò³ÃæÉ趨"; + SlotName[ greek ] = "Äéáìüñöùóç óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ¼³Á¤"; + SlotName[ turkish ] = "Sayfa yapýsý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_RESET +{ + SlotName = "Zeichenattribute zurücksetzen"; + SlotName [ english ] = "Zeichenattribute zurücksetzen"; + SlotName[ english_us ] = "Reset Font Attributes"; + SlotName[ portuguese ] = "Repor atributos dos caracteres"; + SlotName[ russian ] = "Âîññòàíîâèòü àòðèáóòû øðèôòà"; + SlotName[ dutch ] = "Tekenattributen terugzetten"; + SlotName[ french ] = "Restaurer les attributs de caractères"; + SlotName[ spanish ] = "Restablecer fuentes"; + SlotName[ italian ] = "Ripristina attributi carattere"; + SlotName[ danish ] = "Nulstil tegnattributter"; + SlotName[ swedish ] = "Återställ teckenattribut"; + SlotName[ polish ] = "Zresetuj atrybuty znaków"; + SlotName[ portuguese_brazilian ] = "DefaultFont"; + SlotName[ japanese ] = "•¶Žš‘®�«‚ÌØ¾¯Ä"; + SlotName[ chinese_simplified ] = "ÖØÉè×Ö·ûÊôÐÔ"; + SlotName[ chinese_traditional ] = "­«³]¦r¤¸ÄÝ©Ê"; + SlotName[ arabic ] = "ÅÚÇÏÉ ÊÚííä ÓãÇÊ ÇáÎØæØ"; + SlotName[ dutch ] = "Tekenattributen terugzetten"; + SlotName[ chinese_simplified ] = "ÖØÉè×Ö·ûÊôÐÔ"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÅðáíáöïñÜ éäéïôÞôùí ÷áñáêôÞñùí"; + SlotName[ korean ] = "±Û²Ã ¼Ó¼º ¿ø·¡´ë·Î"; + SlotName[ turkish ] = "Yazýtipi öznitelikleri"; +}; +SfxSlotInfo FN_FORMAT_TABLE_DLG +{ + SlotName = "Tabelle bearbeiten"; + SlotName [ english ] = "Tabelle bearbeiten"; + SlotName[ english_us ] = "Edit Table"; + SlotName[ portuguese ] = "Editar tabela"; + SlotName[ russian ] = "Ïðàâêà òàáëèöû"; + SlotName[ dutch ] = "Tabel bewerken"; + SlotName[ french ] = "Éditer le tableau"; + SlotName[ spanish ] = "Editar tabla"; + SlotName[ italian ] = "Modifica tabella"; + SlotName[ danish ] = "Rediger tabel"; + SlotName[ swedish ] = "Redigera tabell"; + SlotName[ polish ] = "Edytuj tabelê"; + SlotName[ portuguese_brazilian ] = "FormatTable"; + SlotName[ japanese ] = "•\\‚Ì•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­±í¸ñ"; + SlotName[ chinese_traditional ] = "½s¿èªí®æ"; + SlotName[ arabic ] = "ÊÍÑíÑ ÌÏæá"; + SlotName[ dutch ] = "Tabel bewerken"; + SlotName[ chinese_simplified ] = "±à¼­±í¸ñ"; + SlotName[ greek ] = "Åðåîåñãáóßá ðßíáêá"; + SlotName[ korean ] = "Ç¥ ÆíÁý"; + SlotName[ turkish ] = "Tablo düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_HORZ_CENTER +{ + SlotName = "Horizontal zentrieren"; + SlotName [ english ] = "Horizontal zentrieren"; + SlotName[ english_us ] = "Center Horizontal"; + SlotName[ portuguese ] = "Centrar horizontalmente"; + SlotName[ russian ] = "Öåíòðèðîâàòü ïî ãîðèçîíòàëè"; + SlotName[ dutch ] = "Horizontaal centreren"; + SlotName[ french ] = "Centrer horizontalement"; + SlotName[ spanish ] = "Centrar horizontalmente"; + SlotName[ italian ] = "Allinea orizzontale"; + SlotName[ danish ] = "Centrer vandret"; + SlotName[ swedish ] = "Centrera horisontellt"; + SlotName[ polish ] = "Wyœrodkuj poziomo"; + SlotName[ portuguese_brazilian ] = "PositionFrameCenteredHorizontal"; + SlotName[ japanese ] = "’†‰›‘µ‚¦(�¶‰E)"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò¾ÓÖÐ"; + SlotName[ chinese_traditional ] = "¤ô¥­¸m¤¤"; + SlotName[ arabic ] = "ÊæÓíØ ÃÝÞí"; + SlotName[ dutch ] = "Horizontaal centreren"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò¾ÓÖÐ"; + SlotName[ greek ] = "ÊåíôñÜñéóìá ïñéæïíôßùò"; + SlotName[ korean ] = "°¡¿îµ¥ °¡·Î"; + SlotName[ turkish ] = "Yatay ortala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_HORZ_LEFT +{ + SlotName = "Links anordnen"; + SlotName [ english ] = "Links anordnen"; + SlotName[ english_us ] = "Align Left"; + SlotName[ portuguese ] = "Alinhar à esquerda"; + SlotName[ russian ] = "Âûðîâíÿòü ïî ëåâîìó êðàþ"; + SlotName[ dutch ] = "Links positioneren"; + SlotName[ french ] = "Aligner à gauche"; + SlotName[ spanish ] = "Alinear a la izquierda"; + SlotName[ italian ] = "Disponi a sinistra"; + SlotName[ danish ] = "Placer til venstre"; + SlotName[ swedish ] = "Placera till vänster"; + SlotName[ polish ] = "Wyrównaj do lewej"; + SlotName[ portuguese_brazilian ] = "PositionFrameLeft"; + SlotName[ japanese ] = "�¶‘µ‚¦"; + SlotName[ chinese_simplified ] = "Ïò×ó¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¥ª¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÇáíÓÇÑ"; + SlotName[ dutch ] = "Links positioneren"; + SlotName[ chinese_simplified ] = "Ïò×ó¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç áñéóôåñÜ"; + SlotName[ korean ] = "¿ÞÂÊ ¸ÂÃã"; + SlotName[ turkish ] = "Sola hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_HORZ_RIGHT +{ + SlotName = "Rechts anordnen"; + SlotName [ english ] = "Rechts anordnen"; + SlotName[ english_us ] = "Align Right"; + SlotName[ portuguese ] = "Alinhar à direita"; + SlotName[ russian ] = "Âûðîâíÿòü ïî ïðàâîìó êðàþ"; + SlotName[ dutch ] = "Rechts positioneren"; + SlotName[ french ] = "Aligner à droite"; + SlotName[ spanish ] = "Alinear a la derecha"; + SlotName[ italian ] = "Disponi a destra"; + SlotName[ danish ] = "Placer til højre"; + SlotName[ swedish ] = "Placera till höger"; + SlotName[ polish ] = "Wyrównaj do prawej"; + SlotName[ portuguese_brazilian ] = "PositionFrameRight"; + SlotName[ japanese ] = "‰E‘µ‚¦"; + SlotName[ chinese_simplified ] = "ÏòÓÒ¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¥k¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì Çáíãíä"; + SlotName[ dutch ] = "Rechts positioneren"; + SlotName[ chinese_simplified ] = "ÏòÓÒ¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç äåîéÜ"; + SlotName[ korean ] = "¿À¸¥ÂÊ ¸ÂÃã"; + SlotName[ turkish ] = "Saða hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_BOTTOM +{ + SlotName = "Unten anordnen"; + SlotName [ english ] = "Unten anordnen"; + SlotName[ english_us ] = "Align Bottom"; + SlotName[ portuguese ] = "Alinhar em baixo"; + SlotName[ russian ] = "Âûðîâíÿòü ïî íèæíåìó êðàþ"; + SlotName[ dutch ] = "Beneden positioneren"; + SlotName[ french ] = "Aligner en bas"; + SlotName[ spanish ] = "Alinear abajo"; + SlotName[ italian ] = "Disponi in basso"; + SlotName[ danish ] = "Placer nederst"; + SlotName[ swedish ] = "Placera vid underkant"; + SlotName[ polish ] = "Wyrównaj do do³u"; + SlotName[ portuguese_brazilian ] = "PositionFrameBottom"; + SlotName[ japanese ] = "‰º‘µ‚¦"; + SlotName[ chinese_simplified ] = "ÏòÏÂ¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¤U¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÓÝá"; + SlotName[ dutch ] = "Beneden positioneren"; + SlotName[ chinese_simplified ] = "ÏòÏÂ¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç êÜôù"; + SlotName[ korean ] = "¾Æ·¡ ¸ÂÃã"; + SlotName[ turkish ] = "Aþaðý hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_CENTER +{ + SlotName = "Vertikal mittig anordnen"; + SlotName [ english ] = "Vertikal mittig anordnen"; + SlotName[ english_us ] = "Align Vertical Center"; + SlotName[ portuguese ] = "Alinhar na vertical ao centro"; + SlotName[ russian ] = "Âûðîâíÿòü ïî âåðòèêàëè â öåíòðå"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren"; + SlotName[ french ] = "Aligner verticalement au centre"; + SlotName[ spanish ] = "Alinear al centro vertical"; + SlotName[ italian ] = "Disponi al centro verticalmente"; + SlotName[ danish ] = "Juster vandret centreret"; + SlotName[ swedish ] = "Placera vertikalt centrerat"; + SlotName[ polish ] = "Wyrównaj pionowo do œrodka"; + SlotName[ portuguese_brazilian ] = "PositionFrameVerticalCenter"; + SlotName[ japanese ] = "’†‰›‘µ‚¦(�㉺�j"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖÐ¶ÔÆë"; + SlotName[ chinese_traditional ] = "««ª½¸m¤¤¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ ãÑßÒíÉ ÑÃÓíÉ"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖÐ¶ÔÆë"; + SlotName[ greek ] = "Êáôáêüñõöç êåíôñáñéóìÝíç óôïß÷éóç"; + SlotName[ korean ] = "¼¼·Î Áß¾Ó¿¡ ¸ÂÃã"; + SlotName[ turkish ] = "Dikey ortaya hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_CHAR_BOTTOM +{ + SlotName = "Am Zeichen unten anordnen"; + SlotName [ english ] = "Am Zeichen unten anordnen"; + SlotName[ english_us ] = "Align to Bottom of Character"; + SlotName[ portuguese ] = "Alinhar abaixo do carácter"; + SlotName[ russian ] = "Âûðîâíÿòü ïî çíàêó ñíèçó"; + SlotName[ dutch ] = "Onder aan teken positioneren"; + SlotName[ french ] = "Aligner au caractère en bas"; + SlotName[ spanish ] = "Alinear debajo del carácter"; + SlotName[ italian ] = "Allinea al carattere in basso"; + SlotName[ danish ] = "Juster til tegn forneden"; + SlotName[ swedish ] = "Placera vid tecknets underkant"; + SlotName[ polish ] = "Wyrównaj do znaku na dole"; + SlotName[ portuguese_brazilian ] = "PositionFrameCharBottom"; + SlotName[ japanese ] = "‰º‘µ‚¦(•¶Žš)"; + SlotName[ chinese_simplified ] = "Ïò×Ö·ûµ×²¿¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¤U©M¦r¤¸¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÓÝá ÇáÃÍÑÝ"; + SlotName[ dutch ] = "Onder aan teken positioneren"; + SlotName[ chinese_simplified ] = "Ïò×Ö·ûµ×²¿¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç ùò ðñïò ÷áñáêôÞñá êÜôù"; + SlotName[ korean ] = "¹®ÀÚÀÇ ¾Æ·¡¿¡ ¸ÂÃã"; + SlotName[ turkish ] = "Karakterin alt kenarý ile hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_CHAR_CENTER +{ + SlotName = "Am Zeichen vertikal mittig anordnen"; + SlotName [ english ] = "Am Zeichen vertikal mittig anordnen"; + SlotName[ english_us ] = "Align to Vertical Center of Character"; + SlotName[ portuguese ] = "Alinhar na vertical ao centro do carácter"; + SlotName[ russian ] = "Âûðîâíÿòü ïî çíàêó âåðòèêàëüíî â öåíòðå"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren aan teken"; + SlotName[ french ] = "Aligner au milieu vertical du caractère"; + SlotName[ spanish ] = "Alinear al centro vertical del carácter"; + SlotName[ italian ] = "Allinea al carattere verticalmente al centro"; + SlotName[ danish ] = "Juster til tegn lodret centreret"; + SlotName[ swedish ] = "Placera vertikalt centrerat till tecknet"; + SlotName[ polish ] = "Umieœæ przy znaku pionowo w œrodku"; + SlotName[ portuguese_brazilian ] = "PositionFrameVerticalCharCenter"; + SlotName[ japanese ] = "’†‰›‘µ‚¦(•¶Žš¥�㉺)"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖкÍ×Ö·û¶ÔÆë"; + SlotName[ chinese_traditional ] = "««ª½¸m¤¤©M¦r¤¸¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ ÑÃÓíÉ ãÑßÒíÉ ÈÇáäÓÈÉ ááÃÍÑÝ"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren aan teken"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖкÍ×Ö·û¶ÔÆë"; + SlotName[ greek ] = "Êáôáêüñõöç êåíôñáñéóìÝíç óôïß÷éóç ùò ðñïò ÷áñáêôÞñá"; + SlotName[ korean ] = "¹®ÀÚÀÇ ¼¼·Î °¡¿îµ¥ ¸ÂÃã"; + SlotName[ turkish ] = "Karaktere göre dikey ortalayarak hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_CHAR_TOP +{ + SlotName = "Am Zeichen oben anordnen"; + SlotName [ english ] = "Am Zeichen oben anordnen"; + SlotName[ english_us ] = "Align to Top of Character"; + SlotName[ portuguese ] = "Alinhar acima do carácter"; + SlotName[ russian ] = "Âûðîâíÿòü ïî çíàêó ñâåðõó"; + SlotName[ dutch ] = "Boven aan teken positioneren"; + SlotName[ french ] = "Aligner au caractère en haut"; + SlotName[ spanish ] = "Alinear encima del carácter"; + SlotName[ italian ] = "Allinea al carattere in alto"; + SlotName[ danish ] = "Juster til tegn foroven"; + SlotName[ swedish ] = "Placera vid tecknets överkant"; + SlotName[ polish ] = "Wyrównaj do znaku w górze"; + SlotName[ portuguese_brazilian ] = "PositionFrameCharTop"; + SlotName[ japanese ] = "�㑵‚¦(•¶Žš)"; + SlotName[ chinese_simplified ] = "ºÍ×Ö·ûÉϲ¿¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¤W©M¦r¤¸¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÚáì ÇáÃÍÑÝ"; + SlotName[ dutch ] = "Boven aan teken positioneren"; + SlotName[ chinese_simplified ] = "ºÍ×Ö·ûÉϲ¿¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç ùò ðñïò ÷áñáêôÞñá Üíù"; + SlotName[ korean ] = "¹®ÀÚÀÇ À§¿¡ ¸ÂÃã"; + SlotName[ turkish ] = "Karakterin üst kenarý ile hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_ROW_BOTTOM +{ + SlotName = "An Zeile unten anordnen"; + SlotName [ english ] = "An Zeile unten anordnen"; + SlotName[ english_us ] = "Align to Bottom of Line"; + SlotName[ portuguese ] = "Alinhar na linha inferior"; + SlotName[ russian ] = "Âûðîâíÿòü ïî ñòðîêå ñíèçó"; + SlotName[ dutch ] = "Onder aan regel positioneren"; + SlotName[ french ] = "Aligner en bas de la ligne"; + SlotName[ spanish ] = "Alinear debajo de la línea"; + SlotName[ italian ] = "Allinea alla riga in basso"; + SlotName[ danish ] = "Juster til række forneden"; + SlotName[ swedish ] = "Placera vid radens underkant"; + SlotName[ polish ] = "Wyrównaj do wiersza w dole"; + SlotName[ portuguese_brazilian ] = "PositionFrameRowBottom"; + SlotName[ japanese ] = "‰º‘µ‚¦(�s�j"; + SlotName[ chinese_simplified ] = "ºÍÐеĵײ¿¶ÔÆë"; + SlotName[ chinese_traditional ] = "©M¤U¤@¦æ¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÓÝá ÇáÓØÑ"; + SlotName[ dutch ] = "Onder aan regel positioneren"; + SlotName[ chinese_simplified ] = "ºÍÐеĵײ¿¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç ùò ðñïò ãñáììÞ êÜôù"; + SlotName[ korean ] = "¼±ÀÇ ¹Ø¿¡ ¸ÂÃã"; + SlotName[ turkish ] = "Satýrýn alt kenarý ile hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_ROW_CENTER +{ + SlotName = "An Zeile vertikal mittig anordnen"; + SlotName [ english ] = "An Zeile vertikal mittig anordnen"; + SlotName[ english_us ] = "Align to Vertical Center of Line"; + SlotName[ portuguese ] = "Centrar objecto verticalmente na linha"; + SlotName[ russian ] = "Âûðîâíÿòü ïî ñòðîêå âåðòèêàëüíî â öåíòðå"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren aan regel"; + SlotName[ french ] = "Aligner au milieu vertical de la ligne"; + SlotName[ spanish ] = "Alinear centro vertical línea"; + SlotName[ italian ] = "Allinea alla riga verticale al centro"; + SlotName[ danish ] = "Juster til række lodret centreret"; + SlotName[ swedish ] = "Placera vertikalt centrerat på raden"; + SlotName[ polish ] = "Umieœæ przy wierszu pionowo w œrodku"; + SlotName[ portuguese_brazilian ] = "PositionFrameVerticalRowCenter"; + SlotName[ japanese ] = "’†‰›‘µ‚¦(�s¥�㉺�j"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖкÍÐÐ¶ÔÆë"; + SlotName[ chinese_traditional ] = "««ª½¸m¤¤©M¦æ¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ ÑÃÓíÉ ãÑßÒíÉ ÈÇáäÓÈÉ ááÓØÑ"; + SlotName[ dutch ] = "Verticaal gecentreerd positioneren aan regel"; + SlotName[ chinese_simplified ] = "´¹Ö±¾ÓÖкÍÐÐ¶ÔÆë"; + SlotName[ greek ] = "Êáôáêüñõöç êåíôñáñéóìÝíç óôïß÷éóç ùò ðñïò ãñáììÞ"; + SlotName[ korean ] = "¼±ÀÇ ¼¼·Î °¡¿îµ¥ ¸ÂÃã"; + SlotName[ turkish ] = "Satýra göre dikey ortalayarak hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_ROW_TOP +{ + SlotName = "An Zeile oben anordnen"; + SlotName [ english ] = "An Zeile oben anordnen"; + SlotName[ english_us ] = "Align to Top of Line"; + SlotName[ portuguese ] = "Alinhar na linha superior"; + SlotName[ russian ] = "Âûðîâíÿòü ïî ñòðîêå ñâåðõó"; + SlotName[ dutch ] = "Boven aan regel positioneren"; + SlotName[ french ] = "Aligner en haut de la ligne"; + SlotName[ spanish ] = "Alinear encima de la línea"; + SlotName[ italian ] = "Allinea alla riga in alto"; + SlotName[ danish ] = "Juster til række foroven"; + SlotName[ swedish ] = "Placera vid radens överkant"; + SlotName[ polish ] = "Wyrównaj do wiersza w dole"; + SlotName[ portuguese_brazilian ] = "PositionFrameRowTop"; + SlotName[ japanese ] = "�㑵‚¦(�s)"; + SlotName[ chinese_simplified ] = "ºÍÐеÄÉÏ·½¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¤W©M¦æ¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÚáì ÇáÓØÑ"; + SlotName[ dutch ] = "Boven aan regel positioneren"; + SlotName[ chinese_simplified ] = "ºÍÐеÄÉÏ·½¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç ùò ðñïò ãñáììÞ Üíù"; + SlotName[ korean ] = "¼±ÀÇ À§¿¡ ¸ÂÃã"; + SlotName[ turkish ] = "Satýrýn üst kenarý ile hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_ALIGN_VERT_TOP +{ + SlotName = "Oben anordnen"; + SlotName [ english ] = "Oben anordnen"; + SlotName[ english_us ] = "Align Top"; + SlotName[ portuguese ] = "Alinhar em cima"; + SlotName[ russian ] = "Âûðîâíÿòü ïî âåðõíåìó êðàþ"; + SlotName[ dutch ] = "Boven positioneren"; + SlotName[ french ] = "Aligner en haut"; + SlotName[ spanish ] = "Alinear arriba"; + SlotName[ italian ] = "Disponi in alto"; + SlotName[ danish ] = "Placer øverst"; + SlotName[ swedish ] = "Placera vid överkant"; + SlotName[ polish ] = "Wyrównaj do góry"; + SlotName[ portuguese_brazilian ] = "PositionFrameTop"; + SlotName[ japanese ] = "�㑵‚¦"; + SlotName[ chinese_simplified ] = "ÏòÉÏ¶ÔÆë"; + SlotName[ chinese_traditional ] = "¦V¤W¹ï»ô"; + SlotName[ arabic ] = "ãÍÇÐÇÉ Åáì ÃÚáì"; + SlotName[ dutch ] = "Boven positioneren"; + SlotName[ chinese_simplified ] = "ÏòÉÏ¶ÔÆë"; + SlotName[ greek ] = "Óôïß÷éóç ðÜíù"; + SlotName[ korean ] = "À§ ¸ÂÃã"; + SlotName[ turkish ] = "Yukarý hizala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_CHAIN +{ + SlotName = "Verketten"; + SlotName [ english ] = "Verketten"; + SlotName[ english_us ] = "Link Frames"; + SlotName[ portuguese ] = "Ligar molduras"; + SlotName[ russian ] = "Ñöåïëåíèå"; + SlotName[ dutch ] = "Koppelen"; + SlotName[ french ] = "Enchaîner"; + SlotName[ spanish ] = "Vincular marcos"; + SlotName[ italian ] = "Concatena"; + SlotName[ danish ] = "Kæd"; + SlotName[ swedish ] = "Kedja"; + SlotName[ polish ] = "Po³¹cz"; + SlotName[ portuguese_brazilian ] = "ChainFrames"; + SlotName[ japanese ] = "÷½ÄÎÞ¯¸½‚̘AŒ‹"; + SlotName[ chinese_simplified ] = "Á¬½Ó"; + SlotName[ chinese_traditional ] = "³sµ²"; + SlotName[ arabic ] = "ÑÈØ"; + SlotName[ dutch ] = "Koppelen"; + SlotName[ chinese_simplified ] = "Á¬½Ó"; + SlotName[ greek ] = "Óýíäåóç"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ ¿¬°á"; + SlotName[ turkish ] = "Baðla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_DOWN +{ + SlotName = "Nach hinten"; + SlotName [ english ] = "Nach hinten"; + SlotName[ english_us ] = "Send Backward"; + SlotName[ portuguese ] = "Para trás"; + SlotName[ russian ] = "Íàçàä"; + SlotName[ dutch ] = "Naar achteren"; + SlotName[ french ] = "Vers l'arrière"; + SlotName[ spanish ] = "Hacia atrás"; + SlotName[ italian ] = "Indietro"; + SlotName[ danish ] = "Flyt bagud"; + SlotName[ swedish ] = "Bakåt"; + SlotName[ polish ] = "Do ty³u"; + SlotName[ portuguese_brazilian ] = "ObjectBackOne"; + SlotName[ japanese ] = "Œã‚ë‚Ö"; + SlotName[ chinese_simplified ] = "ºóÖÃ"; + SlotName[ chinese_traditional ] = "«á¸m"; + SlotName[ arabic ] = "ÅÑÓÇá ÎáÝÇð"; + SlotName[ dutch ] = "Naar achteren"; + SlotName[ chinese_simplified ] = "ºóÖÃ"; + SlotName[ greek ] = "Ðßóù"; + SlotName[ korean ] = "µÚ·Î º¸³»±â"; + SlotName[ turkish ] = "Geriye gönder"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_MIRROR_ON_EVEN_PAGES +{ + SlotName = "Auf geraden Seiten spiegeln"; + SlotName [ english ] = "Auf geraden Seiten spiegeln"; + SlotName[ english_us ] = "Mirror Object on Even Pages"; + SlotName[ portuguese ] = "Reflectir nas páginas pares"; + SlotName[ russian ] = "Îòîáðàçèòü íà ÷åòíûõ ñòðàíèöàõ"; + SlotName[ dutch ] = "Op even pagina's spiegelen"; + SlotName[ french ] = "Refléter sur les pages paires"; + SlotName[ spanish ] = "Reflejar objeto en páginas pares"; + SlotName[ italian ] = "Rispecchia sulle pagine pari"; + SlotName[ danish ] = "Spejlvend på lige sider"; + SlotName[ swedish ] = "Spegla på jämna sidor"; + SlotName[ polish ] = "Przerzuæ na parzystych stronach"; + SlotName[ portuguese_brazilian ] = "MirrorOnEvenPages"; + SlotName[ japanese ] = "‹ô�”Íß°¼Þ‚É”½“]"; + SlotName[ chinese_simplified ] = "·´Ó³µ½Å¼ÊýÒ³Ãæ"; + SlotName[ chinese_traditional ] = "¤Ï¬M¨ì°¸¼Æ­¶­±"; + SlotName[ arabic ] = "ÇäÚßÇÓ Úáì ÇáÕÝÍÇÊ ÇáÒæÌíÉ"; + SlotName[ dutch ] = "Op even pagina's spiegelen"; + SlotName[ chinese_simplified ] = "·´Ó³µ½Å¼ÊýÒ³Ãæ"; + SlotName[ greek ] = "Êáôïðôñéóìüò óå ìïíÝò óåëßäåò"; + SlotName[ korean ] = "¦¼ö ÆäÀÌÁö¿¡¼­ ´ëĪ"; + SlotName[ turkish ] = "Çift numaralý sayfalarda yansýt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_NOWRAP +{ + SlotName = "Umlauf aus"; + SlotName [ english ] = "Umlauf aus"; + SlotName[ english_us ] = "Wrap Off"; + SlotName[ portuguese ] = "Desactivar ajuste"; + SlotName[ russian ] = "Îòêë. îáòåêàíèå"; + SlotName[ dutch ] = "Omloop uit"; + SlotName[ french ] = "Pas d'adaptation"; + SlotName[ spanish ] = "Desactivar Ajuste"; + SlotName[ italian ] = "Scorrimento off"; + SlotName[ danish ] = "Deaktiver ombrydning"; + SlotName[ swedish ] = "Textanpassning av"; + SlotName[ polish ] = "Wy³¹cz obieg"; + SlotName[ portuguese_brazilian ] = "FrameWrapOff"; + SlotName[ japanese ] = "�Ü‚è•Ô‚µ�@µÌ"; + SlotName[ chinese_simplified ] = "²»Ê¹Óû·ÈÆ"; + SlotName[ chinese_traditional ] = "¤£¨Ï¥ÎÀô¶´«¦æ"; + SlotName[ arabic ] = "ÅíÞÇÝ ÇáÇáÊÝÇÝ"; + SlotName[ dutch ] = "Omloop uit"; + SlotName[ chinese_simplified ] = "²»Ê¹Óû·ÈÆ"; + SlotName[ greek ] = "Áðåíåñãïðïßçóç áíáäßðëùóçò"; + SlotName[ korean ] = "¼øÈ¯ ÇØÁ¦"; + SlotName[ turkish ] = "Metin daðýlýmý kapalý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_TO_ANCHOR +{ + SlotName = "Setze Cursor auf Anker"; + SlotName [ english ] = "Setze Cursor auf Anker"; + SlotName[ english_us ] = "Set Cursor To Anchor"; + SlotName[ portuguese ] = "Colocar cursor sobre a âncora"; + SlotName[ russian ] = "Óñòàíîâèòü êóðñîð ê ïðèâÿçêå"; + SlotName[ dutch ] = "Zet cursor op anker"; + SlotName[ french ] = "Positionne curseur sur l'ancre"; + SlotName[ spanish ] = "Colocar cursor sobre ancla"; + SlotName[ italian ] = "Porta cursore all'ancoraggio"; + SlotName[ danish ] = "Sæt markør på anker"; + SlotName[ swedish ] = "Sätt markören på ankaret"; + SlotName[ polish ] = "Ustaw kursor na kotwicy"; + SlotName[ portuguese_brazilian ] = "SetCursorToAnchor"; + SlotName[ japanese ] = "¶°¿Ù‚ð±Ý¶°‚É�Ý’u"; + SlotName[ chinese_simplified ] = "Öùâ±êÓÚ±ê¼Ç´¦"; + SlotName[ chinese_traditional ] = "¥ú¼ÐÂà¨ì¼Ð¸¹"; + SlotName[ arabic ] = "æÖÚ ÇáãÄÔÑ Úáì ÇáÅÑÓÇÁ"; + SlotName[ dutch ] = "Zet cursor op anker"; + SlotName[ chinese_simplified ] = "Öùâ±êÓÚ±ê¼Ç´¦"; + SlotName[ greek ] = "ÔïðïèÝôçóç äåßêôç óå áãêýñùóç"; + SlotName[ korean ] = "Ä¿¼­ °íÁ¤ ¼³Á¤"; + SlotName[ turkish ] = "Ýmleci, sabitleyici üzerine yerleþtir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_UNCHAIN +{ + SlotName = "Verkettung lösen"; + SlotName [ english ] = "Verkettung lösen"; + SlotName[ english_us ] = "Unlink Frames"; + SlotName[ portuguese ] = "Desligar molduras"; + SlotName[ russian ] = "Îòìåíèòü ñöåïëåíèå"; + SlotName[ dutch ] = "Koppeling verwijderen"; + SlotName[ french ] = "Libérer l'enchaînement"; + SlotName[ spanish ] = "Eliminar vínculo"; + SlotName[ italian ] = "Annulla concatenazione"; + SlotName[ danish ] = "Ophæv kæder"; + SlotName[ swedish ] = "Lösgör sammanfogning"; + SlotName[ polish ] = "Roz³¹cz ramki"; + SlotName[ portuguese_brazilian ] = "UnhainFrames"; + SlotName[ japanese ] = "÷½ÄÎÞ¯¸½˜AŒ‹‚̉ð�œ"; + SlotName[ chinese_simplified ] = "½â¿ªÁ¬½Ó"; + SlotName[ chinese_traditional ] = "§R°£³sµ²"; + SlotName[ arabic ] = "Ýß ÇáÊÑÇÈØ"; + SlotName[ dutch ] = "Koppeling verwijderen"; + SlotName[ chinese_simplified ] = "½â¿ªÁ¬½Ó"; + SlotName[ greek ] = "ÊáôÜñãçóç óýíäåóçò"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ ¿¬°áÁß´Ü"; + SlotName[ turkish ] = "Baðlamayý çöz"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_UP +{ + SlotName = "Nach vorn"; + SlotName [ english ] = "Nach vorn"; + SlotName[ english_us ] = "Bring Forward"; + SlotName[ portuguese ] = "Para a frente"; + SlotName[ russian ] = "Âïåðåä"; + SlotName[ dutch ] = "Naar voren"; + SlotName[ french ] = "Vers l'avant"; + SlotName[ spanish ] = "Hacia adelante"; + SlotName[ italian ] = "In avanti"; + SlotName[ danish ] = "Flyt fremad"; + SlotName[ swedish ] = "Framåt"; + SlotName[ polish ] = "Do przodu"; + SlotName[ portuguese_brazilian ] = "ObjectForwardOne"; + SlotName[ japanese ] = "‘O‚Ö"; + SlotName[ chinese_simplified ] = "ǰÖÃ"; + SlotName[ chinese_traditional ] = "«e¸m"; + SlotName[ arabic ] = "ÅÍÖÇÑ ÃãÇãÇð"; + SlotName[ dutch ] = "Naar voren"; + SlotName[ chinese_simplified ] = "ǰÖÃ"; + SlotName[ greek ] = "Ðñïò ôá åìðñüò"; + SlotName[ korean ] = "¾ÕÀ¸·Î °¡Á®¿À±â"; + SlotName[ turkish ] = "Öne al"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAP +{ + SlotName = "Umlauf ein"; + SlotName [ english ] = "Umlauf ein"; + SlotName[ english_us ] = "Wrap On"; + SlotName[ portuguese ] = "Activar ajuste"; + SlotName[ russian ] = "Âêë. îáòåêàíèå"; + SlotName[ dutch ] = "Omloop in"; + SlotName[ french ] = "Adaptation du texte"; + SlotName[ spanish ] = "Activar Ajuste"; + SlotName[ italian ] = "Scorrimento on"; + SlotName[ danish ] = "Aktiver ombrydning"; + SlotName[ swedish ] = "Textanpassning på"; + SlotName[ polish ] = "W³¹cz obieg"; + SlotName[ portuguese_brazilian ] = "FrameWrapOn"; + SlotName[ japanese ] = "�Ü‚è•Ô‚µ µÝ"; + SlotName[ chinese_simplified ] = "ʹÓû·ÈÆ"; + SlotName[ chinese_traditional ] = "¨Ï¥Î´«¦æ"; + SlotName[ arabic ] = "ÊÔÛíá ÇáÇáÊÝÇÝ"; + SlotName[ dutch ] = "Omloop in"; + SlotName[ chinese_simplified ] = "ʹÓû·ÈÆ"; + SlotName[ greek ] = "Åíåñãïðïßçóç áíáäßðëùóçò"; + SlotName[ korean ] = "¼øÈ¯ Àû¿ë"; + SlotName[ turkish ] = "Metin daðýlýmý açýk"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAP_CONTOUR +{ + SlotName = "Konturumlauf ein"; + SlotName [ english ] = "Konturumlauf ein"; + SlotName[ english_us ] = "Wrap Contour On"; + SlotName[ portuguese ] = "Activar contornos"; + SlotName[ russian ] = "Âêë. îáòåêàíèå ïî êîíòóðó"; + SlotName[ dutch ] = "Contouromloop aan"; + SlotName[ french ] = "Mode Contour"; + SlotName[ spanish ] = "Contorno"; + SlotName[ italian ] = "Scorrimento sul contorno on"; + SlotName[ danish ] = "Aktiver konturombrydning"; + SlotName[ swedish ] = "Konturanpassning på"; + SlotName[ polish ] = "W³¹cz obieg konturu"; + SlotName[ portuguese_brazilian ] = "WrapContour"; + SlotName[ japanese ] = "—ÖŠs�Ü‚è•Ô‚µ µÝ"; + SlotName[ chinese_simplified ] = "ÏÔʾÂÖÀª»·ÈÆ"; + SlotName[ chinese_traditional ] = "Åã¥Ü½ü¹øÀô¶"; + SlotName[ arabic ] = "ÊÔÛíá ÇáÊÝÇÝ ÇáÍÏæÏ ÇáÎÇÑÌíÉ"; + SlotName[ dutch ] = "Contouromloop aan"; + SlotName[ chinese_simplified ] = "ÏÔʾÂÖÀª»·ÈÆ"; + SlotName[ greek ] = "Ìå áíáäßðëùóç ðåñéãñÜììáôïò"; + SlotName[ korean ] = "À±°û ¼øÈ¯ Àû¿ë"; + SlotName[ turkish ] = "Kontur açýk"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAP_IDEAL +{ + SlotName = "Umlauf dynamisch"; + SlotName [ english ] = "Umlauf dynamisch"; + SlotName[ english_us ] = "Wrap Optimal"; + SlotName[ portuguese ] = "Ajuste dinâmico"; + SlotName[ russian ] = "Îáòåêàíèå îïòèìàëüíî"; + SlotName[ dutch ] = "Omloop dynamisch"; + SlotName[ french ] = "Adaptation dynamique"; + SlotName[ spanish ] = "Ajuste dinámico"; + SlotName[ italian ] = "Scorrimento dinamico"; + SlotName[ danish ] = "Dynamisk ombrydning"; + SlotName[ swedish ] = "Dynamisk textanpassning"; + SlotName[ polish ] = "Obieg dynamiczny"; + SlotName[ portuguese_brazilian ] = "FrameWrapIdeal"; + SlotName[ japanese ] = "“®“I‚È�Ü‚è•Ô‚µ"; + SlotName[ chinese_simplified ] = "×î¼Ñ»·ÈÆ"; + SlotName[ chinese_traditional ] = "¦Û°ÊÀô¶´«¦æ"; + SlotName[ arabic ] = "ÇáÊÝÇÝ ÏíäÇãíßí"; + SlotName[ dutch ] = "Omloop dynamisch"; + SlotName[ chinese_simplified ] = "×î¼Ñ»·ÈÆ"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÄõíáìéêÞ áíáäßðëùóç"; + SlotName[ korean ] = "ÃÖÀû ¼øÈ¯"; + SlotName[ turkish ] = "Dinamik metin daðýlýmý"; +}; +SfxSlotInfo FN_FRAME_WRAP_LEFT +{ + SlotName = "Umlauf links"; + SlotName [ english ] = "Umlauf links"; + SlotName[ english_us ] = "Wrap Left"; + SlotName[ portuguese ] = "Ajuste à esquerda"; + SlotName[ russian ] = "Îáòåêàíèå ñëåâà"; + SlotName[ dutch ] = "Omloop links"; + SlotName[ french ] = "Adaptation à gauche"; + SlotName[ spanish ] = "Ajuste izquierda"; + SlotName[ italian ] = "Scorrimento a sinistra"; + SlotName[ danish ] = "Ombrydning til venstre"; + SlotName[ swedish ] = "Textanpassning vänster"; + SlotName[ polish ] = "Obieg z lewej"; + SlotName[ portuguese_brazilian ] = "WrapLeft"; + SlotName[ japanese ] = "�Ü‚è•Ô‚µ �¶"; + SlotName[ chinese_simplified ] = "×óÏò»·ÈÆ"; + SlotName[ chinese_traditional ] = "¥ª¦V´«¦æ"; + SlotName[ arabic ] = "ÇáÊÝÇÝ Åáì ÇáíÓÇÑ"; + SlotName[ dutch ] = "Omloop links"; + SlotName[ chinese_simplified ] = "×óÏò»·ÈÆ"; + SlotName[ greek ] = "Áíáäßðëùóç áñéóôåñÜ"; + SlotName[ korean ] = "¿ÞÂÊ ¼øÈ¯"; + SlotName[ turkish ] = "Sol metin daðýlýmý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAP_RIGHT +{ + SlotName = "Umlauf rechts"; + SlotName [ english ] = "Umlauf rechts"; + SlotName[ english_us ] = "Wrap Right"; + SlotName[ portuguese ] = "Ajuste à direita"; + SlotName[ russian ] = "Îáòåêàíèå ñïðàâà"; + SlotName[ dutch ] = "Omloop rechts"; + SlotName[ french ] = "Adaptation à droite"; + SlotName[ spanish ] = "Ajuste derecha"; + SlotName[ italian ] = "Scorrimento a destra"; + SlotName[ danish ] = "Ombrydning til højre"; + SlotName[ swedish ] = "Textanpassning höger"; + SlotName[ polish ] = "Obieg z prawej"; + SlotName[ portuguese_brazilian ] = "WrapRight"; + SlotName[ japanese ] = "�Ü‚è•Ô‚µ ‰E"; + SlotName[ chinese_simplified ] = "ÓÒÏò»·ÈÆ"; + SlotName[ chinese_traditional ] = "¥k¦V´«¦æ"; + SlotName[ arabic ] = "ÇáÊÝÇÝ Åáì Çáíãíä"; + SlotName[ dutch ] = "Omloop rechts"; + SlotName[ chinese_simplified ] = "ÓÒÏò»·ÈÆ"; + SlotName[ greek ] = "Áíáäßðëùóç äåîéÜ"; + SlotName[ korean ] = "¿À¸¥ÂÊ ¼øÈ¯"; + SlotName[ turkish ] = "Sað metin daðýlýmý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAPTHRU +{ + SlotName = "Durchlauf"; + SlotName [ english ] = "Durchlauf"; + SlotName[ english_us ] = "Wrap Through"; + SlotName[ portuguese ] = "Através do objecto"; + SlotName[ russian ] = "Ñêâîçíîå îáòåêàíèå"; + SlotName[ dutch ] = "Doorloop"; + SlotName[ french ] = "À travers"; + SlotName[ spanish ] = "Continuo"; + SlotName[ italian ] = "Attraverso"; + SlotName[ danish ] = "Gennemgående"; + SlotName[ swedish ] = "Textgenomflöde"; + SlotName[ polish ] = "Przep³yw tekstu"; + SlotName[ portuguese_brazilian ] = "FrameWrapThrough"; + SlotName[ japanese ] = "�Ü‚è•Ô‚µ‚È‚µ"; + SlotName[ chinese_simplified ] = "¹á´©"; + SlotName[ chinese_traditional ] = "¤£Àô¶"; + SlotName[ arabic ] = "ÚÈÑ"; + SlotName[ dutch ] = "Doorloop"; + SlotName[ chinese_simplified ] = "¹á´©"; + SlotName[ greek ] = "Äéá ìÝóïõ"; + SlotName[ korean ] = "Àüü ¼øÈ¯"; + SlotName[ turkish ] = "Metin arkasýna gönder"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FRAME_WRAPTHRU_TRANSP +{ + SlotName = "Durchlauf transparent"; + SlotName [ english ] = "Durchlauf transparent"; + SlotName[ english_us ] = "Wrap Transparent"; + SlotName[ portuguese ] = "Ajuste contínuo transparente"; + SlotName[ russian ] = "Ïðîçðà÷íîå ñêâîçíîå îáòåêàíèå"; + SlotName[ dutch ] = "Doorloop transparant"; + SlotName[ french ] = "À l'arrière-plan transparent"; + SlotName[ spanish ] = "Continuo transparente"; + SlotName[ italian ] = "Attraversa trasparente"; + SlotName[ danish ] = "Transparent gennemgående"; + SlotName[ swedish ] = "Tranparent textgenomflöde"; + SlotName[ polish ] = "Przezroczysty przep³yw tekstu"; + SlotName[ portuguese_brazilian ] = "FrameWrapThroughTransparent"; + SlotName[ japanese ] = "”wŒi‚Æ‚µ‚Ä"; + SlotName[ chinese_simplified ] = "͸Ã÷¹á´©"; + SlotName[ chinese_traditional ] = "¤£Àô¶³z©ú"; + SlotName[ arabic ] = "ÇáÊÝÇÝ ÔÝÇÝ"; + SlotName[ dutch ] = "Doorloop transparant"; + SlotName[ chinese_simplified ] = "͸Ã÷¹á´©"; + SlotName[ greek ] = "Áíáäßðëùóç äéáöáíÝò"; + SlotName[ korean ] = "Åõ¸í ¼øÈ¯"; + SlotName[ turkish ] = "Metin arkasýna gönder (saydam)"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GLOSSARY_DLG +{ + SlotName = "Autotext bearbeiten"; + SlotName [ english ] = "Autotext bearbeiten"; + SlotName[ english_us ] = "Edit AutoText"; + SlotName[ portuguese ] = "Editar AutoTexto"; + SlotName[ russian ] = "Ïðàâêà Àâòîòåêñòà"; + SlotName[ dutch ] = "AutoTekst bewerken"; + SlotName[ french ] = "Éditer l'AutoTexte"; + SlotName[ spanish ] = "Editar AutoTexto"; + SlotName[ italian ] = "Modifica testo automatico"; + SlotName[ danish ] = "Rediger AutoTekst"; + SlotName[ swedish ] = "Redigera AutoText"; + SlotName[ polish ] = "Edytuj autotekst"; + SlotName[ portuguese_brazilian ] = "EditAutoText"; + SlotName[ japanese ] = "“ü—ÍŽx‰‡‚Å•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­×Ô¶¯Í¼Îļ¯"; + SlotName[ chinese_traditional ] = "½s¿è¦Û°Ê¹Ï¤å¶°"; + SlotName[ arabic ] = "ÊÍÑíÑ ÇáäÕ ÇáÊáÞÇÆí"; + SlotName[ dutch ] = "AutoTekst bewerken"; + SlotName[ chinese_simplified ] = "±à¼­×Ô¶¯Í¼Îļ¯"; + SlotName[ greek ] = "ÁõôïÊåßìåíï"; + SlotName[ korean ] = "ÀÚµ¿ ÅØ½ºÆ®"; + SlotName[ turkish ] = "Otomatik metni düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_NEXT_INPUTFLD +{ + SlotName = "Zum nächsten Eingabefeld"; + SlotName [ english ] = "Zum nächsten Eingabefeld"; + SlotName[ english_us ] = "To Next Input Field"; + SlotName[ portuguese ] = "Ir para campo de entrada seguinte"; + SlotName[ russian ] = "Ïåðåéòè ê ñëåäóþùåìó ïîëþ ââîäà"; + SlotName[ dutch ] = "Naar volgend invoerveld"; + SlotName[ french ] = "Au champ de saisie suivant"; + SlotName[ spanish ] = "Ir al campo de entrada siguiente"; + SlotName[ italian ] = "Al campo di digitazione successivo"; + SlotName[ danish ] = "Til næste input-felt"; + SlotName[ swedish ] = "Till nästa inmatningsfält"; + SlotName[ polish ] = "Do nastêpnego pola wprowadzania"; + SlotName[ portuguese_brazilian ] = "GotoNextInputField"; + SlotName[ japanese ] = "ŽŸ‚Ì“ü—ÍÎÞ¯¸½‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÊäÈë×Ö¶Î"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¿é¤JÄæ¦ì"; + SlotName[ arabic ] = "Åáì ÍÞá ÇáÅÏÎÇá ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgend invoerveld"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÊäÈë×Ö¶Î"; + SlotName[ greek ] = "Ðñïò ôï åðüìåíï ðåäßï åéóáãùãÞò"; + SlotName[ korean ] = "´ÙÀ½ ÀÔ·Â Çʵå·Î"; + SlotName[ turkish ] = "Sonraki giriþ alaný"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_NEXT_MARK +{ + SlotName = "Zum nächsten Platzhalter"; + SlotName [ english ] = "Zum nächsten Platzhalter"; + SlotName[ english_us ] = "To Next Placeholder"; + SlotName[ portuguese ] = "Marcador de posição seguinte"; + SlotName[ russian ] = "Ïåðåéòè ê ñëåäóþùåìó ìåñòîçàïîëíèòåëþ"; + SlotName[ dutch ] = "Naar volgende plaatsvervanger"; + SlotName[ french ] = "Au substituant suivant"; + SlotName[ spanish ] = "Ir al comodín siguiente"; + SlotName[ italian ] = "Al segnaposto successivo"; + SlotName[ danish ] = "Til næste pladsholder"; + SlotName[ swedish ] = "Till nästa platshållare"; + SlotName[ polish ] = "Do nastêpnego znaku- wype³niacza"; + SlotName[ portuguese_brazilian ] = "GotoNextPlacemarker"; + SlotName[ japanese ] = "ŽŸ‚ÌÌßÚ°½ÎÙÀÞ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öͨÅä·û"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó³q°t²Å"; + SlotName[ arabic ] = "Åáì ÇáÚäÕÑ ÇáäÇÆÈ ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgende plaatsvervanger"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öͨÅä·û"; + SlotName[ greek ] = "Ðñïò ôï åðüìåíï óýìâïëï êñÜôçóçò èÝóçò"; + SlotName[ korean ] = "´ÙÀ½ °³Ã¼Æ²·Î"; + SlotName[ turkish ] = "Sonraki genel arama karakteri"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_NEXT_OBJ +{ + SlotName = "Zum nächsten Objekt"; + SlotName [ english ] = "Zum nächsten Objekt"; + SlotName[ english_us ] = "To Next Object"; + SlotName[ portuguese ] = "Ir para objecto seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåãî îáúåêòà"; + SlotName[ dutch ] = "Naar volgend object"; + SlotName[ french ] = "A l'objet suivant"; + SlotName[ spanish ] = "Ir al objeto siguiente"; + SlotName[ italian ] = "All'oggetto successivo"; + SlotName[ danish ] = "Til næste objekt"; + SlotName[ swedish ] = "Till nästa objekt"; + SlotName[ polish ] = "Do nastêpnego obiektu"; + SlotName[ portuguese_brazilian ] = "GotoNextObject"; + SlotName[ japanese ] = "ŽŸ‚̵ÌÞ¼Þª¸Ä‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¶ÔÏó"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Óª«¥ó"; + SlotName[ arabic ] = "Åáì ÇáßÇÆä ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgend object"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¶ÔÏó"; + SlotName[ greek ] = "Åðüìåíï áíôéêåßìåíï"; + SlotName[ korean ] = "´ÙÀ½ °³Ã¼·Î"; + SlotName[ turkish ] = "Sonraki nesne"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_NEXT_REGION +{ + SlotName = "Zum nächsten Bereich"; + SlotName [ english ] = "Zum nächsten Bereich"; + SlotName[ english_us ] = "To Next Section"; + SlotName[ portuguese ] = "Secção seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåãî ðàçäåëà"; + SlotName[ dutch ] = "Naar volgend bereik"; + SlotName[ french ] = "A la section suivante"; + SlotName[ spanish ] = "A la área siguiente"; + SlotName[ italian ] = "All'area successiva"; + SlotName[ danish ] = "Til næste område"; + SlotName[ swedish ] = "Till nästa område"; + SlotName[ polish ] = "Do nastêpnego obszaru"; + SlotName[ portuguese_brazilian ] = "JumpToNextRegion"; + SlotName[ japanese ] = "ŽŸ‚̗̈æ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÇøÓò"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@°Ï°ì"; + SlotName[ arabic ] = "Åáì ÇáäØÇÞ ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgend bereik"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÇøÓò"; + SlotName[ greek ] = "Åðüìåíç åíüôçôá"; + SlotName[ korean ] = "´ÙÀ½ ±¸¿ªÀ¸·Î"; + SlotName[ turkish ] = "Sonraki bölüm"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_PREV_INPUTFLD +{ + SlotName = "Zum vorherigen Eingabefeld"; + SlotName [ english ] = "Zum vorherigen Eingabefeld"; + SlotName[ english_us ] = "To Previous Input Field"; + SlotName[ portuguese ] = "Ir para campo de entrada anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî ïîëÿ ââîäà"; + SlotName[ dutch ] = "Naar vorig invoerveld"; + SlotName[ french ] = "Au champ de saisie précédent"; + SlotName[ spanish ] = "Ir al campo de entrada anterior"; + SlotName[ italian ] = "Al campo di digitazione precedente"; + SlotName[ danish ] = "Til forrige input-felt"; + SlotName[ swedish ] = "Till föregående inmatningsfält"; + SlotName[ polish ] = "Do poprzedniego pola wprowadzania"; + SlotName[ portuguese_brazilian ] = "GoToPrevInputField"; + SlotName[ japanese ] = "‘O‚Ì“ü—ÍÎÞ¯¸½‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÊäÈë×Ö¶Î"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@¿é¤JÄæ¦ì"; + SlotName[ arabic ] = "Åáì ÍÞá ÇáÅÏÎÇá ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorig invoerveld"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÊäÈë×Ö¶Î"; + SlotName[ greek ] = "Ðñïò ôï ðñïçãïýìåíï ðåäßï åéóáãùãÞò"; + SlotName[ korean ] = "ÀÌÀü ÀÔ·Â Çʵå·Î"; + SlotName[ turkish ] = "Önceki giriþ alaný"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_PREV_MARK +{ + SlotName = "Zum vorherigen Platzhalter"; + SlotName [ english ] = "Zum vorherigen Platzhalter"; + SlotName[ english_us ] = "To Previous Placeholder"; + SlotName[ portuguese ] = "Marcador de posição anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî ìåñòîçàïîëíèòåëÿ"; + SlotName[ dutch ] = "Naar vorige plaatsvervanger"; + SlotName[ french ] = "Au substituant précédent"; + SlotName[ spanish ] = "Ir al comodín anterior"; + SlotName[ italian ] = "Al segnaposto precedente"; + SlotName[ danish ] = "Til forrige pladsholder"; + SlotName[ swedish ] = "Till föregående platshållare"; + SlotName[ polish ] = "Do poprzedniego znaku-wype³niacza"; + SlotName[ portuguese_brazilian ] = "GoToPrevPlacemarker"; + SlotName[ japanese ] = "‘O‚ÌÌßÚ°½ÎÙÀÞ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öͨÅä·û"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó³q°t²Å"; + SlotName[ arabic ] = "Åáì ÇáÚäÕÑ ÇáäÇÆÈ ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorige plaatsvervanger"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öͨÅä·û"; + SlotName[ greek ] = "Ðñïò ôï ðñïçãïýìåíï óýìâïëï êñÜôçóçò èÝóçò"; + SlotName[ korean ] = "ÀÌÀü °³Ã¼Æ²·Î"; + SlotName[ turkish ] = "Önceki genel arama karakteri"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_PREV_OBJ +{ + SlotName = "Zum vorherigen Objekt"; + SlotName [ english ] = "Zum vorherigen Objekt"; + SlotName[ english_us ] = "To Previous Object"; + SlotName[ portuguese ] = "Ir para objecto anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî îáúåêòà"; + SlotName[ dutch ] = "Naar vorig object"; + SlotName[ french ] = "Aller à l'objet précédent"; + SlotName[ spanish ] = "Ir al objeto anterior"; + SlotName[ italian ] = "All'oggetto precedente"; + SlotName[ danish ] = "Til forrige objekt"; + SlotName[ swedish ] = "Till föregående objekt"; + SlotName[ polish ] = "Do poprzedniego objektu"; + SlotName[ portuguese_brazilian ] = "GoToPrevObject"; + SlotName[ japanese ] = "‘O‚̵ÌÞ¼Þª¸Ä‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¶ÔÏó"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Óª«¥ó"; + SlotName[ arabic ] = "Åáì ÇáßÇÆä ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorig object"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¶ÔÏó"; + SlotName[ greek ] = "Ðñïçãïýìåíï áíôéêåßìåíï"; + SlotName[ korean ] = "ÀÌÀü °³Ã¼·Î"; + SlotName[ turkish ] = "Önceki nesne"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_PREV_REGION +{ + SlotName = "Zum vorherigen Bereich"; + SlotName [ english ] = "Zum vorherigen Bereich"; + SlotName[ english_us ] = "To Previous Section"; + SlotName[ portuguese ] = "Secção anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî ðàçäåëà"; + SlotName[ dutch ] = "Naar vorige bereik"; + SlotName[ french ] = "A la section précédente"; + SlotName[ spanish ] = "Ir al área anterior"; + SlotName[ italian ] = "All'area precedente"; + SlotName[ danish ] = "Til forrige område"; + SlotName[ swedish ] = "Till föregående område"; + SlotName[ polish ] = "Do nastêpnego obszaru"; + SlotName[ portuguese_brazilian ] = "JumpToPrevRegion"; + SlotName[ japanese ] = "‘O‚̗̈æ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÇøÓò"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó°Ï°ì"; + SlotName[ arabic ] = "Åáì ÇáäØÇÞ ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorige bereik"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÇøÓò"; + SlotName[ greek ] = "Ðñïçãïýìåíç åíüôçôá"; + SlotName[ korean ] = "ÀÌÀü ±¸¿ªÀ¸·Î"; + SlotName[ turkish ] = "Önceki alan"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GOTO_REFERENCE +{ + SlotName = "Zur Referenz"; + SlotName [ english ] = "Zur Referenz"; + SlotName[ english_us ] = "To Reference"; + SlotName[ portuguese ] = "Ir para referência"; + SlotName[ russian ] = "Äî ññûëêè"; + SlotName[ dutch ] = "Bij verwijzing"; + SlotName[ french ] = "A la référence"; + SlotName[ spanish ] = "Ir a la referencia"; + SlotName[ italian ] = "Al riferimento"; + SlotName[ danish ] = "Til reference"; + SlotName[ swedish ] = "Till referens"; + SlotName[ polish ] = "Do odwo³ania"; + SlotName[ portuguese_brazilian ] = "GoToReference"; + SlotName[ japanese ] = "ŽQ�Æ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÒýÓÃ"; + SlotName[ chinese_traditional ] = "Âà¨ì°Ñ·Ó"; + SlotName[ arabic ] = "Åáì ÇáãÑÌÚ"; + SlotName[ dutch ] = "Bij verwijzing"; + SlotName[ chinese_simplified ] = "תµ½ÒýÓÃ"; + SlotName[ greek ] = "Ðñïò áíáöïñÜ"; + SlotName[ korean ] = "ÂüÁ¶·Î"; + SlotName[ turkish ] = "Referans"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_GRAPHIC_MIRROR_ON_EVEN_PAGES +{ + SlotName = "Grafik auf geraden Seiten spiegeln"; + SlotName [ english ] = "Grafik auf geraden Seiten spiegeln"; + SlotName[ english_us ] = "Flip Graphics on Even Pages"; + SlotName[ portuguese ] = "Reflectir imagem nas páginas pares"; + SlotName[ russian ] = "Îòîáðàçèòü îáúåêòû íà ÷åòíûõ ñòðàíèöàõ"; + SlotName[ dutch ] = "Afbeeldingen op even pagina's spiegelen"; + SlotName[ french ] = "Refléter l'image sur les pages paires"; + SlotName[ spanish ] = "Reflejar imagen en las páginas pares"; + SlotName[ italian ] = "Rispecchia le immagini sulle pagine pari"; + SlotName[ danish ] = "Spejlvend grafik på lige sider"; + SlotName[ swedish ] = "Spegla grafik på jämna sidor"; + SlotName[ polish ] = "Przerzuæ grafikê na nieparzystych stronach"; + SlotName[ portuguese_brazilian ] = "MirrorGraphicOnEvenPages"; + SlotName[ japanese ] = "¸Þ×̨¯¸‚ð‹ô�”Íß°¼Þ‚É”½“]"; + SlotName[ chinese_simplified ] = "ͼÐη´Ó³µ½Å¼ÊýÒ³Ãæ"; + SlotName[ chinese_traditional ] = "¹Ï¤ù¤Ï¬M¨ì°¸¼Æ­¶­±"; + SlotName[ arabic ] = "ÇäÚßÇÓ ÇáÕæÑÉ Úáì ÇáÕÝÍÇÊ ÇáÒæÌíÉ"; + SlotName[ dutch ] = "Afbeeldingen op even pagina's spiegelen"; + SlotName[ chinese_simplified ] = "ͼÐη´Ó³µ½Å¼ÊýÒ³Ãæ"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÁíáóôñïöÞ ãñáöéêïý óôéò Üñôéåò óåëßäåò"; + SlotName[ korean ] = "¦¼ö ÆäÀÌÁö»óÀÇ ±×·¡ÇÈ ´ëĪ"; + SlotName[ turkish ] = "Grafiði çift sayýlý sayfalarda yansýt"; +}; +SfxSlotInfo FN_GROW_FONT_SIZE +{ + SlotName = "Zeichen vergrößern"; + SlotName [ english ] = "Zeichen vergrößern"; + SlotName[ english_us ] = "Increase Font"; + SlotName[ portuguese ] = "Aumentar caracteres"; + SlotName[ russian ] = "Óâåëè÷èòü øðèôò"; + SlotName[ dutch ] = "Tekens vergroten"; + SlotName[ french ] = "Agrandir caractère"; + SlotName[ spanish ] = "Aumentar fuente"; + SlotName[ italian ] = "Ingrandisci carattere"; + SlotName[ danish ] = "Forstør tegn"; + SlotName[ swedish ] = "Förstora tecken"; + SlotName[ polish ] = "Powiêksz znaki"; + SlotName[ portuguese_brazilian ] = "IncreaseFontSize"; + SlotName[ japanese ] = "•¶Žš‚ÌŠg‘å"; + SlotName[ chinese_simplified ] = "·Å´ó×Ö·û"; + SlotName[ chinese_traditional ] = "©ñ¤j¦r¤¸"; + SlotName[ arabic ] = "ÊßÈíÑ ÇáÎØ"; + SlotName[ dutch ] = "Tekens vergroten"; + SlotName[ chinese_simplified ] = "·Å´ó×Ö·û"; + SlotName[ greek ] = "ÌåãÝíèõóç ÷áñáêôÞñùí"; + SlotName[ korean ] = "±Û²Ã Å©°Ô"; + SlotName[ turkish ] = "Kürükteri büyüt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_HSCROLLBAR +{ + SlotName = "Horizontal rollen"; + SlotName [ english ] = "Horizontal rollen"; + SlotName[ english_us ] = "Scroll Horizontal"; + SlotName[ portuguese ] = "Deslocamento horizontal"; + SlotName[ russian ] = "Ïðîêðóòèòü ïî ãîðèçîíòàëè"; + SlotName[ dutch ] = "Horizontaal scrollen"; + SlotName[ french ] = "Défilement horizontal"; + SlotName[ spanish ] = "Desplazamiento Horizontal"; + SlotName[ italian ] = "Scorrimento orizzontale"; + SlotName[ danish ] = "Rull vandret"; + SlotName[ swedish ] = "Rulla horisontellt"; + SlotName[ polish ] = "Przesuwaj poziomo"; + SlotName[ portuguese_brazilian ] = "ViewHScroll"; + SlotName[ japanese ] = "�…•½½¸Û°Ù"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò¹ö¶¯"; + SlotName[ chinese_traditional ] = "¤ô¥­ºu°Ê"; + SlotName[ arabic ] = "ÊÍÑíß ÇáÕÝÍÉ ÃÝÞíÇð"; + SlotName[ dutch ] = "Horizontaal scrollen"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò¹ö¶¯"; + SlotName[ greek ] = "Ïñéæüíôéá êýëéóç"; + SlotName[ korean ] = "¼öÆò ½ºÅ©·Ñ"; + SlotName[ turkish ] = "Yatay kaydýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_HYPHENATE_OPT_DLG +{ + SlotName = "Silbentrennung"; + SlotName [ english ] = "Silbentrennung"; + SlotName[ english_us ] = "Hyphenation"; + SlotName[ portuguese ] = "Divisão silábica"; + SlotName[ russian ] = "Ðàññòàíîâêà ïåðåíîñîâ"; + SlotName[ dutch ] = "Woordafbreking"; + SlotName[ french ] = "Coupure de mots"; + SlotName[ spanish ] = "Separación silábica"; + SlotName[ italian ] = "Sillabazione"; + SlotName[ danish ] = "Orddeling"; + SlotName[ swedish ] = "Avstavning"; + SlotName[ polish ] = "Dzielenie wyrazów"; + SlotName[ portuguese_brazilian ] = "Hyphenate"; + SlotName[ japanese ] = "ʲÌȰ¼®Ý"; + SlotName[ chinese_simplified ] = "Á¬×Ö·û"; + SlotName[ chinese_traditional ] = "³s¦r²Å"; + SlotName[ arabic ] = "ÝÕá ÇáãÞÇØÚ"; + SlotName[ dutch ] = "Woordafbreking"; + SlotName[ chinese_simplified ] = "Á¬×Ö·û"; + SlotName[ greek ] = "Óõëëáâéóìüò"; + SlotName[ korean ] = "ÇÏÀÌÇÂ"; + SlotName[ turkish ] = "Heceleme"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_IDX_MARK_TO_IDX +{ + SlotName = "Indexmarke zum Index"; + SlotName [ english ] = "Indexmarke zum Index"; + SlotName[ english_us ] = "Index Mark to Index"; + SlotName[ portuguese ] = "Marca de índice para o Índice"; + SlotName[ russian ] = "Ìåòêà èíäåêñà äëÿ èíäåêñà"; + SlotName[ dutch ] = "Indexwijzer naar index"; + SlotName[ french ] = "Marque d'index à l'index"; + SlotName[ spanish ] = "Marca de índice al índice"; + SlotName[ italian ] = "Contrassegnno per l'indice"; + SlotName[ danish ] = "Indeksmarkering til indeks"; + SlotName[ swedish ] = "Indexmärke till index"; + SlotName[ polish ] = "Znacznik indeksu do indeksu"; + SlotName[ portuguese_brazilian ] = "IndexMarkToIndex"; + SlotName[ japanese ] = "²ÝÃÞ¯¸½Ï°¸‚ð�õˆø�€–Ú‚Ö"; + SlotName[ chinese_simplified ] = "Ö¸ÏòË÷ÒýµÄË÷Òý±ê¼Ç"; + SlotName[ chinese_traditional ] = "«ü¦V¯Á¤Þªº¯Á¤Þ¼Ð°O"; + SlotName[ arabic ] = "ÚáÇãÉ ÇáÝåÑÓ Åáì ÇáÝåÑÓ"; + SlotName[ dutch ] = "Indexwijzer naar index"; + SlotName[ chinese_simplified ] = "Ö¸ÏòË÷ÒýµÄË÷Òý±ê¼Ç"; + SlotName[ greek ] = "ÓçìÜäé åõñåôçñßïõ ðñïò åõñåôÞñéï"; + SlotName[ korean ] = "»öÀο¡ »öÀΠǥ½Ã"; + SlotName[ turkish ] = "Dizin için dizin iþareti"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INC_INDENT_OFFSET +{ + SlotName = "Einzug um Betrag erhöhen"; + SlotName [ english ] = "Einzug um Betrag erhöhen"; + SlotName[ english_us ] = "Increment Indent Value"; + SlotName[ portuguese ] = "Aumentar avanço de texto"; + SlotName[ russian ] = "Óâåëè÷èòü îòñóï ñîãëàñíî çíà÷åíèÿ"; + SlotName[ dutch ] = "Inspringing om getal vergroten"; + SlotName[ french ] = "Augmenter le retrait de"; + SlotName[ spanish ] = "Incrementar sangría en"; + SlotName[ italian ] = "Aumenta rientro valore"; + SlotName[ danish ] = "Forøg indrykning om værdi"; + SlotName[ swedish ] = "Öka indrag med enhet"; + SlotName[ polish ] = "Zwiêksz wciêcie o wartoœæ"; + SlotName[ portuguese_brazilian ] = "IncrementIndentValue"; + SlotName[ japanese ] = "²ÝÃÞÝĂ̒l‚ð‘�‚â‚·"; + SlotName[ chinese_simplified ] = "À©´óËõ½øÖµ"; + SlotName[ chinese_traditional ] = "ÂX¤jÁY±Æ­È"; + SlotName[ arabic ] = "ÒíÇÏÉ ãÞÏÇÑ ÇáÅÒÇÍÉ"; + SlotName[ dutch ] = "Inspringing om getal vergroten"; + SlotName[ chinese_simplified ] = "À©´óËõ½øÖµ"; + SlotName[ greek ] = "Áýîçóç åóï÷Þò êáôÜ ôçí ôéìÞ"; + SlotName[ korean ] = "µé¿©¾²±â °ª Áõ°¡"; + SlotName[ turkish ] = "Girintiyi büyüt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_BOOKMARK +{ + SlotName = "Textmarke einfügen"; + SlotName [ english ] = "Textmarke einfügen"; + SlotName[ english_us ] = "Insert Bookmark"; + SlotName[ portuguese ] = "Inserir marcador de texto"; + SlotName[ russian ] = "Âñòàâèòü çàêëàäêó"; + SlotName[ dutch ] = "Tekstmarkering invoegen"; + SlotName[ french ] = "Insérer un repère de texte"; + SlotName[ spanish ] = "Insertar marca"; + SlotName[ italian ] = "Inserisci segnalibro"; + SlotName[ danish ] = "Indsæt tekstmarkering"; + SlotName[ swedish ] = "Infoga bokmärke"; + SlotName[ polish ] = "Wstaw zak³adkê"; + SlotName[ portuguese_brazilian ] = "InsertBookmark"; + SlotName[ japanese ] = "÷½Äϰ¸‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÊéÇ©"; + SlotName[ chinese_traditional ] = "´¡¤J¤º¤å¼ÐÅÒ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅÔÇÑÉ ãÑÌÚíÉ"; + SlotName[ dutch ] = "Tekstmarkering invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÊéÇ©"; + SlotName[ greek ] = "ÅéóáãùãÞ óåëéäïäåßêôç"; + SlotName[ korean ] = "Ã¥ °¥ÇÇ »ðÀÔ"; + SlotName[ turkish ] = "Metin iþareti ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_BREAK +{ + SlotName = "Absatz einfügen"; + SlotName [ english ] = "Absatz einfügen"; + SlotName[ english_us ] = "Insert Paragraph"; + SlotName[ portuguese ] = "Inserir parágrafo"; + SlotName[ russian ] = "Âñòàâèòü àáçàö"; + SlotName[ dutch ] = "Alinea invoegen"; + SlotName[ french ] = "Insérer un paragraphe"; + SlotName[ spanish ] = "Insertar párrafo"; + SlotName[ italian ] = "Inserisci paragrafo"; + SlotName[ danish ] = "Indsæt afsnit"; + SlotName[ swedish ] = "Infoga stycke"; + SlotName[ polish ] = "Wstaw akapit"; + SlotName[ portuguese_brazilian ] = "InsertParagraph"; + SlotName[ japanese ] = "’i—Ž‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë¶ÎÂä"; + SlotName[ chinese_traditional ] = "´¡¤J¬q¸¨"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÞÑÉ"; + SlotName[ dutch ] = "Alinea invoegen"; + SlotName[ chinese_simplified ] = "²åÈë¶ÎÂä"; + SlotName[ greek ] = "ÅéóáãùãÞ ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ô »ðÀÔ"; + SlotName[ turkish ] = "Paragraf ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_BREAK_DLG +{ + SlotName = "Manuellen Umbruch einfügen"; + SlotName [ english ] = "Manuellen Umbruch einfügen"; + SlotName[ english_us ] = "Insert Manual Break"; + SlotName[ portuguese ] = "Inserir quebra manual"; + SlotName[ russian ] = "Âñòàâèòü âðó÷íóþ ðàçðûâ"; + SlotName[ dutch ] = "Handmatig einde invoegen"; + SlotName[ french ] = "Insérer un renvoi à la ligne manuel"; + SlotName[ spanish ] = "Insertar un salto manual"; + SlotName[ italian ] = "Inserisci interruzione manuale"; + SlotName[ danish ] = "Indsæt manuelt skift"; + SlotName[ swedish ] = "Infoga manuell brytning"; + SlotName[ polish ] = "Wstaw rêczny podzia³"; + SlotName[ portuguese_brazilian ] = "InsertBreak"; + SlotName[ japanese ] = "”CˆÓ‰üÍß°¼Þ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÊÖ¹¤»»Ðзû"; + SlotName[ chinese_traditional ] = "´¡¤J¤â¤u´«¦æ²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÇÕá íÏæí"; + SlotName[ dutch ] = "Handmatig einde invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÊÖ¹¤»»Ðзû"; + SlotName[ greek ] = "ÅéóáãùãÞ ÷åéñïêßíçôçò áëëáãÞò"; + SlotName[ korean ] = "¼öµ¿ ³ª´©±â »ðÀÔ"; + SlotName[ turkish ] = "Manüel kesme ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_CAPTION +{ + SlotName = "Beschriftung einfügen"; + SlotName [ english ] = "Beschriftung einfügen"; + SlotName[ english_us ] = "Insert Caption"; + SlotName[ portuguese ] = "Inserir legenda"; + SlotName[ russian ] = "Âñòàâèòü íàçâàíèå"; + SlotName[ dutch ] = "Bijschrift invoegen"; + SlotName[ french ] = "Insérer une légende"; + SlotName[ spanish ] = "Insertar etiqueta"; + SlotName[ italian ] = "Inserisci dicitura"; + SlotName[ danish ] = "Indsæt billedtekst"; + SlotName[ swedish ] = "Infoga bildtext"; + SlotName[ polish ] = "Wstaw opis"; + SlotName[ portuguese_brazilian ] = "InsertCaption"; + SlotName[ japanese ] = "×ÍÞÙ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë±êÌâ"; + SlotName[ chinese_traditional ] = "´¡¤J¼ÐÃD"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÓãíÉ ÊæÖíÍíÉ"; + SlotName[ dutch ] = "Bijschrift invoegen"; + SlotName[ chinese_simplified ] = "²åÈë±êÌâ"; + SlotName[ greek ] = "ÅéóáãùãÞ ëåæÜíôáò"; + SlotName[ korean ] = "ĸ¼Ç »ðÀÔ"; + SlotName[ turkish ] = "Resim yazýsý ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_COLUMN_BREAK +{ + SlotName = "Spaltenwechsel einfügen"; + SlotName [ english ] = "Spaltenwechsel einfügen"; + SlotName[ english_us ] = "Insert Column Break"; + SlotName[ portuguese ] = "Inserir quebra de coluna"; + SlotName[ russian ] = "Âñòàâèòü ðàçðûâ êîëîíêè"; + SlotName[ dutch ] = "Kolomeinde invoegen"; + SlotName[ french ] = "Insérer un saut de colonne"; + SlotName[ spanish ] = "Insertar cambio de columnas"; + SlotName[ italian ] = "Inserisci cambio colonna"; + SlotName[ danish ] = "Indsæt spalteskift"; + SlotName[ swedish ] = "Infoga kolumnbrytning"; + SlotName[ polish ] = "Wstaw podzia³ kolumn"; + SlotName[ portuguese_brazilian ] = "InsertColumnBreak"; + SlotName[ japanese ] = "‰ü—ñ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë·ÖÀ¸·û"; + SlotName[ chinese_traditional ] = "´¡¤J¤ÀÄæ²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÇÕá ÃÚãÏÉ"; + SlotName[ dutch ] = "Kolomeinde invoegen"; + SlotName[ chinese_simplified ] = "²åÈë·ÖÀ¸·û"; + SlotName[ greek ] = "ÅéóáãùãÞ áëëáãÞò óôÞëçò"; + SlotName[ korean ] = "¿­ ³ª´©±â »ðÀÔ"; + SlotName[ turkish ] = "Sütun sonu ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_CTRL +{ + SlotName = "Einfügen"; + SlotName [ english ] = "Einfügen"; + SlotName[ english_us ] = "Insert"; + SlotName[ portuguese ] = "Inserir"; + SlotName[ russian ] = "Âñòàâèòü"; + SlotName[ dutch ] = "Invoegen"; + SlotName[ french ] = "Insérer"; + SlotName[ spanish ] = "Insertar"; + SlotName[ italian ] = "Inserisci"; + SlotName[ danish ] = "Indsæt"; + SlotName[ swedish ] = "Infoga"; + SlotName[ polish ] = "Wstaw"; + SlotName[ portuguese_brazilian ] = "InsertCtrl"; + SlotName[ japanese ] = "‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë"; + SlotName[ chinese_traditional ] = "´¡¤J"; + SlotName[ arabic ] = "ÅÏÑÇÌ"; + SlotName[ dutch ] = "Invoegen"; + SlotName[ chinese_simplified ] = "²åÈë"; + SlotName[ greek ] = "ÅéóáãùãÞ"; + SlotName[ korean ] = "»ðÀÔ"; + SlotName[ turkish ] = "Ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_ENDNOTE +{ + SlotName = "Endnote direkt einfügen"; + SlotName [ english ] = "Endnote direkt einfügen"; + SlotName[ english_us ] = "Insert Endnote Directly"; + SlotName[ portuguese ] = "Inserir nota final directamente"; + SlotName[ russian ] = "Âñòàâèòü íåïîñðåäñòâåííî êîíöåâóþ ñíîñêó"; + SlotName[ dutch ] = "Eindnoot direct invoegen"; + SlotName[ french ] = "Insérer directement une note de fin"; + SlotName[ spanish ] = "Insertar nota final directamente"; + SlotName[ italian ] = "Inserisci direttamente nota di chiusura"; + SlotName[ danish ] = "Indsæt slutnote direkte"; + SlotName[ swedish ] = "Infoga slutnot direkt"; + SlotName[ polish ] = "Wstaw bezpoœrednio przypis koñcowy"; + SlotName[ portuguese_brazilian ] = "InsertEndnoteDirect"; + SlotName[ japanese ] = "•¶––‹r’�‚ð’¼�Ú‘}“ü"; + SlotName[ chinese_simplified ] = "Ö±½Ó²åÈëβע"; + SlotName[ chinese_traditional ] = "ª½±µ´¡¤J§Àª`"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÚáíÞ ÎÊÇãí ãÈÇÔÑÉ"; + SlotName[ dutch ] = "Eindnoot direct invoegen"; + SlotName[ chinese_simplified ] = "Ö±½Ó²åÈëβע"; + SlotName[ greek ] = "Áð åõèåßáò åéóáãùãÞ óçìåßùóçò ôÝëïõò"; + SlotName[ korean ] = "¹ÌÁÖ Á÷Á¢ »ðÀÔ"; + SlotName[ turkish ] = "Sonnotu doðrudan ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FIELD +{ + SlotName = "Feldbefehl einfügen"; + SlotName [ english ] = "Feldbefehl einfügen"; + SlotName[ english_us ] = "Insert Fields"; + SlotName[ portuguese ] = "Inserir código de campo"; + SlotName[ russian ] = "Âñòàâèòü ïîëå"; + SlotName[ dutch ] = "Veldopdracht invoegen"; + SlotName[ french ] = "Insérer une instruction de champ"; + SlotName[ spanish ] = "Insertar código de campo"; + SlotName[ italian ] = "Inserisci comando di campo"; + SlotName[ danish ] = "Indsæt felt"; + SlotName[ swedish ] = "Infoga fältkommando"; + SlotName[ polish ] = "Wstaw pola"; + SlotName[ portuguese_brazilian ] = "InsertFieldCode"; + SlotName[ japanese ] = "̨°ÙÄÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë×Ö¶ÎÖ¸Áî"; + SlotName[ chinese_traditional ] = "´¡¤JÄæ¦ì«ü¥O"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÞæá"; + SlotName[ dutch ] = "Veldopdracht invoegen"; + SlotName[ chinese_simplified ] = "²åÈë×Ö¶ÎÖ¸Áî"; + SlotName[ greek ] = "ÅéóáãùãÞ åíôïëÞò ðåäßïõ"; + SlotName[ korean ] = "ÇÊµå »ðÀÔ"; + SlotName[ turkish ] = "Alan öðesi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FIELD_CTRL +{ + SlotName = "Feldbefehle einfügen"; + SlotName [ english ] = "Feldbefehle einfügen"; + SlotName[ english_us ] = "Insert Fields"; + SlotName[ portuguese ] = "Inserir campos"; + SlotName[ russian ] = "Âñòàâèòü ïîëå"; + SlotName[ dutch ] = "Veldopdrachten invoegen"; + SlotName[ french ] = "Insérer des instructions de champ"; + SlotName[ spanish ] = "Insertar códigos de campo"; + SlotName[ italian ] = "Inserisci comandi di campo"; + SlotName[ danish ] = "Indsæt felter"; + SlotName[ swedish ] = "Infoga fältkommandon"; + SlotName[ polish ] = "Wstaw pola"; + SlotName[ portuguese_brazilian ] = "InsertFieldCtrl"; + SlotName[ japanese ] = "̨°ÙÄÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë×Ö¶ÎÖ¸Áî"; + SlotName[ chinese_traditional ] = "´¡¤JÄæ¦ì«ü¥O"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÞæá"; + SlotName[ dutch ] = "Veldopdrachten invoegen"; + SlotName[ chinese_simplified ] = "²åÈë×Ö¶ÎÖ¸Áî"; + SlotName[ greek ] = "ÅéóáãùãÞ åíôïëÞò ðåäßïõ"; + SlotName[ korean ] = "ÇÊµå »ðÀÔ"; + SlotName[ turkish ] = "Alan öðeleri ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_AUTHOR +{ + SlotName = "Autorenfeld einfügen"; + SlotName [ english ] = "Autorenfeld einfügen"; + SlotName[ english_us ] = "Insert Author Field"; + SlotName[ portuguese ] = "Inserir campo de autor"; + SlotName[ russian ] = "Âñòàâèòü ïîëå àâòîðà"; + SlotName[ dutch ] = "Auteurveld invoegen"; + SlotName[ french ] = "Insérer un champ d'auteur"; + SlotName[ spanish ] = "Insertar campo para autor"; + SlotName[ italian ] = "Inserisci campo autore"; + SlotName[ danish ] = "Indsæt forfatterfelt"; + SlotName[ swedish ] = "Infoga författarfält"; + SlotName[ polish ] = "Wstaw pole autora"; + SlotName[ portuguese_brazilian ] = "InsertAuthorField"; + SlotName[ japanese ] = "�ì�¬ŽǪ̀°ÙÄÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë×÷ÕßÀ¸"; + SlotName[ chinese_traditional ] = "´¡¤J§@ªÌ¿é¤JÄæ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÞá ãÄáÝ"; + SlotName[ dutch ] = "Auteurveld invoegen"; + SlotName[ chinese_simplified ] = "²åÈë×÷ÕßÀ¸"; + SlotName[ greek ] = "ÅéóáãùãÞ ðåäßï óõããñáöÝá"; + SlotName[ korean ] = "¸¸µçÀÌ ÇÊµå »ðÀÔ"; + SlotName[ turkish ] = "Yazan adý alaný ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_DATE +{ + SlotName = "Datum einfügen"; + SlotName [ english ] = "Datum einfügen"; + SlotName[ english_us ] = "Insert Date"; + SlotName[ portuguese ] = "Inserir data"; + SlotName[ russian ] = "Âñòàâèòü äàòó"; + SlotName[ dutch ] = "Datum invoegen"; + SlotName[ french ] = "Date"; + SlotName[ spanish ] = "Insertar fecha"; + SlotName[ italian ] = "Inserisci data"; + SlotName[ danish ] = "Indsæt dato"; + SlotName[ swedish ] = "Infoga datum"; + SlotName[ polish ] = "Wstaw datê"; + SlotName[ portuguese_brazilian ] = "Date"; + SlotName[ japanese ] = "“ú•t‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÈÕÆÚ"; + SlotName[ chinese_traditional ] = "´¡¤J¤é´Á"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÇáÊÇÑíÎ"; + SlotName[ dutch ] = "Datum invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÈÕÆÚ"; + SlotName[ greek ] = "ÅéóáãùãÞ çìåñïìçíßáò"; + SlotName[ korean ] = "³¯Â¥ »ðÀÔ"; + SlotName[ turkish ] = "Tarih ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_PGCOUNT +{ + SlotName = "Seitenanzahl einfügen"; + SlotName [ english ] = "Seitenanzahl einfügen"; + SlotName[ english_us ] = "Insert Page Count"; + SlotName[ portuguese ] = "Contar páginas"; + SlotName[ russian ] = "Âñòàâèòü êîëè÷åñòâî ñòðàíèö"; + SlotName[ dutch ] = "Pagina-aantal invoegen"; + SlotName[ french ] = "Insérer le nombre de pages"; + SlotName[ spanish ] = "Insertar contador de páginas"; + SlotName[ italian ] = "Inserisci numero di pagine"; + SlotName[ danish ] = "Indsæt sideantal"; + SlotName[ swedish ] = "Infoga sidantal"; + SlotName[ polish ] = "Wstaw liczbê stron"; + SlotName[ portuguese_brazilian ] = "Page Count"; + SlotName[ japanese ] = "Íß-¼Þ�”‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÒ³Êý"; + SlotName[ chinese_traditional ] = "´¡¤J­¶¼Æ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÚÏÏ ÇáÕÝÍÇÊ"; + SlotName[ dutch ] = "Pagina-aantal invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÒ³Êý"; + SlotName[ greek ] = "ÅéóáãùãÞ óõíïëéêïý áñéèìïý óåëéäþí"; + SlotName[ korean ] = "ÆäÀÌÁö Ä«¿îÆ® »ðÀÔ"; + SlotName[ turkish ] = "Sayfa sayýsý ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_PGNUMBER +{ + SlotName = "Seitennummer einfügen"; + SlotName [ english ] = "Seitennummer einfügen"; + SlotName[ english_us ] = "Insert Page Number"; + SlotName[ portuguese ] = "Inserir número de página"; + SlotName[ russian ] = "Âñòàâèòü íîìåðà ñòðàíèö"; + SlotName[ dutch ] = "Paginanummer invoegen"; + SlotName[ french ] = "Insérer numéro de page"; + SlotName[ spanish ] = "Insertar número de página"; + SlotName[ italian ] = "Inserisci numero di pagina"; + SlotName[ danish ] = "Indsæt sidetal"; + SlotName[ swedish ] = "Infoga sidnummer"; + SlotName[ polish ] = "Wstaw numer strony"; + SlotName[ portuguese_brazilian ] = "PageNumber"; + SlotName[ japanese ] = "Íß°¼Þ”Ô�†‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÒ³Âë"; + SlotName[ chinese_traditional ] = "´¡¤J­¶½X"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÃÑÞÇã ÇáÕÝÍÇÊ"; + SlotName[ dutch ] = "Paginanummer invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÒ³Âë"; + SlotName[ greek ] = "ÅéóáãùãÞ áñéèìïý óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ¹øÈ£ »ðÀÔ"; + SlotName[ turkish ] = "Sayfa numarasý ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_TIME +{ + SlotName = "Uhrzeit einfügen"; + SlotName [ english ] = "Uhrzeit einfügen"; + SlotName[ english_us ] = "Insert Time"; + SlotName[ portuguese ] = "Hora"; + SlotName[ russian ] = "Âñòàâèòü âðåìÿ"; + SlotName[ dutch ] = "Tijd invoegen"; + SlotName[ french ] = "Heure"; + SlotName[ spanish ] = "Insertar hora"; + SlotName[ italian ] = "Inserisci orario"; + SlotName[ danish ] = "Indsæt klokkeslæt"; + SlotName[ swedish ] = "Infoga klockslag"; + SlotName[ polish ] = "Wstaw godzinê"; + SlotName[ portuguese_brazilian ] = "Time"; + SlotName[ japanese ] = "Žž��‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëʱ¼ä"; + SlotName[ chinese_traditional ] = "´¡¤J®É¶¡"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÇáæÞÊ"; + SlotName[ dutch ] = "Tijd invoegen"; + SlotName[ chinese_simplified ] = "²åÈëʱ¼ä"; + SlotName[ greek ] = "ÅéóáãùãÞ þñáò"; + SlotName[ korean ] = "½Ã°£ »ðÀÔ"; + SlotName[ turkish ] = "Saat ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_TITLE +{ + SlotName = "Dokumenttitel einfügen"; + SlotName [ english ] = "Dokumenttitel einfügen"; + SlotName[ english_us ] = "Insert Document Title"; + SlotName[ portuguese ] = "Inserir título do documento"; + SlotName[ russian ] = "Âñòàâèòü çàãîëîâîê äîêóìåíòà"; + SlotName[ dutch ] = "Documenttitel invoegen"; + SlotName[ french ] = "Insérer un titre de document"; + SlotName[ spanish ] = "Insertar título de documento"; + SlotName[ italian ] = "Inserisci titolo di documento"; + SlotName[ danish ] = "Indsæt dokumenttitel"; + SlotName[ swedish ] = "Infoga dokumentrubrik"; + SlotName[ polish ] = "Wstaw tytu³ dokumentu"; + SlotName[ portuguese_brazilian ] = "DocumentTitle"; + SlotName[ japanese ] = "ÄÞ·­ÒÝÄÀ²ÄÙ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÎĵµ±êÌâ"; + SlotName[ chinese_traditional ] = "´¡¤J¤å¥ó¼ÐÃD"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÚäæÇä ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Documenttitel invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÎĵµ±êÌâ"; + SlotName[ greek ] = "ÅéóáãùãÞ ôßôëïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ Á¦¸ñ »ðÀÔ"; + SlotName[ turkish ] = "Belge baþlýðý ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FLD_TOPIC +{ + SlotName = "Thema einfügen"; + SlotName [ english ] = "Thema einfügen"; + SlotName[ english_us ] = "Insert Subject"; + SlotName[ portuguese ] = "Inserir assunto"; + SlotName[ russian ] = "Âñòàâèòü òåìó"; + SlotName[ dutch ] = "Onderwerp invoegen"; + SlotName[ french ] = "Insérer l'objet"; + SlotName[ spanish ] = "Insertar tema"; + SlotName[ italian ] = "Inserisci argomento"; + SlotName[ danish ] = "Indsæt emne"; + SlotName[ swedish ] = "Infoga ämne"; + SlotName[ polish ] = "Wstaw temat"; + SlotName[ portuguese_brazilian ] = "Topic"; + SlotName[ japanese ] = "Œ�–¼‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÖ÷Ìâ"; + SlotName[ chinese_traditional ] = "´¡¤J¥DÃD"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÇáãæÖæÚ"; + SlotName[ dutch ] = "Onderwerp invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÖ÷Ìâ"; + SlotName[ greek ] = "ÅéóáãùãÞ èÝìáôïò"; + SlotName[ korean ] = "ÁÖÁ¦ »ðÀÔ"; + SlotName[ turkish ] = "Konu ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FOOTER +{ + SlotName = "Fußzeile einfügen"; + SlotName [ english ] = "Fußzeile einfügen"; + SlotName[ english_us ] = "Insert Footer"; + SlotName[ portuguese ] = "Inserir rodapé"; + SlotName[ russian ] = "Âñòàâèòü íèæíèé êîëîíòèòóë"; + SlotName[ dutch ] = "Voettekst invoegen"; + SlotName[ french ] = "Insérer un pied de page"; + SlotName[ spanish ] = "Insertar pie de página"; + SlotName[ italian ] = "Inserisci piè di pagina"; + SlotName[ danish ] = "Indsæt sidefod"; + SlotName[ swedish ] = "Infoga sidfot"; + SlotName[ polish ] = "Wstaw stopkê"; + SlotName[ portuguese_brazilian ] = "InsertFooter"; + SlotName[ japanese ] = "̯À‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÒ³½Å"; + SlotName[ chinese_traditional ] = "´¡¤Jµù¸}"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÐííá ÕÝÍÉ"; + SlotName[ dutch ] = "Voettekst invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÒ³½Å"; + SlotName[ greek ] = "ÅéóáãùãÞ õðïóÝëéäïõ"; + SlotName[ korean ] = "¹Ù´Ú±Û »ðÀÔ"; + SlotName[ turkish ] = "Altbilgi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FOOTNOTE +{ + SlotName = "Fußnote direkt einfügen"; + SlotName [ english ] = "Fußnote direkt einfügen"; + SlotName[ english_us ] = "Insert Footnote Directly"; + SlotName[ portuguese ] = "Inserir nota de rodapé, directamente"; + SlotName[ russian ] = "Âñòàâèòü íåïîñðåäñòâåííî ñíîñêó"; + SlotName[ dutch ] = "Voetnoot direct invoegen"; + SlotName[ french ] = "Insérer directement une note de bas de page"; + SlotName[ spanish ] = "Insertar nota al pie, directo"; + SlotName[ italian ] = "Inserisci nota a piè pagina direttamente"; + SlotName[ danish ] = "Indsæt sidefod direkte"; + SlotName[ swedish ] = "Infoga fotnot direkt"; + SlotName[ polish ] = "Wstaw bezpoœrednio przypis dolny"; + SlotName[ portuguese_brazilian ] = "InsertFootnoteDirect"; + SlotName[ japanese ] = "‹r’�‚Ì’¼�Ú‘}“ü"; + SlotName[ chinese_simplified ] = "Ö±½Ó²åÈë×¢½Å"; + SlotName[ chinese_traditional ] = "ª½±µ´¡¤Jµù¸}"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÇÔíÉ ÓÝáíÉ ãÈÇÔÑÉ"; + SlotName[ dutch ] = "Voetnoot direct invoegen"; + SlotName[ chinese_simplified ] = "Ö±½Ó²åÈë×¢½Å"; + SlotName[ greek ] = "Áð åõèåßáò åéóáãùãÞ õðïóçìåßùóçò"; + SlotName[ korean ] = "°¢ÁÖ Á÷Á¢ »ðÀÔ"; + SlotName[ turkish ] = "Dipnotu doðrudan ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FOOTNOTE_DLG +{ + SlotName = "Fußnote einfügen"; + SlotName [ english ] = "Fußnote einfügen"; + SlotName[ english_us ] = "Insert Footnote"; + SlotName[ portuguese ] = "Inserir nota de rodapé"; + SlotName[ russian ] = "Âñòàâèòü ñíîñêó"; + SlotName[ dutch ] = "Voetnoot invoegen"; + SlotName[ french ] = "Insérer une note de bas de page"; + SlotName[ spanish ] = "Insertar nota al pie"; + SlotName[ italian ] = "Inserisci nota a piè pagina"; + SlotName[ danish ] = "Indsæt fodnote"; + SlotName[ swedish ] = "Infoga fotnot"; + SlotName[ polish ] = "Wstaw przypis dolny"; + SlotName[ portuguese_brazilian ] = "InsertFootnote"; + SlotName[ japanese ] = "‹r’�‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë×¢½Å"; + SlotName[ chinese_traditional ] = "´¡¤Jµù¸}"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÇÔíÉ ÓÝáíÉ"; + SlotName[ dutch ] = "Voetnoot invoegen"; + SlotName[ chinese_simplified ] = "²åÈë×¢½Å"; + SlotName[ greek ] = "ÅéóáãùãÞ õðïóçìåßùóçò"; + SlotName[ korean ] = "°¢ÁÖ »ðÀÔ"; + SlotName[ turkish ] = "Dipnot ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FRAME +{ + SlotName = "Rahmen einfügen"; + SlotName [ english ] = "Rahmen einfügen"; + SlotName[ english_us ] = "Insert Frame"; + SlotName[ portuguese ] = "Inserir moldura"; + SlotName[ russian ] = "Âñòàâèòü ðàìêó"; + SlotName[ dutch ] = "Kader invoegen"; + SlotName[ french ] = "Insérer un cadre"; + SlotName[ spanish ] = "Insertar marco"; + SlotName[ italian ] = "Inserisci cornice"; + SlotName[ danish ] = "Indsæt ramme"; + SlotName[ swedish ] = "Infoga ram"; + SlotName[ polish ] = "Wstaw ramkê"; + SlotName[ portuguese_brazilian ] = "InsertFrame"; + SlotName[ japanese ] = "˜g‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë¿ò"; + SlotName[ chinese_traditional ] = "´¡¤J¤å¦r¤è¶ô"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅØÇÑ"; + SlotName[ dutch ] = "Kader invoegen"; + SlotName[ chinese_simplified ] = "²åÈë¿ò"; + SlotName[ greek ] = "ÅéóáãùãÞ ðëáéóßïõ"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ »ðÀÔ"; + SlotName[ turkish ] = "Çerçeve ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_FRAME_INTERACT_NOCOL +{ + SlotName = "Einspaltigen Rahmen manuell einfügen"; + SlotName [ english ] = "Insert single column frame manually"; + SlotName[ english_us ] = "Insert single-column frame manually"; + SlotName[ portuguese ] = "Inserir moldura de um coluna manualmente"; + SlotName[ russian ] = "Insert single column frame manually"; + SlotName[ greek ] = "×åéñïêßíçôç åéóáãùãÞ ìïíüóôõëïõ ðëáéóßïõ"; + SlotName[ dutch ] = "Eenkoloms kader handmatig invoegen"; + SlotName[ french ] = "Insertion manuelle d'un cadre à une colonne"; + SlotName[ spanish ] = "Insert single column frame manually"; + SlotName[ italian ] = "Insert single column frame manually"; + SlotName[ danish ] = "Indsæt enkelt-kolonne ramme manuelt"; + SlotName[ swedish ] = "Insert single column frame manually"; + SlotName[ polish ] = "Wstaw rêcznie ramkê z jedn¹ kolumn¹"; + SlotName[ portuguese_brazilian ] = "Insert single column frame manually"; + SlotName[ japanese ] = "‚P—ñ˜g‚ðŽè“®‚Å‘}“ü"; + SlotName[ korean ] = "Insert single column frame manually"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈëµ¥À¸Ê½¿ò"; + SlotName[ chinese_traditional ] = "¤â¤u´¡¤J³æÄæ¤å¦r®Ø¡C"; + SlotName[ turkish ] = "Insert single column frame manually"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅØÇÑ ãßæä ãä ÚãæÏ æÇÍÏ íÏæíÇð"; +}; +SfxSlotInfo FN_INSERT_FRAME_INTERACT +{ + SlotName = "Rahmen manuell einfügen"; + SlotName [ english ] = "Rahmen manuell einfügen"; + SlotName[ english_us ] = "Insert Frame Manually"; + SlotName[ portuguese ] = "Inserir moldura manualmente"; + SlotName[ russian ] = "Âñòàâèòü ðàìêó âðó÷íóþ"; + SlotName[ dutch ] = "Kader handmatig invoegen"; + SlotName[ french ] = "Insérer un cadre"; + SlotName[ spanish ] = "Insertar marco manualmente"; + SlotName[ italian ] = "Inserisci cornice manualmente"; + SlotName[ danish ] = "Indsæt ramme manuelt"; + SlotName[ swedish ] = "Infoga ram manuellt"; + SlotName[ polish ] = "Wstaw rêcznie ramkê"; + SlotName[ portuguese_brazilian ] = "InsertFrameInteract"; + SlotName[ japanese ] = "˜g‚ðŽè“®‚Å‘}“ü"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë¿ò"; + SlotName[ chinese_traditional ] = "´¡¤J¤å¦r¤è¶ô"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅØÇÑ íÏæíÇð"; + SlotName[ dutch ] = "Kader handmatig invoegen"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë¿ò"; + SlotName[ greek ] = "×åéñïêßíçôç åéóáãùãÞ ðëáéóßïõ"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ ¼öµ¿ »ðÀÔ"; + SlotName[ turkish ] = "Çerçeveyi manuel olarak ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_HARD_SPACE +{ + SlotName = "Geschütztes Leerzeichen einfügen"; + SlotName [ english ] = "Geschütztes Leerzeichen einfügen"; + SlotName[ english_us ] = "Insert Non-Breaking Space"; + SlotName[ portuguese ] = "Inserir um espaço não separável"; + SlotName[ russian ] = "Âñòàâèòü çàùèùåííûé ïðîáåë"; + SlotName[ dutch ] = "Harde spatie invoegen"; + SlotName[ french ] = "Insérer un espace protégé"; + SlotName[ spanish ] = "Insertar espacio protegido"; + SlotName[ italian ] = "Inserisci spazio protetto"; + SlotName[ danish ] = "Indsæt hårdt mellemrum"; + SlotName[ swedish ] = "Infoga skyddat blanksteg"; + SlotName[ polish ] = "Wstaw spacjê nie rozdzielaj¹c¹"; + SlotName[ portuguese_brazilian ] = "InsertNonBreakingSpace"; + SlotName[ japanese ] = "•ÛŒì½Íß°½‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë¿Õ¸ñ×Ö·û"; + SlotName[ chinese_traditional ] = "´¡¤J«OÅ@ªºªÅ®æ¦r¤¸"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÍÑÝ ãÓÇÝÉ ãÍãí"; + SlotName[ dutch ] = "Harde spatie invoegen"; + SlotName[ chinese_simplified ] = "²åÈë¿Õ¸ñ×Ö·û"; + SlotName[ greek ] = "ÐñïóèÞêç ðñïóôáôåõüìåíïõ êåíïý"; + SlotName[ korean ] = "ÁÙ ¹Ù²ÞÇÏÁö ¾Ê´Â °ø¹é »ðÀÔ"; + SlotName[ turkish ] = "Satýr sonu olmayan boþluk ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_HARDHYPHEN +{ + SlotName = "Geschützen Trenner einfügen"; + SlotName [ english ] = "Geschützen Trenner einfügen"; + SlotName[ english_us ] = "Insert Hard Hyphen"; + SlotName[ portuguese ] = "Inserir hífen não separável"; + SlotName[ russian ] = "Âñòàâèòü æåñòêèå ïåðåíîñû"; + SlotName[ dutch ] = "Vast scheidingsteken invoegen"; + SlotName[ french ] = "Insérer une coupure de mot manuelle"; + SlotName[ spanish ] = "Insertar guión protegido"; + SlotName[ italian ] = "Inserisci sillabazione protetta"; + SlotName[ danish ] = "Indsæt hård bindestreg"; + SlotName[ swedish ] = "Infoga hårda bindestreck"; + SlotName[ polish ] = "Wstaw twardy znak podzia³u"; + SlotName[ portuguese_brazilian ] = "InsertHardHyphen"; + SlotName[ japanese ] = "•ÛŒìʲÌȰ¼®Ý‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÁ¬×Ö·û"; + SlotName[ chinese_traditional ] = "´¡¤J«OÅ@ªº³s¦r²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÔÑØÉ ÝÇÕáÉ ãÍãíÉ"; + SlotName[ dutch ] = "Vast scheidingsteken invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÁ¬×Ö·û"; + SlotName[ greek ] = "ÐñïóèÞêç Ýíôïíïõ äéá÷ùñéóôéêïý"; + SlotName[ korean ] = "°íÁ¤ ÇÏÀÌÇ »ðÀÔ"; + SlotName[ turkish ] = "Bölünemez tire ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_HEADER +{ + SlotName = "Kopfzeile einfügen"; + SlotName [ english ] = "Kopfzeile einfügen"; + SlotName[ english_us ] = "Insert Header"; + SlotName[ portuguese ] = "Inserir cabeçalho"; + SlotName[ russian ] = "Âñòàâèòü âåðõíèé êîëîíòèòóë"; + SlotName[ dutch ] = "Koptekst invoegen"; + SlotName[ french ] = "Insérer un en-tête"; + SlotName[ spanish ] = "Insertar encabezamiento"; + SlotName[ italian ] = "Inserisci riga d'intestazione "; + SlotName[ danish ] = "Indsæt sidehoved"; + SlotName[ swedish ] = "Infoga sidhuvud"; + SlotName[ polish ] = "Wstaw nag³ówek"; + SlotName[ portuguese_brazilian ] = "InsertHeader"; + SlotName[ japanese ] = "ͯÀÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëҳü"; + SlotName[ chinese_traditional ] = "´¡¤J­¶­º"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÑÃÓ ÕÝÍÉ"; + SlotName[ dutch ] = "Koptekst invoegen"; + SlotName[ chinese_simplified ] = "²åÈëҳü"; + SlotName[ greek ] = "ÅéóáãùãÞ êåöáëßäáò"; + SlotName[ korean ] = "¸Ó¸®±Û »ðÀÔ"; + SlotName[ turkish ] = "Üstbilgi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_HRULER +{ + SlotName = "Horizontale Linie einfügen"; + SlotName [ english ] = "Horizontale Linie einfügen"; + SlotName[ english_us ] = "Insert Horizontal Ruler"; + SlotName[ portuguese ] = "Inserir linha horizontal"; + SlotName[ russian ] = "Âñòàâèòü ãîðèçîíòàëüíóþ ëèíèþ"; + SlotName[ dutch ] = "Horizontale lijn invoegen"; + SlotName[ french ] = "Insérer une ligne horizontale"; + SlotName[ spanish ] = "Insertar líneas horizontales"; + SlotName[ italian ] = "Inserisci linea orizzontale"; + SlotName[ danish ] = "Indsæt vandret linje"; + SlotName[ swedish ] = "Infoga horisontell linje"; + SlotName[ polish ] = "Wstaw liniê poziom¹"; + SlotName[ portuguese_brazilian ] = "InsertGraphicRuler"; + SlotName[ japanese ] = "�…•½�ü‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëˮƽÏß"; + SlotName[ chinese_traditional ] = "´¡¤J¤ô¥­½u"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÎØ ÃÝÞí"; + SlotName[ dutch ] = "Horizontale lijn invoegen"; + SlotName[ chinese_simplified ] = "²åÈëˮƽÏß"; + SlotName[ greek ] = "ÅéóáãùãÞ ïñéæüíôéáò ãñáììÞò"; + SlotName[ korean ] = "¼öÆò ´«±ÝÀÚ »ðÀÔ"; + SlotName[ turkish ] = "Yatay ayýrma çizgisi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_HYPERLINK +{ + SlotName = "Hyperlink einfügen"; + SlotName [ english ] = "Hyperlink einfügen"; + SlotName[ english_us ] = "Insert Hyperlink"; + SlotName[ portuguese ] = "Inserir hiperligação"; + SlotName[ russian ] = "Âñòàâèòü ãèïåðññûëêó"; + SlotName[ dutch ] = "Hyperlink invoegen"; + SlotName[ french ] = "Insérer un hyperlien"; + SlotName[ spanish ] = "Insertar hiperenlace"; + SlotName[ italian ] = "Inserisci Hyperlink"; + SlotName[ danish ] = "Indsæt hyperlink"; + SlotName[ swedish ] = "Infoga hyperlänk"; + SlotName[ polish ] = "Wstaw hiper³¹cze"; + SlotName[ portuguese_brazilian ] = "InsertHyperlinkDlg"; + SlotName[ japanese ] = "ʲÊß°ØÝ¸‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈ볬Á´½Ó"; + SlotName[ chinese_traditional ] = "´¡¤J¶W³sµ²"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÇÑÊÈÇØ ÊÔÚÈí"; + SlotName[ dutch ] = "Hyperlink invoegen"; + SlotName[ chinese_simplified ] = "²åÈ볬Á´½Ó"; + SlotName[ greek ] = "ÅéóáãùãÞ õðåñóýíäåóçò"; + SlotName[ korean ] = "ÇÏÀÌÆÛ¸µÅ© »ðÀÔ"; + SlotName[ turkish ] = "Hyperlink ekle"; +}; +SfxSlotInfo FN_INSERT_IDX_ENTRY_DLG +{ + SlotName = "Indexmarkierung einfügen"; + SlotName [ english ] = "Indexmarkierung einfügen"; + SlotName[ english_us ] = "Insert Index Marker"; + SlotName[ portuguese ] = "Inserir marcador do índice"; + SlotName[ russian ] = "Âñòàâèòü ìåòêó óêàçàòåëÿ"; + SlotName[ dutch ] = "Indexmarkering invoegen"; + SlotName[ french ] = "Insérer une marque d'index"; + SlotName[ spanish ] = "Insertar marca en el índice"; + SlotName[ italian ] = "Inserisci contrassegno indice"; + SlotName[ danish ] = "Indsæt indeksmarkering"; + SlotName[ swedish ] = "Infoga indexmarkering"; + SlotName[ polish ] = "Wstaw znacznik indeksu"; + SlotName[ portuguese_brazilian ] = "InsertIndexEntry"; + SlotName[ japanese ] = "²ÝÃÞ¯¸½Ï°¶°‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëË÷Òý±ê¼Ç"; + SlotName[ chinese_traditional ] = "´¡¤J¯Á¤Þ¿ï¨ú"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÍÏíÏ ÝåÑÓí"; + SlotName[ dutch ] = "Indexmarkering invoegen"; + SlotName[ chinese_simplified ] = "²åÈëË÷Òý±ê¼Ç"; + SlotName[ greek ] = "ÅéóáãùãÞ óçìÜäé åõñåôçñßïõ"; + SlotName[ korean ] = "À妽º ¼±ÅÃÇ¥½Ã »ðÀÔ"; + SlotName[ turkish ] = "Dizin belirteci ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_LINEBREAK +{ + SlotName = "Manuellen Zeilenumbruch einfügen"; + SlotName [ english ] = "Manuellen Zeilenumbruch einfügen"; + SlotName[ english_us ] = "Insert Manual Row Break"; + SlotName[ portuguese ] = "Inserir quebra de linha manual"; + SlotName[ russian ] = "Âñòàâèòü âðó÷íóþ ðàçðûâ ñòðîêè"; + SlotName[ dutch ] = "Handmatig regeleinde invoegen"; + SlotName[ french ] = "Insérer un renvoi à la ligne manuel"; + SlotName[ spanish ] = "Insertar salto de línea manual"; + SlotName[ italian ] = "Inserisci interruzione manuale riga"; + SlotName[ danish ] = "Indsæt manuelt linjeskift"; + SlotName[ swedish ] = "Infoga manuell radbrytning"; + SlotName[ polish ] = "Wstaw rêczny podzia³ wierszy"; + SlotName[ portuguese_brazilian ] = "InsertManualLineBreak"; + SlotName[ japanese ] = "Žè“®‰ü�s‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë»»Ðзû"; + SlotName[ chinese_traditional ] = "¤â¤u´¡¤J´«¦æ²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÇÕá ÃÓØÑ íÏæí"; + SlotName[ dutch ] = "Handmatig regeleinde invoegen"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë»»Ðзû"; + SlotName[ greek ] = "ÅéóáãùãÞ ÷åéñïêßíçôçò áëëáãÞò ãñáììÞò"; + SlotName[ korean ] = "¼öµ¿ Çà ³ª´©±â »ðÀÔ"; + SlotName[ turkish ] = "Manüel satýr sonu ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_OBJ_CTRL +{ + SlotName = "Objekte einfügen"; + SlotName [ english ] = "Objekte einfügen"; + SlotName[ english_us ] = "Insert Objects"; + SlotName[ portuguese ] = "Inserir objectos"; + SlotName[ russian ] = "Âñòàâèòü îáúåêòû"; + SlotName[ dutch ] = "Objecten invoegen"; + SlotName[ french ] = "Insérer des objets"; + SlotName[ spanish ] = "Insertar objetos"; + SlotName[ italian ] = "Inserisci oggetti"; + SlotName[ danish ] = "Indsæt objekt"; + SlotName[ swedish ] = "Infoga objekt"; + SlotName[ polish ] = "Wstaw obiekty"; + SlotName[ portuguese_brazilian ] = "InsertObjCtrl"; + SlotName[ japanese ] = "µÌÞ¼Þª¸Ä‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë¶ÔÏó"; + SlotName[ chinese_traditional ] = "´¡¤Jª«¥ó"; + SlotName[ arabic ] = "ÅÏÑÇÌ ßÇÆäÇÊ"; + SlotName[ dutch ] = "Objecten invoegen"; + SlotName[ chinese_simplified ] = "²åÈë¶ÔÏó"; + SlotName[ greek ] = "ÅéóáãùãÞ áíôéêåéìÝíùí"; + SlotName[ korean ] = "°³Ã¼ »ðÀÔ"; + SlotName[ turkish ] = "Nesne ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_OBJECT_DLG +{ + SlotName = "Weitere Objekte einfügen"; + SlotName [ english ] = "Weitere Objekte einfügen"; + SlotName[ english_us ] = "Insert Other Objects"; + SlotName[ portuguese ] = "Inserir outros objectos"; + SlotName[ russian ] = "Âñòàâèòü äîïîëíèòåëüíûå îáúåêòû"; + SlotName[ dutch ] = "Andere objecten invoegen"; + SlotName[ french ] = "Insérer d'autres objets"; + SlotName[ spanish ] = "Insertar otros objetos"; + SlotName[ italian ] = "Inserisci ulteriori oggetti"; + SlotName[ danish ] = "Indsæt flere objekter"; + SlotName[ swedish ] = "Infoga andra objekt"; + SlotName[ polish ] = "Wstaw dalsze obiekty"; + SlotName[ portuguese_brazilian ] = "InsertObject"; + SlotName[ japanese ] = "‚Ù‚©‚̵ÌÞ¼Þª¸Ä‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÆäËü¶ÔÏó"; + SlotName[ chinese_traditional ] = "´¡¤J¨ä¥¦ª«¥ó"; + SlotName[ arabic ] = "ÅÏÑÇÌ ßÇÆäÇÊ ÃÎÑì"; + SlotName[ dutch ] = "Andere objecten invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÆäËü¶ÔÏó"; + SlotName[ greek ] = "ÐñïóèÞêç Üëëùí áíôéêåéìÝíùí"; + SlotName[ korean ] = "´Ù¸¥ °³Ã¼ »ðÀÔ"; + SlotName[ turkish ] = "Baþka nesne ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_PAGEBREAK +{ + SlotName = "Manuellen Seitenwechsel einfügen"; + SlotName [ english ] = "Manuellen Seitenwechsel einfügen"; + SlotName[ english_us ] = "Insert Manual Page Break"; + SlotName[ portuguese ] = "Inserir quebra de página manual"; + SlotName[ russian ] = "Âñòàâèòü âðó÷íóþ ðàçðûâ ñòðàíèöû"; + SlotName[ dutch ] = "Handmatig pagina-einde invoegen"; + SlotName[ french ] = "Insérer un saut de page manuel"; + SlotName[ spanish ] = "Insertar un salto de página manual"; + SlotName[ italian ] = "Inserisci cambio pagina manuale"; + SlotName[ danish ] = "Indsæt manuelt sideskift"; + SlotName[ swedish ] = "Infoga manuell sidbrytning"; + SlotName[ polish ] = "Wstaw rêczne ³amanie stron"; + SlotName[ portuguese_brazilian ] = "InsertManualPageBreak"; + SlotName[ japanese ] = "”CˆÓ‰üÍß°¼Þ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë»»Ò³·û"; + SlotName[ chinese_traditional ] = "¤â¤u´¡¤J´«­¶²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÇÕá ÕÝÍÇÊ íÏæí"; + SlotName[ dutch ] = "Handmatig pagina-einde invoegen"; + SlotName[ chinese_simplified ] = "ÊÖ¹¤²åÈë»»Ò³·û"; + SlotName[ greek ] = "ÅéóáãùãÞ ÷åéñïêßíçôçò áëëáãÞò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ³ª´©±â »ðÀÔ"; + SlotName[ turkish ] = "Manüel sayfa sonu ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_PAGEFOOTER +{ + SlotName = "Fußzeile einfügen"; + SlotName [ english ] = "Fußzeile einfügen"; + SlotName[ english_us ] = "Insert Footer"; + SlotName[ portuguese ] = "Inserir rodapé"; + SlotName[ russian ] = "Âñòàâèòü íèæíèé êîëîíòèòóë"; + SlotName[ dutch ] = "Voettekst invoegen"; + SlotName[ french ] = "Insérer un pied de page"; + SlotName[ spanish ] = "Insertar pie de página"; + SlotName[ italian ] = "Inserisci piè di pagina"; + SlotName[ danish ] = "Indsæt sidefod"; + SlotName[ swedish ] = "Infoga sidfot"; + SlotName[ polish ] = "Wstaw stopkê"; + SlotName[ portuguese_brazilian ] = "InsertPageFooter"; + SlotName[ japanese ] = "̯À‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÒ³½Å"; + SlotName[ chinese_traditional ] = "´¡¤J­¶¸}"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÐííá ÕÝÍÉ"; + SlotName[ dutch ] = "Voettekst invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÒ³½Å"; + SlotName[ greek ] = "ÅéóáãùãÞ õðïóÝëéäïõ"; + SlotName[ korean ] = "¹Ù´Ú±Û »ðÀÔ"; + SlotName[ turkish ] = "Altbilgi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_PAGEHEADER +{ + SlotName = "Kopfzeile einfügen"; + SlotName [ english ] = "Kopfzeile einfügen"; + SlotName[ english_us ] = "Insert Header"; + SlotName[ portuguese ] = "Inserir cabeçalho"; + SlotName[ russian ] = "Âñòàâèòü âåðõíèé êîëîíòèòóë"; + SlotName[ dutch ] = "Koptekst invoegen"; + SlotName[ french ] = "Insérer un en-tête"; + SlotName[ spanish ] = "Insertar encabezamiento"; + SlotName[ italian ] = "Inserisci riga d'intestazione"; + SlotName[ danish ] = "Indsæt sidehoved"; + SlotName[ swedish ] = "Infoga sidhuvud"; + SlotName[ polish ] = "Wstaw nag³ówek"; + SlotName[ portuguese_brazilian ] = "InsertPageHeader"; + SlotName[ japanese ] = "ͯÀÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëҳü"; + SlotName[ chinese_traditional ] = "´¡¤J­¶­º"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÑÃÓ ÕÝÍÉ"; + SlotName[ dutch ] = "Koptekst invoegen"; + SlotName[ chinese_simplified ] = "²åÈëҳü"; + SlotName[ greek ] = "ÅéóáãùãÞ êåöáëßäáò"; + SlotName[ korean ] = "¸Ó¸®±Û »ðÀÔ"; + SlotName[ turkish ] = "Üstbilgi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_REF_FIELD +{ + SlotName = "Querverweis einfügen"; + SlotName [ english ] = "Querverweis einfügen"; + SlotName[ english_us ] = "Insert Field Reference"; + SlotName[ portuguese ] = "Inserir referência"; + SlotName[ russian ] = "Âñòàâèòü ïåðåêðåñòíóþ ññûëêó"; + SlotName[ dutch ] = "Kruisverwijzing invoegen"; + SlotName[ french ] = "Insérer un renvoi"; + SlotName[ spanish ] = "Insertar campo referencia"; + SlotName[ italian ] = "Inserisci riferimento incrociato"; + SlotName[ danish ] = "Indsæt krydshenvisning"; + SlotName[ swedish ] = "Infoga korshänvisning"; + SlotName[ polish ] = "Wstaw odsy³acz"; + SlotName[ portuguese_brazilian ] = "InsertReferenzField"; + SlotName[ japanese ] = "ŽQ�ÆÌ¨°ÙÄÞ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë²ÎÕÕ"; + SlotName[ chinese_traditional ] = "´¡¤JÄæ¦ì°Ñ·Ó"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅÓäÇÏÇÊ ÊÑÇÝÞíÉ"; + SlotName[ dutch ] = "Kruisverwijzing invoegen"; + SlotName[ chinese_simplified ] = "²åÈë²ÎÕÕ"; + SlotName[ greek ] = "ÅéóáãùãÞ ðáñáðïìðÞ ðåäßïõ"; + SlotName[ korean ] = "Çʵå ÂüÁ¶ »ðÀÔ"; + SlotName[ turkish ] = "Çapraz baþvuru alaný ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_REGION +{ + SlotName = "Bereich einfügen"; + SlotName [ english ] = "Bereich einfügen"; + SlotName[ english_us ] = "Insert Section"; + SlotName[ portuguese ] = "Inserir secção"; + SlotName[ russian ] = "Âñòàâèòü îáëàñòü"; + SlotName[ dutch ] = "Bereik invoegen"; + SlotName[ french ] = "Insérer une section"; + SlotName[ spanish ] = "Insertar área"; + SlotName[ italian ] = "Inserisci area"; + SlotName[ danish ] = "Indsæt område"; + SlotName[ swedish ] = "Infoga område"; + SlotName[ polish ] = "Wstaw obszar"; + SlotName[ portuguese_brazilian ] = "InsertRegion"; + SlotName[ japanese ] = "¾¸¼®Ý‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÇøÓò"; + SlotName[ chinese_traditional ] = "´¡¤J°Ï°ì"; + SlotName[ arabic ] = "ÅÏÑÇÌ äØÇÞ"; + SlotName[ dutch ] = "Bereik invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÇøÓò"; + SlotName[ greek ] = "ÅéóáãùãÞ åíüôçôáò"; + SlotName[ korean ] = "±¸¿ª »ðÀÔ"; + SlotName[ turkish ] = "Bölüm ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_SIM +{ + SlotName = "Aus Bildbearbeitung einfügen"; + SlotName [ english ] = "Aus Bildbearbeitung einfügen"; + SlotName[ english_us ] = "Insert from Image Editor"; + SlotName[ portuguese ] = "Inserir imagem"; + SlotName[ russian ] = "Âñòàâèòü èç ðåäàêòîðà èçîáðàæåíèÿ"; + SlotName[ dutch ] = "Uit afbeeldingsbewerking invoegen"; + SlotName[ french ] = "Insérer à partir de l'éditeur d'image"; + SlotName[ spanish ] = "Insertar desde la edición de imágenes"; + SlotName[ italian ] = "Inserisci da elaboratore immagini"; + SlotName[ danish ] = "Indsæt fra billedredigeringen"; + SlotName[ swedish ] = "Infoga från bildredigering"; + SlotName[ polish ] = "Wstaw z edytora obrazów"; + SlotName[ portuguese_brazilian ] = "InsertObjectStarOffice Image"; + SlotName[ japanese ] = "²Ò°¼Þݸނ©‚ç‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "´ÓͼÏñ±à¼­Æ÷²åÈë"; + SlotName[ chinese_traditional ] = "±q¤pµe®a´¡¤J"; + SlotName[ arabic ] = "ÅÏÑÇÌ ãä ãÍÑÑ ÇáÕæÑ"; + SlotName[ dutch ] = "Uit afbeeldingsbewerking invoegen"; + SlotName[ chinese_simplified ] = "´ÓͼÏñ±à¼­Æ÷²åÈë"; + SlotName[ greek ] = "ÅéóáãùãÞ áðü ôçí åðåîåñãáóßá åéêüíáò"; + SlotName[ korean ] = "À̹ÌÁö ÆíÁý±â·ÎºÎÅÍ °¡Á®¿À±â"; + SlotName[ turkish ] = "Görüntü düzenleyiciden ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_SMA +{ + SlotName = "StarOffice Math Objekt einfügen"; + SlotName [ english ] = "Insert StarOffice Math object"; + SlotName[ english_us ] = "Insert StarOffice Math object"; + SlotName[ portuguese ] = "Inserir objecto do StarOffice Math"; + SlotName[ russian ] = "Âñòàâèòü îáúåêò StarOffice Math"; + SlotName[ dutch ] = "StarOffice Math-object invoegen"; + SlotName[ french ] = "Insérer un objet StarOffice Math"; + SlotName[ spanish ] = "Insertar objeto StarOffice Math"; + SlotName[ italian ] = "Inserisci oggetto StarOffice Math"; + SlotName[ danish ] = "Indsæt StarOffice Math-objekt"; + SlotName[ swedish ] = "Infoga StarOffice Math-objekt"; + SlotName[ polish ] = "Wstaw obiekt StarOffice Math"; + SlotName[ portuguese_brazilian ] = "InsertObjectStarOffice Math"; + SlotName[ japanese ] = "StarOffice Math µÌÞ¼Þª¸Ä‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë StarOffice Math ¶ÔÏó"; + SlotName[ chinese_traditional ] = "´¡¤J StarOffice Math ª«¥ó"; + SlotName[ arabic ] = "ÅÏÑÇÌ ßÇÆä StarOffice Math "; + SlotName[ dutch ] = "StarOffice Math-object invoegen"; + SlotName[ chinese_simplified ] = "²åÈë StarOffice Math ¶ÔÏó"; + SlotName[ greek ] = "ÅéóáãùãÞ áíôéêåéìÝíïõ StarOffice Math"; + SlotName[ korean ] = "¼ö½Ä »ðÀÔ"; + SlotName[ turkish ] = "StarMath nesnesi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_SOFT_HYPHEN +{ + SlotName = "Weichen Trenner einfügen"; + SlotName [ english ] = "Weichen Trenner einfügen"; + SlotName[ english_us ] = "Insert Soft Hyphen"; + SlotName[ portuguese ] = "Inserir hífen opcional"; + SlotName[ russian ] = "Âñòàâêà ìÿãêèõ ïåðåíîñîâ"; + SlotName[ dutch ] = "Zacht scheidingsteken invoegen"; + SlotName[ french ] = "Insérer une coupure automatique"; + SlotName[ spanish ] = "Insertar guión opcional"; + SlotName[ italian ] = "Inserisci trattino morbido"; + SlotName[ danish ] = "Indsæt blød bindestreg"; + SlotName[ swedish ] = "Infoga mjuka bindestreck"; + SlotName[ polish ] = "Wstaw miêkki znak podzia³u"; + SlotName[ portuguese_brazilian ] = "InsertSoftHyphen"; + SlotName[ japanese ] = "—áŠO‚ÌʲÌÝ‚ð‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÈíÐÔÁ¬×Ö·û"; + SlotName[ chinese_traditional ] = "´¡¤J³n©Ê³s¦r²Å"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝÇÕáÉ ÇÎÊíÇÑíÉ"; + SlotName[ dutch ] = "Zacht scheidingsteken invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÈíÐÔÁ¬×Ö·û"; + SlotName[ greek ] = "ÐñïóèÞêç Þðéïõ äéá÷ùñéóôéêïý"; + SlotName[ korean ] = "ÀÓÀÇ ÁöÁ¤ ÇÏÀÌÇ »ðÀÔ"; + SlotName[ turkish ] = "Tire ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_SYMBOL +{ + SlotName = "Sonderzeichen einfügen "; + SlotName [ english ] = "Sonderzeichen einfügen "; + SlotName[ english_us ] = "Insert Special Character "; + SlotName[ portuguese ] = "Inserir símbolo "; + SlotName[ russian ] = "Âñòàâèòü ñèìâîë "; + SlotName[ dutch ] = "Speciale tekens invoegen "; + SlotName[ french ] = "Insérer des caractères spéciaux "; + SlotName[ spanish ] = "Insertar símbolo "; + SlotName[ italian ] = "Inserisci carattere speciale "; + SlotName[ danish ] = "Indsæt specialtegn "; + SlotName[ swedish ] = "Infoga specialtecken "; + SlotName[ polish ] = "Wstaw znak specjalny "; + SlotName[ portuguese_brazilian ] = "InsertSymbol "; + SlotName[ japanese ] = "“ÁŽê•¶Žš‚Ì‘}“ü "; + SlotName[ chinese_simplified ] = "²åÈëÌØÊâ×Ö·û "; + SlotName[ chinese_traditional ] = "´¡¤J¯S®í¦r¤¸ "; + SlotName[ arabic ] = "ÅÏÑÇÌ ÑãæÒ ÎÇÕÉ "; + SlotName[ dutch ] = "Speciale tekens invoegen "; + SlotName[ chinese_simplified ] = "²åÈëÌØÊâ×Ö·û "; + SlotName[ greek ] = "ÅéóáãùãÞ åéäéêïý ÷áñáêôÞñá "; + SlotName[ korean ] = "Ư¼ö¹®ÀÚ »ðÀÔ "; + SlotName[ turkish ] = "Özel karakter ekle "; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_TABLE +{ + SlotName = "Tabelle einfügen"; + SlotName [ english ] = "Tabelle einfügen"; + SlotName[ english_us ] = "Insert Table"; + SlotName[ portuguese ] = "Inserir tabela"; + SlotName[ russian ] = "Âñòàâèòü òàáëèöó"; + SlotName[ dutch ] = "Tabel invoegen"; + SlotName[ french ] = "Insérer un tableau"; + SlotName[ spanish ] = "Insertar tabla"; + SlotName[ italian ] = "Inserisci tabella"; + SlotName[ danish ] = "Indsæt tabel"; + SlotName[ swedish ] = "Infoga tabell"; + SlotName[ polish ] = "Wstaw tabelê"; + SlotName[ portuguese_brazilian ] = "InsertTable"; + SlotName[ japanese ] = "•\\‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë±í¸ñ"; + SlotName[ chinese_traditional ] = "´¡¤Jªí®æ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÌÏæá"; + SlotName[ dutch ] = "Tabel invoegen"; + SlotName[ chinese_simplified ] = "²åÈë±í¸ñ"; + SlotName[ greek ] = "ÅéóáãùãÞ ðßíáêá"; + SlotName[ korean ] = "Ç¥»ðÀÔ"; + SlotName[ turkish ] = "Tablo ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_JAVAEDIT +{ + SlotName = "Script einfügen"; + SlotName [ english ] = "Script einfügen"; + SlotName[ english_us ] = "Insert Script"; + SlotName[ portuguese ] = "Inserir Script"; + SlotName[ russian ] = "Âñòàâèòü Script"; + SlotName[ dutch ] = "Script invoegen"; + SlotName[ french ] = "Insérer un script"; + SlotName[ spanish ] = "Insertar script"; + SlotName[ italian ] = "Inserisci script"; + SlotName[ danish ] = "Indsæt script"; + SlotName[ swedish ] = "Infoga skript"; + SlotName[ polish ] = "Wstaw Script"; + SlotName[ portuguese_brazilian ] = "InsertScript"; + SlotName[ japanese ] = "½¸ØÌßĂ̑}“ü"; + SlotName[ chinese_simplified ] = "²åÈë½Å±¾"; + SlotName[ chinese_traditional ] = "´¡¤J©R¥O½Z"; + SlotName[ arabic ] = "ÅÏÑÇÌ Script"; + SlotName[ dutch ] = "Script invoegen"; + SlotName[ chinese_simplified ] = "²åÈë½Å±¾"; + SlotName[ greek ] = "ÅéóáãùãÞ äÝóìçò åíåñãåéþí"; + SlotName[ korean ] = "½ºÅ©¸³Æ® »ðÀÔ"; + SlotName[ turkish ] = "Komut dizisi ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LABEL +{ + SlotName = "Etiketten einfügen"; + SlotName [ english ] = "Etiketten einfügen"; + SlotName[ english_us ] = "Insert Labels"; + SlotName[ portuguese ] = "Inserir rótulos"; + SlotName[ russian ] = "Âñòàâèòü íàêëåéêè"; + SlotName[ dutch ] = "Etiketten invoegen"; + SlotName[ french ] = "Insérer des étiquettes"; + SlotName[ spanish ] = "Insertar etiquetas"; + SlotName[ italian ] = "Inserisci etichette"; + SlotName[ danish ] = "Indsæt etiketter"; + SlotName[ swedish ] = "Infoga etiketter"; + SlotName[ polish ] = "Dodaj etykietê"; + SlotName[ portuguese_brazilian ] = "InsertLabels"; + SlotName[ japanese ] = "×ÍÞÙ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈë±êÇ©"; + SlotName[ chinese_traditional ] = "´¡¤J¶K¼Ð"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÈØÇÞÇÊ ÚäæäÉ"; + SlotName[ dutch ] = "Etiketten invoegen"; + SlotName[ chinese_simplified ] = "²åÈë±êÇ©"; + SlotName[ greek ] = "ÅéóáãùãÞ åôéêÝôáò"; + SlotName[ korean ] = "¶óº§ »ðÀÔ"; + SlotName[ turkish ] = "Etiket ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_BUSINESS_CARD +{ + SlotName = "Visitenkarten einfügen"; + SlotName [ english ] = "Insert business cards"; + SlotName[ english_us ] = "Insert business cards"; + SlotName[ portuguese ] = "Inserir cartões de visita"; + SlotName[ russian ] = "Âñòàâèòü âèçèòíûå êàðòî÷êè"; + SlotName[ greek ] = "ÐñïóèÞêç êáñôþí ðáñïõóßáóçò"; + SlotName[ dutch ] = "Visitekaartjes invoegen"; + SlotName[ french ] = "Insérer des cartes de visite"; + SlotName[ spanish ] = "Insertar tarjetas de visita"; + SlotName[ italian ] = "Inserisci biglietti da visita"; + SlotName[ danish ] = "Indsæt visitkort"; + SlotName[ swedish ] = "Infoga visitkort"; + SlotName[ polish ] = "Dodaj wizytówki"; + SlotName[ portuguese_brazilian ] = "Insert business cards"; + SlotName[ japanese ] = "–¼Žh‚Ì‘}“ü"; + SlotName[ korean ] = "¸íÇÔ »ðÀÔ"; + SlotName[ chinese_simplified ] = "²åÈëÃûƬ"; + SlotName[ chinese_traditional ] = "´¡¤J¦W¤ù"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÈØÇÞÇÊ ÇáÒíÇÑÉ"; + SlotName[ turkish ] = "Kartvizit ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LINE_DOWN +{ + SlotName = "Zur Zeile unten"; + SlotName [ english ] = "Zur Zeile unten"; + SlotName[ english_us ] = "To Line Below"; + SlotName[ portuguese ] = "Ir para a linha inferior"; + SlotName[ russian ] = "Äî íèæíåé ñòðîêè"; + SlotName[ dutch ] = "Naar regel beneden"; + SlotName[ french ] = "A la ligne inférieure"; + SlotName[ spanish ] = "Ir a la línea de abajo"; + SlotName[ italian ] = "Alla riga in basso"; + SlotName[ danish ] = "Til række forneden"; + SlotName[ swedish ] = "Till raden under"; + SlotName[ polish ] = "Do wiersza na dole"; + SlotName[ portuguese_brazilian ] = "GoDown"; + SlotName[ japanese ] = "�s‚̉º‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÃæµÄÐÐ"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@¦æ"; + SlotName[ arabic ] = "Åáì ÇáÓØÑ ÇáÃÓÝá"; + SlotName[ dutch ] = "Naar regel beneden"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÃæµÄÐÐ"; + SlotName[ greek ] = "Ðñïò ãñáììÞ êÜôù"; + SlotName[ korean ] = "¶óÀÎ ¾Æ·¡¿¡"; + SlotName[ turkish ] = "Alttaki satýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LINE_DOWN_SEL +{ + SlotName = "Bis Zeile unten selektieren"; + SlotName [ english ] = "Bis Zeile unten selektieren"; + SlotName[ english_us ] = "Select Down"; + SlotName[ portuguese ] = "Seleccionar até à linha inferior"; + SlotName[ russian ] = "Âûäåëèòü äî íèæíåé ñòðîêè"; + SlotName[ dutch ] = "Tot regel beneden selecteren"; + SlotName[ french ] = "Sélect. vers le bas"; + SlotName[ spanish ] = "Seleccionar hasta la línea de abajo"; + SlotName[ italian ] = "Seleziona fino alla riga in basso"; + SlotName[ danish ] = "Marker til række forneden"; + SlotName[ swedish ] = "Markera till raden under"; + SlotName[ polish ] = "Zaznacz do wiersza na dole"; + SlotName[ portuguese_brazilian ] = "LineDownSel"; + SlotName[ japanese ] = "�s‚̉º‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÃæµÄÐÐ"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤U¤@¦æ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÓØÑ ÇáÃÓÝá"; + SlotName[ dutch ] = "Tot regel beneden selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÃæµÄÐÐ"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôç ãñáììÞ êÜôù"; + SlotName[ korean ] = "¾Æ·¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Alttaki satýra kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LINE_NUMBERING_DLG +{ + SlotName = "Zeilennummerierung einstellen"; + SlotName [ english ] = "Zeilennumerierung einstellen"; + SlotName[ english_us ] = "Set Line Numbering"; + SlotName[ portuguese ] = "Definir numeração de linhas"; + SlotName[ russian ] = "Íàñòðîéêà íóìåðàöèè ñòðîê"; + SlotName[ dutch ] = "Regelnummering instellen"; + SlotName[ french ] = "Paramétrer la numérotation des lignes"; + SlotName[ spanish ] = "Definir numeración de líneas"; + SlotName[ italian ] = "Imposta numerazione linee"; + SlotName[ danish ] = "Indstil linjenummerering"; + SlotName[ swedish ] = "Ställ in radnumrering"; + SlotName[ polish ] = "Ustaw numeracjê wierszy"; + SlotName[ portuguese_brazilian ] = "LineNumberingDialog"; + SlotName[ japanese ] = "�s‚Ì”Ô�†•t‚¯‚Ì�Ý’è"; + SlotName[ chinese_simplified ] = "É趨ÐбàºÅ"; + SlotName[ chinese_traditional ] = "³]©w¦æ½s¸¹"; + SlotName[ arabic ] = "ÊÚííä ÊÑÞíã ÇáÃÓØÑ"; + SlotName[ dutch ] = "Regelnummering instellen"; + SlotName[ chinese_simplified ] = "É趨ÐбàºÅ"; + SlotName[ greek ] = "Êáèïñéóìüò áñßèìçóçò ãñáììþí"; + SlotName[ korean ] = "¼± ¹øÈ£¸Å±â±â ¼³Á¤"; + SlotName[ turkish ] = "Satýr numaralarýný ayarla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LINE_UP +{ + SlotName = "Zur Zeile oben"; + SlotName [ english ] = "Zur Zeile oben"; + SlotName[ english_us ] = "To Top Line"; + SlotName[ portuguese ] = "Ir para a linha superior"; + SlotName[ russian ] = "Äî âåðõíåé ñòðîêè"; + SlotName[ dutch ] = "Naar regel boven"; + SlotName[ french ] = "Aller à la ligne supérieure"; + SlotName[ spanish ] = "Ir a la línea de arriba"; + SlotName[ italian ] = "Alla riga superiore"; + SlotName[ danish ] = "Til række foroven"; + SlotName[ swedish ] = "Till raden över"; + SlotName[ polish ] = "Do górnego wiersza"; + SlotName[ portuguese_brazilian ] = "GoUp"; + SlotName[ japanese ] = "�s‚Ì�ã‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÉÏ·½"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@¦æ"; + SlotName[ arabic ] = "Åáì ÇáÓØÑ ÇáÃÚáì"; + SlotName[ dutch ] = "Naar regel boven"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÉÏ·½"; + SlotName[ greek ] = "Ðñïò ôçí ãñáììÞ Üíù"; + SlotName[ korean ] = "À­ÁÙ·Î"; + SlotName[ turkish ] = "Üsttteki satýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_LINE_UP_SEL +{ + SlotName = "Bis Zeile oben selektieren"; + SlotName [ english ] = "Bis Zeile oben selektieren"; + SlotName[ english_us ] = "Select to Top Line"; + SlotName[ portuguese ] = "Seleccionar até à linha superior"; + SlotName[ russian ] = "Âûäåëèòü äî âåðõíåé ñòðîêè"; + SlotName[ dutch ] = "Tot aan bovenste regel selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la ligne supérieure"; + SlotName[ spanish ] = "Seleccionar hasta línea de arriba"; + SlotName[ italian ] = "Seleziona fino alla riga superiore"; + SlotName[ danish ] = "Marker til række foroven"; + SlotName[ swedish ] = "Markera till raden över"; + SlotName[ polish ] = "Zaznacz do wiersza w górze"; + SlotName[ portuguese_brazilian ] = "LineUpSel"; + SlotName[ japanese ] = "�s‚Ì�ã‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÐеÄÉÏ·½"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤W¤@¦æ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÓØÑ ÇáÃÚáì"; + SlotName[ dutch ] = "Tot aan bovenste regel selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÐеÄÉÏ·½"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí ãñáììÞ Üíù"; + SlotName[ korean ] = "À­ÁÙ±îÁö ¼±ÅÃ"; + SlotName[ turkish ] = "Üstteki satýra kadar ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NAVIGATION_PI_GOTO_PAGE +{ + SlotName = "Zur Seite"; + SlotName [ english ] = "Zur Seite"; + SlotName[ english_us ] = "To Page"; + SlotName[ portuguese ] = "Ir para página"; + SlotName[ russian ] = "Ïåðåéòè íà ñòðàíèöó"; + SlotName[ dutch ] = "Naar pagina"; + SlotName[ french ] = "Aller à la page"; + SlotName[ spanish ] = "Ir a la página"; + SlotName[ italian ] = "Alla pagina"; + SlotName[ danish ] = "Til side"; + SlotName[ swedish ] = "Till sidan"; + SlotName[ polish ] = "Do strony"; + SlotName[ portuguese_brazilian ] = "GoToPage"; + SlotName[ japanese ] = "Íß°¼Þ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ãæ"; + SlotName[ chinese_traditional ] = "Âà¨ì­¶­±"; + SlotName[ arabic ] = "ÅáìÇáÕÝÍÉ"; + SlotName[ dutch ] = "Naar pagina"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ãæ"; + SlotName[ greek ] = "Ðñïò óåëßäá"; + SlotName[ korean ] = "ÆäÀÌÁö·Î"; + SlotName[ turkish ] = "Sayfa"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEW_GLOBAL_DOC +{ + SlotName = "Globaldokument erzeugen"; + SlotName [ english ] = "Globaldokument erzeugen"; + SlotName[ english_us ] = "Create Master Document"; + SlotName[ portuguese ] = "Criar documento-mestre"; + SlotName[ russian ] = "Ñîçäàòü ãëàâíûé äîêóìåíò"; + SlotName[ dutch ] = "Master-document maken"; + SlotName[ french ] = "Créer document maître"; + SlotName[ spanish ] = "Crear un documento maestro"; + SlotName[ italian ] = "Crea documento master"; + SlotName[ danish ] = "Opret hoveddokument"; + SlotName[ swedish ] = "Skapa samlingsdokument"; + SlotName[ polish ] = "Utwórz dokument g³ówny"; + SlotName[ portuguese_brazilian ] = "NewGlobalDoc"; + SlotName[ japanese ] = "ϽÀ°ÄÞ·­ÒÝÄ‚Ì�ì�¬"; + SlotName[ chinese_simplified ] = "Éú³ÉÖ÷¿ØÎĵµ"; + SlotName[ chinese_traditional ] = "«Ø¥ß¥D±±¤å¥ó"; + SlotName[ arabic ] = "ÅäÔÇÁ ãÓÊäÏ ÔÇãá"; + SlotName[ dutch ] = "Master-document maken"; + SlotName[ chinese_simplified ] = "Éú³ÉÖ÷¿ØÎĵµ"; + SlotName[ greek ] = "Äçìéïõñãßá êýñéïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ ¸¸µé±â"; + SlotName[ turkish ] = "Ana belge"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEW_HTML_DOC +{ + SlotName = "HTML Dokument erzeugen"; + SlotName [ english ] = "HTML Dokument erzeugen"; + SlotName[ english_us ] = "Create HTML Document"; + SlotName[ portuguese ] = "Criar documento HTML"; + SlotName[ russian ] = "Ñîçäàòü äîêóìåíò â ôîðìàòå HTML"; + SlotName[ dutch ] = "HTLM-document maken"; + SlotName[ french ] = "Créer un document HTML"; + SlotName[ spanish ] = "Crear documento HTML"; + SlotName[ italian ] = "Crea nuovo documento HTML"; + SlotName[ danish ] = "Opret HTML-dokument"; + SlotName[ swedish ] = "Skapa HTML-dokument"; + SlotName[ polish ] = "Utwórz dokument HTML"; + SlotName[ portuguese_brazilian ] = "NewHtmlDoc"; + SlotName[ japanese ] = "HTMLŒ`Ž®‚Ì•¶�‘�ì�¬"; + SlotName[ chinese_simplified ] = "Éú³É HTML Îĵµ"; + SlotName[ chinese_traditional ] = "»s§@ HTML ¤å¥ó"; + SlotName[ arabic ] = "ÅäÔÇÁ ãÓÊäÏ HTML"; + SlotName[ dutch ] = "HTLM-document maken"; + SlotName[ chinese_simplified ] = "Éú³É HTML Îĵµ"; + SlotName[ greek ] = "Äçìéïõñãßá åããñÜöïõ HTML"; + SlotName[ korean ] = "HTML ¹®¼­ ¸¸µé±â"; + SlotName[ turkish ] = "HTML belgesi oluþtur"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_BOOKMARK +{ + SlotName = "Zur nächsten Textmarke"; + SlotName [ english ] = "Zur nächsten Textmarke"; + SlotName[ english_us ] = "To Next Bookmark"; + SlotName[ portuguese ] = "Marcador de texto seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåé çàêëàäêè"; + SlotName[ dutch ] = "Naar volgende tekstmarkering"; + SlotName[ french ] = "Aller au repère de texte suivant"; + SlotName[ spanish ] = "Ir al marcador siguiente"; + SlotName[ italian ] = "Al segnalibro successivo"; + SlotName[ danish ] = "Til næste tekstmarkering"; + SlotName[ swedish ] = "Till nästa textmarkering"; + SlotName[ polish ] = "Do nastêpnej zak³adki"; + SlotName[ portuguese_brazilian ] = "JumpToNextBookmark"; + SlotName[ japanese ] = "ŽŸ‚Ì÷½Äϰ¸‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÊéÇ©"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@®ÑÅÒ"; + SlotName[ arabic ] = "Åáì ÇáÅÔÇÑÉ ÇáãÑÌÚíÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende tekstmarkering"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÊéÇ©"; + SlotName[ greek ] = "Ðñïò åðüìåíï óåëéäïäåßêôç"; + SlotName[ korean ] = "´ÙÀ½ Ã¥ °¥ÇÇ·Î"; + SlotName[ turkish ] = "Sonraki metin belirteci"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_FOOTNOTE +{ + SlotName = "Zur nächsten Fußnote"; + SlotName [ english ] = "Zur nächsten Fußnote"; + SlotName[ english_us ] = "To Next Footnote"; + SlotName[ portuguese ] = "Ir para nota de rodapé seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåé ñíîñêè"; + SlotName[ dutch ] = "Naar volgende voetnoot"; + SlotName[ french ] = "À la note de bas de page suivante"; + SlotName[ spanish ] = "Ir a la nota al pie siguiente"; + SlotName[ italian ] = "Alla nota a piè pagina successiva"; + SlotName[ danish ] = "Til næste fodnote"; + SlotName[ swedish ] = "Till nästa fotnot"; + SlotName[ polish ] = "Do nastêpnego przypisu dolnego"; + SlotName[ portuguese_brazilian ] = "GoToNextFootnote"; + SlotName[ japanese ] = "ŽŸ‚Ì‹r’�‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö×¢½Å"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Óµù¸}"; + SlotName[ arabic ] = "Åáì ÇáÍÇÔíÉ ÇáÓÝáíÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende voetnoot"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö×¢½Å"; + SlotName[ greek ] = "Ðñïò ôçí åðüìåíç õðïóçìåßùóç"; + SlotName[ korean ] = "´ÙÀ½ °¢ÁÖ·Î"; + SlotName[ turkish ] = "Sonraki altbilgi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_PARA +{ + SlotName = "Zum nächsten Absatz"; + SlotName [ english ] = "Zum nächsten Absatz"; + SlotName[ english_us ] = "To Next Paragraph"; + SlotName[ portuguese ] = "Parágrafo seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåãî àáçàöà"; + SlotName[ dutch ] = "Naar volgende alinea"; + SlotName[ french ] = "Au paragraphe suivant"; + SlotName[ spanish ] = "Ir al párrafo siguiente"; + SlotName[ italian ] = "Al paragrafo successivo"; + SlotName[ danish ] = "Til næste afsnit"; + SlotName[ swedish ] = "Till nästa stycke"; + SlotName[ polish ] = "Do nastêpnego akapitu"; + SlotName[ portuguese_brazilian ] = "GoToNextPara"; + SlotName[ japanese ] = "ŽŸ‚Ì’i—Ž‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¶ÎÂä"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¬q¸¨"; + SlotName[ arabic ] = "Åáì ÇáÝÞÑÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende alinea"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¶ÎÂä"; + SlotName[ greek ] = "Ðñïò ôçí åðüìåíç ðáñÜãñáöï"; + SlotName[ korean ] = "´ÙÀ½ ´Ü¶ôÀ¸·Î"; + SlotName[ turkish ] = "Sonraki paragraf"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_SENT +{ + SlotName = "Zum nächsten Satz"; + SlotName [ english ] = "Zum nächsten Satz"; + SlotName[ english_us ] = "To Next Sentence"; + SlotName[ portuguese ] = "Ir para frase seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåãî ïðåäëîæåíèÿ"; + SlotName[ dutch ] = "Naar volgende zin"; + SlotName[ french ] = "Aller à la phrase suivante"; + SlotName[ spanish ] = "Ir la oración siguiente"; + SlotName[ italian ] = "Alla frase successiva"; + SlotName[ danish ] = "Til næste sætning"; + SlotName[ swedish ] = "Till nästa mening"; + SlotName[ polish ] = "Do nastêpnego zdania"; + SlotName[ portuguese_brazilian ] = "GoToNextSentence"; + SlotName[ japanese ] = "ŽŸ‚Ì•¶�Í‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¾ä×Ó"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¥y¤l"; + SlotName[ arabic ] = "ÍÊì ÇáÌãáÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende zin"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¾ä×Ó"; + SlotName[ greek ] = "Ðñïò ôçí åðüìåíç ðñüôáóç"; + SlotName[ korean ] = "´ÙÀ½ ¹®ÀåÀ¸·Î"; + SlotName[ turkish ] = "Sonraki cümle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_SENT_SEL +{ + SlotName = "Bis nächsten Satz selektieren"; + SlotName [ english ] = "Bis nächsten Satz selektieren"; + SlotName[ english_us ] = "Select to Next Sentence"; + SlotName[ portuguese ] = "Seleccionar até frase seguinte"; + SlotName[ russian ] = "Âûäåëèòü äî ñëåäóþùåãî ïðåäëîæåíèÿ"; + SlotName[ dutch ] = "Tot aan volgende zin selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la phrase suivante"; + SlotName[ spanish ] = "Seleccionar hasta frase siguiente"; + SlotName[ italian ] = "Seleziona fino alla frase successiva"; + SlotName[ danish ] = "Marker til næste sætning"; + SlotName[ swedish ] = "Markera till nästa mening"; + SlotName[ polish ] = "Zaznacz do nastêpnego zdania"; + SlotName[ portuguese_brazilian ] = "GotoNextSentenceSel"; + SlotName[ japanese ] = "ŽŸ‚Ì•¶�͂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»¸ö¾ä×Ó"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤U¤@¥y¤l"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÌãáÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Tot aan volgende zin selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»¸ö¾ä×Ó"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí åðüìåíç ðñüôáóç"; + SlotName[ korean ] = "´ÙÀ½ ¹®Àå ¼±ÅÃ"; + SlotName[ turkish ] = "Sonraki cümleye kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_TABLE +{ + SlotName = "Zur nächsten Tabelle"; + SlotName [ english ] = "Zur nächsten Tabelle"; + SlotName[ english_us ] = "To Next Table"; + SlotName[ portuguese ] = "Ir para tabela seguinte"; + SlotName[ russian ] = "Äî ñëåäóþùåé òàáëèöû"; + SlotName[ dutch ] = "Naar volgende tabel"; + SlotName[ french ] = "Au tableau suivant"; + SlotName[ spanish ] = "Ir a la tabla siguiente"; + SlotName[ italian ] = "Alla tabella successiva"; + SlotName[ danish ] = "Til næste tabel"; + SlotName[ swedish ] = "Till nästa tabell"; + SlotName[ polish ] = "Do nastêpnej tabeli"; + SlotName[ portuguese_brazilian ] = "GoToNextTable"; + SlotName[ japanese ] = "ŽŸ‚Ì•\\‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö±í¸ñ"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Óªí®æ"; + SlotName[ arabic ] = "Åáì ÇáÌÏæá ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgende tabel"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö±í¸ñ"; + SlotName[ greek ] = "Ðñïò ôïí åðüìåíï ðßíáêá"; + SlotName[ korean ] = "´ÙÀ½ Ç¥·Î"; + SlotName[ turkish ] = "Sonraki tablo"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_TBLFML +{ + SlotName = "Zur nächsten Tabellenformel"; + SlotName [ english ] = "Zur nächsten Tabellenformel"; + SlotName[ english_us ] = "Go to next table formula"; + SlotName[ portuguese ] = "Fórmula de cálculo seguinte"; + SlotName[ russian ] = "Ïåðåéòè ê ñëåäóþùåé ôîðìóëå òàáëèöû"; + SlotName[ dutch ] = "Naar volgende tabelformule"; + SlotName[ french ] = "Aller à la formule de calcul suivante"; + SlotName[ spanish ] = "Ir a la próxima fórmula"; + SlotName[ italian ] = "Alla formula di tabella successiva"; + SlotName[ danish ] = "Til næste tabelformel"; + SlotName[ swedish ] = "Till nästa tabellformel"; + SlotName[ polish ] = "PrzejdŸ do nastêpnej formu³y tabeli"; + SlotName[ portuguese_brazilian ] = "GotoNextTableFormula"; + SlotName[ japanese ] = "ŽŸ‚Ì•\\‚Ì�”Ž®‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¹¤×÷±í¹«Ê½"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¤u§@ªí¤½¦¡"; + SlotName[ arabic ] = "Åáì ÕíÛÉ ÇáÌÏæá ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende tabelformule"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸ö¹¤×÷±í¹«Ê½"; + SlotName[ greek ] = "Ðñïò ôïí åðüìåíï ôýðï ôïõ ðßíáêá"; + SlotName[ korean ] = "´ÙÀ½ Å×ÀÌºí ¼ö½ÄÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Sonraki tablo formulü"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_TBLFML_ERR +{ + SlotName = "Zur nächsten fehlerhaften Tabellenformel"; + SlotName [ english ] = "Zur nächsten fehlerhaften Tabellenformel"; + SlotName[ english_us ] = "Go to next faulty table formula"; + SlotName[ portuguese ] = "Fórmula de cálculo seguinte com defeito"; + SlotName[ russian ] = "Ïåðåéòè ê ñëåäóþùåé ôîðìóëå òàáëèöû, ñîäåðæàùåé îøèáêè"; + SlotName[ dutch ] = "Naar volgende foutieve tabelformule"; + SlotName[ french ] = "Aller à la prochaine formule de calcul erronée"; + SlotName[ spanish ] = "Ir a fórmula errónea siguiente"; + SlotName[ italian ] = "Alla formula di tabella errata successiva"; + SlotName[ danish ] = "Til næste fejlagtige tabelformel"; + SlotName[ swedish ] = "Till nästa felaktiga tabellformel"; + SlotName[ polish ] = "PrzejdŸ do nastêpnej b³êdnej formu³y tabeli"; + SlotName[ portuguese_brazilian ] = "GotoNextWrongTableFormula"; + SlotName[ japanese ] = "ŽŸ‚Ì�³‚µ‚­‚È‚¢•\\‚Ì�‘Ž®‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÓдíÎóµÄ¹¤×÷±í¹«Ê½"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¦³¿ù»~ªº¤u§@ªí¤½¦¡"; + SlotName[ arabic ] = "Åáì ÕíÛÉ ÇáÌÏæá ÇáÎÇØÆÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar volgende foutieve tabelformule"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öÓдíÎóµÄ¹¤×÷±í¹«Ê½"; + SlotName[ greek ] = "Ðñïò ôïí åðüìåíï ëáíèáóìÝíï ôýðï ôïõ ðßíáêá"; + SlotName[ korean ] = "Ʋ¸° ´ÙÀ½ Å×ÀÌºí ¼ö½ÄÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Sonraki hatalý tablo formulü"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_TOXMARK +{ + SlotName = "Zur nächsten Indexmarkierung"; + SlotName [ english ] = "Zur nächsten Indexmarkierung"; + SlotName[ english_us ] = "Go to Next Index Mark"; + SlotName[ portuguese ] = "Marca seguinte do índice"; + SlotName[ russian ] = "Ïåðåéòè ê ñëåäóþùåé ìåòêå óêàçàòåëÿ"; + SlotName[ dutch ] = "Naar volgende indexmarkering"; + SlotName[ french ] = "Aller à la marque d'index suivante"; + SlotName[ spanish ] = "Ir a la marca de índice siguiente"; + SlotName[ italian ] = "Al contrassegno indice successivo"; + SlotName[ danish ] = "Til næste indeksmarkering"; + SlotName[ swedish ] = "Till nästa indexmarkering"; + SlotName[ polish ] = "PrzejdŸ do nastêpnego znacznika indeksu"; + SlotName[ portuguese_brazilian ] = "GotoNextIndexMark"; + SlotName[ japanese ] = "ŽŸ‚̲ÝÃÞ¸½Ï°¸‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öË÷Òý±ê¼Ç"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­Ó¯Á¤Þ¼Ð°O"; + SlotName[ arabic ] = "Åáì ÇáÊÍÏíÏ ÇáÝåÑÓí ÇáÊÇáí"; + SlotName[ dutch ] = "Naar volgende indexmarkering"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»¸öË÷Òý±ê¼Ç"; + SlotName[ greek ] = "Ðñïò ôï åðüìåíï óçìÜäé åõñåôçñßïõ"; + SlotName[ korean ] = "´ÙÀ½ »öÀΠǥ½Ã·Î À̵¿"; + SlotName[ turkish ] = "Sonraki dizin iþareti"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_WORD +{ + SlotName = "Zum Wort rechts"; + SlotName [ english ] = "Zum Wort rechts"; + SlotName[ english_us ] = "To Word Right"; + SlotName[ portuguese ] = "Ir para palavra à direita"; + SlotName[ russian ] = "Ê ñëîâó ñïðàâà"; + SlotName[ dutch ] = "Naar woord rechts"; + SlotName[ french ] = "Aller au mot à droite"; + SlotName[ spanish ] = "Ir a la derecha de la palabra"; + SlotName[ italian ] = "Alla parola destra"; + SlotName[ danish ] = "Til ordet til højre"; + SlotName[ swedish ] = "Till höger ord"; + SlotName[ polish ] = "Do s³owa z prawej strony"; + SlotName[ portuguese_brazilian ] = "GoToNextWord"; + SlotName[ japanese ] = "’PŒê‚̉E‘¤‚Ö"; + SlotName[ chinese_simplified ] = "תµ½×ÖµÄÓÒ·½"; + SlotName[ chinese_traditional ] = "Âà¨ì¦r­º"; + SlotName[ arabic ] = "ÍÊì íãíä ÇáßáãÉ"; + SlotName[ dutch ] = "Naar woord rechts"; + SlotName[ chinese_simplified ] = "תµ½×ÖµÄÓÒ·½"; + SlotName[ greek ] = "Ðñïò ôçí ëÝîç äåîéÜ"; + SlotName[ korean ] = "´Ü¾î ¿À¸¥ÂÊ À̵¿"; + SlotName[ turkish ] = "Saðdaki sözcük"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NEXT_WORD_SEL +{ + SlotName = "Bis Wort rechts selektieren"; + SlotName [ english ] = "Bis Wort rechts selektieren"; + SlotName[ english_us ] = "Select to Word Right"; + SlotName[ portuguese ] = "Seleccionar até ao final da palavra"; + SlotName[ russian ] = "Âûäåëèòü äî ñëîâà ñïðàâà"; + SlotName[ dutch ] = "Tot aan woord rechts selecteren"; + SlotName[ french ] = "Sélect. jusqu'au mot à droite"; + SlotName[ spanish ] = "Seleccionar hasta el final de la palabra"; + SlotName[ italian ] = "Seleziona fino alla parola destra"; + SlotName[ danish ] = "Marker til ordet til højre"; + SlotName[ swedish ] = "Markera till höger ord"; + SlotName[ polish ] = "Zaznacz do s³owa z prawej strony"; + SlotName[ portuguese_brazilian ] = "WordRightSel"; + SlotName[ japanese ] = "’PŒê‚̉E‘¤‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ×ÖµÄÓÒ·½"; + SlotName[ chinese_traditional ] = "¿ï¤¤¦Ü¦r¥½"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáßáãÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Tot aan woord rechts selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ×ÖµÄÓÒ·½"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí ëÝîç äåîéÜ"; + SlotName[ korean ] = "´Ü¿À ¿À¸¥ÂÊ ¼±ÅÃ"; + SlotName[ turkish ] = "Saðdaki sözcüðe kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_DOWN +{ + SlotName = "Eine Ebene runter"; + SlotName [ english ] = "Eine Ebene runter"; + SlotName[ english_us ] = "Down One Level"; + SlotName[ portuguese ] = "Baixar um nível"; + SlotName[ russian ] = "Íà îäèí óðîâåíü âíèç"; + SlotName[ dutch ] = "Een niveau naar beneden"; + SlotName[ french ] = "Abaisser d'un niveau"; + SlotName[ spanish ] = "Bajar un nivel"; + SlotName[ italian ] = "Un livello più in alto"; + SlotName[ danish ] = "Et niveau ned"; + SlotName[ swedish ] = "En nivå nedåt"; + SlotName[ polish ] = "W dó³ jeden poziom"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberLevelDown"; + SlotName[ japanese ] = "1ÚÍÞÙ‰º‚Ö"; + SlotName[ chinese_simplified ] = "ÏòÏÂÒ»¼¶"; + SlotName[ chinese_traditional ] = "¦V¤U¤@¯Å"; + SlotName[ arabic ] = "ãÓÊæì æÇÍÏ áÃÓÝá"; + SlotName[ dutch ] = "Een niveau naar beneden"; + SlotName[ chinese_simplified ] = "ÏòÏÂÒ»¼¶"; + SlotName[ greek ] = "ÌåôáöïñÜ Ýíá åðßðåäï ÷áìçëüôåñá"; + SlotName[ korean ] = "¼öÁØ ³·Ãß±â À̵¿"; + SlotName[ turkish ] = "Bir düzey aþaðý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_MOVEDOWN +{ + SlotName = "Nach unten schieben"; + SlotName [ english ] = "Nach unten schieben"; + SlotName[ english_us ] = "Move Down"; + SlotName[ portuguese ] = "Mover para baixo"; + SlotName[ russian ] = "Ïåðåìåñòèòü âíèç"; + SlotName[ dutch ] = "Naar beneden verplaatsen"; + SlotName[ french ] = "Déplacer vers le bas"; + SlotName[ spanish ] = "Desplazar hacia abajo"; + SlotName[ italian ] = "Sposta verso il basso"; + SlotName[ danish ] = "Flyt nedad"; + SlotName[ swedish ] = "Flytta nedåt"; + SlotName[ polish ] = "Przesuñ w dó³"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberContentOneDown"; + SlotName[ japanese ] = "‰º•û‚ÖˆÚ“®"; + SlotName[ chinese_simplified ] = "ÏòÏÂÒÆ¶¯"; + SlotName[ chinese_traditional ] = "¦V¤U²¾°Ê"; + SlotName[ arabic ] = "ÅÒÇÍÉ áÃÓÝá"; + SlotName[ dutch ] = "Naar beneden verplaatsen"; + SlotName[ chinese_simplified ] = "ÏòÏÂÒÆ¶¯"; + SlotName[ greek ] = "Ìåôáêßíçóç ðñïò ôá êÜôù"; + SlotName[ korean ] = "¾Æ·¡·Î À̵¿"; + SlotName[ turkish ] = "Aþaðý taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_MOVEUP +{ + SlotName = "Nach oben schieben"; + SlotName [ english ] = "Nach oben schieben"; + SlotName[ english_us ] = "Move Up"; + SlotName[ portuguese ] = "Mover para cima"; + SlotName[ russian ] = "Ïåðåìåñòèòü ââåðõ"; + SlotName[ dutch ] = "Naar boven verplaatsen"; + SlotName[ french ] = "Déplacer vers le haut"; + SlotName[ spanish ] = "Desplazar hacia arriba"; + SlotName[ italian ] = "Sposta verso l'alto"; + SlotName[ danish ] = "Flyt opad"; + SlotName[ swedish ] = "Flytta uppåt"; + SlotName[ polish ] = "Przesuñ do góry"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberContentOneUp"; + SlotName[ japanese ] = "�ã•û‚ÖˆÚ“®"; + SlotName[ chinese_simplified ] = "ÏòÉÏÒÆ¶¯"; + SlotName[ chinese_traditional ] = "¦V¤W²¾°Ê"; + SlotName[ arabic ] = "ÅÒÇÍÉ áÃÚáì"; + SlotName[ dutch ] = "Naar boven verplaatsen"; + SlotName[ chinese_simplified ] = "ÏòÉÏÒÆ¶¯"; + SlotName[ greek ] = "ÌåôáöïñÜ ðñïò ôá Üíù"; + SlotName[ korean ] = "À§·Î À̵¿"; + SlotName[ turkish ] = "Yukarý taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_NEXT +{ + SlotName = "Zum nächsten Absatz gleicher Ebene"; + SlotName [ english ] = "Zum nächsten Absatz gleicher Ebene"; + SlotName[ english_us ] = "To Next Paragraph in Level"; + SlotName[ portuguese ] = "Páragrafo seguinte do mesmo nível"; + SlotName[ russian ] = "Äî ñëåäóþùåãî àáçàöà òîãî æå óðîâíÿ"; + SlotName[ dutch ] = "Naar de volgende alinea op hetzelfde niveau"; + SlotName[ french ] = "Au paragraphe suivant du même niveau"; + SlotName[ spanish ] = "Al párrafo siguiente del mismo nivel"; + SlotName[ italian ] = "Al paragrafo successivo dello stesso livello"; + SlotName[ danish ] = "Til næste afsnit samme niveau"; + SlotName[ swedish ] = "Till nästa stycke i samma nivå"; + SlotName[ polish ] = "Do nastêpnego akapitu na tym samym poziomie"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberNextNumberParagraph"; + SlotName[ japanese ] = "ŽŸ‚Ì“¯ÚÍÞÙ‚Ì’i—Ž‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Í¬¼¶µÄÏÂÒ»¸ö¶ÎÂä"; + SlotName[ chinese_traditional ] = "Âà¨ì¦P¯Åªº¤U¤@­Ó¬q¸¨"; + SlotName[ arabic ] = "Åáì ÇáÝÞÑÉ ÇáÊÇáíÉ Ýí äÝÓ ÇáãÓÊæì"; + SlotName[ dutch ] = "Naar de volgende alinea op hetzelfde niveau"; + SlotName[ chinese_simplified ] = "תµ½Í¬¼¶µÄÏÂÒ»¸ö¶ÎÂä"; + SlotName[ greek ] = "Ðñïò åðüìåíç ðáñÜãñáöï ßäéïõ åðéðÝäïõ"; + SlotName[ korean ] = "°°Àº ·¹º§ÀÇ ´ÙÀ½ ´Ü¶ôÀ¸·Î"; + SlotName[ turkish ] = "Ayný düzeyde bulunan sonraki paragraf"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_NONUM +{ + SlotName = "Eintrag ohne Nummer einfügen"; + SlotName [ english ] = "Eintrag ohne Nummer einfügen"; + SlotName[ english_us ] = "Insert Unnumbered Entry"; + SlotName[ portuguese ] = "Inserir entrada sem número"; + SlotName[ russian ] = "Âñòàâèòü ýëåìåíò áåç íîìåðà"; + SlotName[ dutch ] = "Item zonder nummer invoegen"; + SlotName[ french ] = "Insérer une entrée sans numéro"; + SlotName[ spanish ] = "Insertar entrada sin número"; + SlotName[ italian ] = "Inserisci voce senza numero"; + SlotName[ danish ] = "Indsæt element uden nummer"; + SlotName[ swedish ] = "Infoga post utan nummer"; + SlotName[ polish ] = "Wstaw wpis bez numeru"; + SlotName[ portuguese_brazilian ] = "BulletAndNumberWithoutNum"; + SlotName[ japanese ] = "”Ô�†‚È‚µ‚Ì“ü—Í‚ð‘}“ü"; + SlotName[ chinese_simplified ] = "²»´ø±àºÅ²åÈëÌõÄ¿"; + SlotName[ chinese_traditional ] = "¤£±a½s¸¹´¡¤J¶µ¥Ø"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅÏÎÇá ÛíÑ ãÑÞã"; + SlotName[ dutch ] = "Item zonder nummer invoegen"; + SlotName[ chinese_simplified ] = "²»´ø±àºÅ²åÈëÌõÄ¿"; + SlotName[ greek ] = "ÅéóáãùãÞ êáôá÷þñéóçò ÷ùñßò áñßèìçóç"; + SlotName[ korean ] = "¹øÈ£ ¾ø´Â Ç׸ñ »ðÀÔ"; + SlotName[ turkish ] = "Numarasýz giriþ ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_OFF +{ + SlotName = "Nummerierung aus"; + SlotName [ english ] = "Numerierung aus"; + SlotName[ english_us ] = "Numbering Off"; + SlotName[ portuguese ] = "Desactivar numeração"; + SlotName[ russian ] = "Âûêëþ÷èòü íóìåðàöèþ"; + SlotName[ dutch ] = "Nummering uit"; + SlotName[ french ] = "Désactiver puces ou numérotation"; + SlotName[ spanish ] = "Desactivar numeración"; + SlotName[ italian ] = "Numerazione off"; + SlotName[ danish ] = "Deaktiver nummerering"; + SlotName[ swedish ] = "Numrering av"; + SlotName[ polish ] = "Wy³¹cz numeracjê"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberOff"; + SlotName[ japanese ] = "”Ô�†•t‚¯ µÌ"; + SlotName[ chinese_simplified ] = "ÒþÈë±àºÅ"; + SlotName[ chinese_traditional ] = "Áô¤J½s¸¹"; + SlotName[ arabic ] = "ÊÑÞíã ÅíÞÇÝ"; + SlotName[ dutch ] = "Nummering uit"; + SlotName[ chinese_simplified ] = "ÒþÈë±àºÅ"; + SlotName[ greek ] = "Áðåíåñãïðïßçóç áñßèìçóçò"; + SlotName[ korean ] = "¹øÈ£ ¸Å±â±â ÁßÁö"; + SlotName[ turkish ] = "Numaralama kapalý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_OUTLINE_DOWN +{ + SlotName = "Mit Unterpunkten runter"; + SlotName [ english ] = "Mit Unterpunkten runter"; + SlotName[ english_us ] = "Move Down with Subpoints"; + SlotName[ portuguese ] = "Baixar um nível (subníveis incluídos)"; + SlotName[ russian ] = "Ïåðåìåñòèòü ñ ïîäïóíêòàìè âíèç"; + SlotName[ dutch ] = "Met subniveaus naar beneden"; + SlotName[ french ] = "Abaisser d'un niveau (sous-points inclus)"; + SlotName[ spanish ] = "Bajar un nivel con subniveles"; + SlotName[ italian ] = "Riduci livello con sottopunti"; + SlotName[ danish ] = "Nedad med underpunkter"; + SlotName[ swedish ] = "Nedåt med undernivåer"; + SlotName[ polish ] = "Przenieœ w dó³ z podpunktami"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberDownSublevels"; + SlotName[ japanese ] = "ÚÍÞÙ‰º‚°"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÏÂ"; + SlotName[ chinese_traditional ] = "³s¦P¤À¯Å¦V¤U"; + SlotName[ arabic ] = "Åáì ÃÓÝá ÈÇáäÞÇØ ÇáÝÑÚíÉ"; + SlotName[ dutch ] = "Met subniveaus naar beneden"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÏÂ"; + SlotName[ greek ] = "Ìåôáêßíçóç êÜôù ìáæß ìå ôá õðïóçìåßá"; + SlotName[ korean ] = "¾Æ·¡Á¡À» °¡Áö°í ¹ØÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Alt noktalarý ile aþaðý taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_OUTLINE_MOVEDOWN +{ + SlotName = "Mit Unterpunkten nach unten schieben"; + SlotName [ english ] = "Mit Unterpunkten nach unten schieben"; + SlotName[ english_us ] = "Move Down with Subpoints"; + SlotName[ portuguese ] = "Mover para baixo com subníveis"; + SlotName[ russian ] = "Ïåðåìåñòèòü ñ ïîäïóíêòàìè âíèç"; + SlotName[ dutch ] = "Met subniveaus naar beneden verplaatsen"; + SlotName[ french ] = "Déplacer vers le bas (sous-points inclus)"; + SlotName[ spanish ] = "Desplazar hacia abajo con subniveles"; + SlotName[ italian ] = "Sposta in basso con sottopunti"; + SlotName[ danish ] = "Flyt nedad med underpunkter"; + SlotName[ swedish ] = "Flytta nedåt med undernivåer"; + SlotName[ polish ] = "Przenieœ w dó³ z podpunktami"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberContentOneDownSubItems"; + SlotName[ japanese ] = "ÚÍÞÙ‰º‚°"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÏÂÒÆ¶¯"; + SlotName[ chinese_traditional ] = "³s¦P¤ÀÂI¦V¤U²¾°Ê"; + SlotName[ arabic ] = "ÅÒÇÍÉ Åáì ÃÓÝá ÈÇáäÞÇØ ÇáÝÑÚíÉ"; + SlotName[ dutch ] = "Met subniveaus naar beneden verplaatsen"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÏÂÒÆ¶¯"; + SlotName[ greek ] = "Ìåôáêßíçóç êÜôù ìáæß ìå ôá õðïóçìåßá"; + SlotName[ korean ] = "¾Æ·¡Á¡À» °¡Áö°í ¹ØÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Alt noktalarý ile aþaðý taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_OUTLINE_MOVEUP +{ + SlotName = "Mit Unterpunkten nach oben schieben"; + SlotName [ english ] = "Mit Unterpunkten nach oben schieben"; + SlotName[ english_us ] = "Move Up with Subpoints"; + SlotName[ portuguese ] = "Mover para cima com subníveis"; + SlotName[ russian ] = "Ïåðåìåñòèòü ñ ïîäïóíêòàìè ââåðõ"; + SlotName[ dutch ] = "Met subniveaus naar boven verplaatsen"; + SlotName[ french ] = "Déplacer vers le haut (sous-points inclus)"; + SlotName[ spanish ] = "Desplazar hacia arriba con subniveles"; + SlotName[ italian ] = "Sposta con sottopunti verso il basso"; + SlotName[ danish ] = "Flyt opad med underpunkter"; + SlotName[ swedish ] = "Flytta uppåt med undernivåer"; + SlotName[ polish ] = "Przenieœ w górê z podpunktami"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberContentOneUpSubItems"; + SlotName[ japanese ] = "ÚÍÞÙ‰º‚°"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÉÏÒÆ¶¯"; + SlotName[ chinese_traditional ] = "³s¦P¤À¯Å¦V¤W²¾°Ê"; + SlotName[ arabic ] = "ÅÒÇÍÉ Åáì ÃÚáì ÈÇáäÞÇØ ÇáÝÑÚíÉ"; + SlotName[ dutch ] = "Met subniveaus naar boven verplaatsen"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÉÏÒÆ¶¯"; + SlotName[ greek ] = "Ìåôáêßíçóç Üíù ìáæß ìå ôá õðïóçìåßá"; + SlotName[ korean ] = "¾Æ·¡Á¡À» °¡Áö°í À§·Î À̵¿"; + SlotName[ turkish ] = "Alt noktalarý ile yukarýya taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_OUTLINE_UP +{ + SlotName = "Mit Unterpunkten hoch"; + SlotName [ english ] = "Mit Unterpunkten hoch"; + SlotName[ english_us ] = "Move Up with Subpoints"; + SlotName[ portuguese ] = "Subir um nível (subpontos incluídos)"; + SlotName[ russian ] = "Ïåðåìåñòèòü ñ ïîäïóíêòàìè ââåðõ"; + SlotName[ dutch ] = "Met subniveaus naar boven"; + SlotName[ french ] = "Hausser d'un niveau (sous-points inclus)"; + SlotName[ spanish ] = "Subir un nivel con subniveles"; + SlotName[ italian ] = "In alto con sottopunti"; + SlotName[ danish ] = "Opad med underpunkter"; + SlotName[ swedish ] = "Uppåt med undernivåer"; + SlotName[ polish ] = "Przenieœ w górê z podpunktami"; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberUpSubLevels"; + SlotName[ japanese ] = "ÚÍÞÙ�ã‚°"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÉÏ"; + SlotName[ chinese_traditional ] = "³s¦P¤À¯Å¦V¤W"; + SlotName[ arabic ] = "Åáì ÃÚáì ÈÇáäÞÇØ ÇáÝÑÚíÉ"; + SlotName[ dutch ] = "Met subniveaus naar boven"; + SlotName[ chinese_simplified ] = "Á¬Í¬·Ö¼¶ÏòÉÏ"; + SlotName[ greek ] = "Ìåôáêßíçóç Üíù ìáæß ìå ôá õðïóçìåßá"; + SlotName[ korean ] = "¾Æ·¡Á¡À» °¡Áö°í À§·Î À̵¿"; + SlotName[ turkish ] = "Alt noktalarý ile yukarýya taþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_PREV +{ + SlotName = "Zum vorherigen Absatz gleicher Ebene"; + SlotName [ english ] = "Zum vorherigen Absatz gleicher Ebene"; + SlotName[ english_us ] = "To Previous Paragraph in Level"; + SlotName[ portuguese ] = "Parágrafo anterior do mesmo nível"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî àáçàöà òîãî æå óðîâíÿ"; + SlotName[ dutch ] = "Naar de vorige alinea op hetzelfde niveau"; + SlotName[ french ] = "Au paragraphe du même niveau"; + SlotName[ spanish ] = "Al párrafo anterior del mismo nivel"; + SlotName[ italian ] = "Al paragrafo precedente stesso livello"; + SlotName[ danish ] = "Til forrige afsnit samme niveau"; + SlotName[ swedish ] = "Till föregående stycke i samma nivå"; + SlotName[ polish ] = "Do poprzedniego akapitu na tym samym poziomie "; + SlotName[ portuguese_brazilian ] = "BulletsAndNumberPrevNumberParagraph"; + SlotName[ japanese ] = "‘O‚Ì“¯ÚÍÞÙ‚Ì’i—Ž‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Í¬¼¶µÄÉÏÒ»¸ö¶ÎÂä"; + SlotName[ chinese_traditional ] = "Âà¨ì¦P¯Åªº¤W¤@­Ó¬q¸¨"; + SlotName[ arabic ] = "Åáì ÇáÝÞÑÉ ÇáÓÇÈÞÉ Ýí äÝÓ ÇáãÓÊæì"; + SlotName[ dutch ] = "Naar de vorige alinea op hetzelfde niveau"; + SlotName[ chinese_simplified ] = "תµ½Í¬¼¶µÄÉÏÒ»¸ö¶ÎÂä"; + SlotName[ greek ] = "Ðñïçãïýìåíç ðáñÜãñáöïò ôïõ ßäéïõ åðéðÝäïõ"; + SlotName[ korean ] = "°°Àº ·¹º§ÀÇ ÀÌÀü ´Ü¶ôÀ¸·Î"; + SlotName[ turkish ] = "Ayný düzeyde bulunan önceki paragraf"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_BULLET_UP +{ + SlotName = "Eine Ebene hoch"; + SlotName [ english ] = "Eine Ebene hoch"; + SlotName[ english_us ] = "Up One Level"; + SlotName[ portuguese ] = "Subir um nível"; + SlotName[ russian ] = "Íà îäèí óðîâåíü ââåðõ"; + SlotName[ dutch ] = "Een niveau naar boven"; + SlotName[ french ] = "Hausser d'un niveau"; + SlotName[ spanish ] = "Subir un nivel"; + SlotName[ italian ] = "Un livello più in alto"; + SlotName[ danish ] = "Et niveau op"; + SlotName[ swedish ] = "En nivå uppåt"; + SlotName[ polish ] = "Do góry jeden poziom"; + SlotName[ portuguese_brazilian ] = "BuletsAndNumberLevelUp"; + SlotName[ japanese ] = "1ÚÍÞÙ �ã‚Ö"; + SlotName[ chinese_simplified ] = "ÏòÉÏÒ»¼¶"; + SlotName[ chinese_traditional ] = "¦V¤W¤@¯Å"; + SlotName[ arabic ] = "ãÓÊæì æÇÍÏ áÃÚáì"; + SlotName[ dutch ] = "Een niveau naar boven"; + SlotName[ chinese_simplified ] = "ÏòÉÏÒ»¼¶"; + SlotName[ greek ] = "¸íá åðßðåäï øçëüôåñá"; + SlotName[ korean ] = "ÇÑ ·¹º§ À§·Î"; + SlotName[ turkish ] = "Bir düzey yukarý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_FORMAT_TABLE_DLG +{ + SlotName = "Zahlenformat bearbeiten"; + SlotName [ english ] = "Zahlenformat bearbeiten"; + SlotName[ english_us ] = "Edit Number Format"; + SlotName[ portuguese ] = "Formato de números"; + SlotName[ russian ] = "Ïðàâêà ÷èñëîâîãî ôîðìàòà"; + SlotName[ dutch ] = "Getalnotatie bewerken"; + SlotName[ french ] = "Modifier le format numérique"; + SlotName[ spanish ] = "Editar formato de números"; + SlotName[ italian ] = "Modifica formato numero"; + SlotName[ danish ] = "Rediger talformat"; + SlotName[ swedish ] = "Redigera talformat"; + SlotName[ polish ] = "Edytuj format liczb"; + SlotName[ portuguese_brazilian ] = "TableNumberFormatDialog"; + SlotName[ japanese ] = "�”Žš‚Ì�‘Ž®•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­Êý×Ö¸ñʽ"; + SlotName[ chinese_traditional ] = "½s¿è¼Æ¦r®æ¦¡"; + SlotName[ arabic ] = "ÊÍÑíÑ ÊäÓíÞ ÇáÃÑÞÇã"; + SlotName[ dutch ] = "Getalnotatie bewerken"; + SlotName[ chinese_simplified ] = "±à¼­Êý×Ö¸ñʽ"; + SlotName[ greek ] = "Åðåîåñãáóßá ìïñöÞò áñéèìþí"; + SlotName[ korean ] = "¼ö ¼­½Ä ÆíÁý"; + SlotName[ turkish ] = "Sayý formatýný düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUM_OR_NONUM +{ + SlotName = "Nummerierung ein/aus"; + SlotName [ english ] = "Numerierung ein/aus"; + SlotName[ english_us ] = "Numbering On/Off"; + SlotName[ portuguese ] = "Activar/des. numeração"; + SlotName[ russian ] = "Âêë./âûêë. íóìåðàöèþ"; + SlotName[ dutch ] = "Nummering aan/uit"; + SlotName[ french ] = "(Dés)activer numérotation/puces"; + SlotName[ spanish ] = "Activar/Desact. Numeración"; + SlotName[ italian ] = "Numerazione on/off"; + SlotName[ danish ] = "Nummerering til/fra"; + SlotName[ swedish ] = "Numrering på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz numeracjê"; + SlotName[ portuguese_brazilian ] = "NumberOn/Off"; + SlotName[ japanese ] = "”Ô�†•t‚¯ µÝ/µÌ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë±àºÅ"; + SlotName[ chinese_traditional ] = "Åã¥Ü/Áô¤J½s¸¹"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÇáÊÑÞíã"; + SlotName[ dutch ] = "Nummering aan/uit"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë±àºÅ"; + SlotName[ greek ] = "Áñßèìçóç Íáé/¼÷é"; + SlotName[ korean ] = "¹øÈ£ ¸Å±â±â ÀÛµ¿/ÁßÁö"; + SlotName[ turkish ] = "Numaralama açýk/kapalý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_BULLETS +{ + SlotName = "Nummerierung bearbeiten"; + SlotName [ english ] = "Numerierung bearbeiten"; + SlotName[ english_us ] = "Edit Numbering"; + SlotName[ portuguese ] = "Editar numeração"; + SlotName[ russian ] = "Ïðàâêà íóìåðàöèè"; + SlotName[ dutch ] = "Nummering bewerken"; + SlotName[ french ] = "Éditer la numérotation"; + SlotName[ spanish ] = "Editar numeración"; + SlotName[ italian ] = "Modifica numerazione"; + SlotName[ danish ] = "Rediger nummerering"; + SlotName[ swedish ] = "Redigera numrering"; + SlotName[ polish ] = "Edytuj numeracjê"; + SlotName[ portuguese_brazilian ] = "ToolsBulletsAndNumbering"; + SlotName[ japanese ] = "”Ô�†•t‚¯‚Ì•Ò�W"; + SlotName[ chinese_simplified ] = "±à¼­±àºÅ"; + SlotName[ chinese_traditional ] = "½s¿è½s¸¹"; + SlotName[ arabic ] = "ÊÍÑíÑ ÇáÊÑÞíã"; + SlotName[ dutch ] = "Nummering bewerken"; + SlotName[ chinese_simplified ] = "±à¼­±àºÅ"; + SlotName[ greek ] = "Åðåîåñãáóßá áñßèìçóçò"; + SlotName[ korean ] = "¹øÈ£ ¸Å±â±â ÆíÁý"; + SlotName[ turkish ] = "Numaralamayý düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_CURRENCY +{ + SlotName = "Zahlenformat: Währung"; + SlotName [ english ] = "Zahlenformat: Währung"; + SlotName[ english_us ] = "Number Format: Currency"; + SlotName[ portuguese ] = "Formato numérico: moeda"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò: âàëþòà"; + SlotName[ dutch ] = "Getalnotatie: valuta"; + SlotName[ french ] = "Format numérique : monnaie"; + SlotName[ spanish ] = "Formato numérico: Moneda"; + SlotName[ italian ] = "Formato numero: valuta"; + SlotName[ danish ] = "Talformat: valuta"; + SlotName[ swedish ] = "Talformat: valuta"; + SlotName[ polish ] = "Format liczb: Waluta"; + SlotName[ portuguese_brazilian ] = "NumberFormatCurrency"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : ’ʉÝ"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º»õ±Ò"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G³f¹ô"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: ÚãáÉ"; + SlotName[ dutch ] = "Getalnotatie: valuta"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º»õ±Ò"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: ÍïìéóìáôéêÞ"; + SlotName[ korean ] = "¼ö ¼­½Ä: ÅëÈ­"; + SlotName[ turkish ] = "Sayý formatý: Para birimi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_DATE +{ + SlotName = "Zahlenformat: Datum"; + SlotName [ english ] = "Zahlenformat: Datum"; + SlotName[ english_us ] = "Number Format : Date"; + SlotName[ portuguese ] = "Formato numérico : data"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò : äàòà"; + SlotName[ dutch ] = "Getalnotatie : datum"; + SlotName[ french ] = "Format numérique : date"; + SlotName[ spanish ] = "Formato numérico : Fecha"; + SlotName[ italian ] = "Formato numero : data"; + SlotName[ danish ] = "Talformat: dato"; + SlotName[ swedish ] = "Talformat: datum"; + SlotName[ polish ] = "Format liczb: Data"; + SlotName[ portuguese_brazilian ] = "NumberFormatDate"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : “ú•t"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÈÕÆÚ"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G¤é´Á"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: ÊÇÑíÎ"; + SlotName[ dutch ] = "Getalnotatie : datum"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÈÕÆÚ"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: Çìåñïìçíßá"; + SlotName[ korean ] = "¼ö ¼­½Ä : ³¯Â¥"; + SlotName[ turkish ] = "Sayý formatý: Tarih"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_NEWSTART +{ + SlotName = "Nummerierung neu beginnen"; + SlotName [ english ] = "Numerierung neu beginnen"; + SlotName[ english_us ] = "Restart Numbering"; + SlotName[ portuguese ] = "Recomeçar numeração"; + SlotName[ russian ] = "Íà÷àòü íóìåðàöèþ çàíîâî"; + SlotName[ dutch ] = "Nieuwe nummering"; + SlotName[ french ] = "Reprendre la numérotation"; + SlotName[ spanish ] = "Reiniciar numeración"; + SlotName[ italian ] = "Ricomincia numerazione"; + SlotName[ danish ] = "Start nummerering forfra"; + SlotName[ swedish ] = "Starta numrering på nytt"; + SlotName[ polish ] = "Zacznij na nowo numeracjê"; + SlotName[ portuguese_brazilian ] = "NumberingStart"; + SlotName[ japanese ] = "”Ô�†•t‚¯‚ð�V‚µ‚­ŠJŽn"; + SlotName[ chinese_simplified ] = "ÖØÐ¿ªÊ¼±àºÅ"; + SlotName[ chinese_traditional ] = "­«·s½s¸¹"; + SlotName[ arabic ] = "ÅÚÇÏÉ ÈÏÁ ÇáÊÑÞíã"; + SlotName[ dutch ] = "Nieuwe nummering"; + SlotName[ chinese_simplified ] = "ÖØÐ¿ªÊ¼±àºÅ"; + SlotName[ greek ] = "Åðáíåêêßíçóç áñßèìçóçò"; + SlotName[ korean ] = "¹øÈ£ ´Ù½Ã ¸Å±â±â"; + SlotName[ turkish ] = "Numaralamayý yeniden baþlat"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_PERCENT +{ + SlotName = "Zahlenformat: Prozent"; + SlotName [ english ] = "Zahlenformat: Prozent"; + SlotName[ english_us ] = "Number Format: Percent"; + SlotName[ portuguese ] = "Formato numérico: percentagem"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò : ïðîöåíòû"; + SlotName[ dutch ] = "Getalnotatie: procent"; + SlotName[ french ] = "Format numérique : pourcentage"; + SlotName[ spanish ] = "Formato numérico: Porciento"; + SlotName[ italian ] = "Formato numero: percentuale"; + SlotName[ danish ] = "Talformat: procent"; + SlotName[ swedish ] = "Talformat: procent"; + SlotName[ polish ] = "Format liczb: Procent"; + SlotName[ portuguese_brazilian ] = "NumberFormatPercent"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : Êß°¾ÝÄ"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º°Ù·Ö±È"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G¦Ê¤À¤ñ"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: Ýí ÇáãÆÉ"; + SlotName[ dutch ] = "Getalnotatie: procent"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º°Ù·Ö±È"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: Ðïóïóôü"; + SlotName[ korean ] = "¼ýÀÚ ¼­½Ä: ¹éºÐÀ²"; + SlotName[ turkish ] = "Sayý formatý: Yüzde"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_SCIENTIFIC +{ + SlotName = "Zahlenformat: Exponentiell"; + SlotName [ english ] = "Zahlenformat: Exponential"; + SlotName[ english_us ] = "Number Format: Exponential"; + SlotName[ portuguese ] = "Formato numérico: expoente"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò: ýêñïîíåíöèàëüíûé"; + SlotName[ dutch ] = "Getalnotatie: exponentieel"; + SlotName[ french ] = "Format numérique : exponentiel"; + SlotName[ spanish ] = "Formato numérico: Exponencial"; + SlotName[ italian ] = "Formato numero: esponenziale"; + SlotName[ danish ] = "Talformat: eksponentiel"; + SlotName[ swedish ] = "Talformat: Exponentiellt"; + SlotName[ polish ] = "Format liczb : Wyk³adniczy"; + SlotName[ portuguese_brazilian ] = "NumberFormatExponential"; + SlotName[ japanese ] = "�”‚Ì�‘Ž®: Žw�”"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÖ¸Êý"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G«ü¼Æ"; + SlotName[ arabic ] = "ÊäÓíÞ ÃÑÞÇã: ÃÓí"; + SlotName[ dutch ] = "Getalnotatie: exponentieel"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÖ¸Êý"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: ÅêèåôéêÞ"; + SlotName[ korean ] = "¼ýÀÚ ¼­½Ä: Áö¼ö"; + SlotName[ turkish ] = "Sayý formatý: Üstel"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_STANDARD +{ + SlotName = "Zahlenformat: Standard"; + SlotName [ english ] = "Zahlenformat: Standard"; + SlotName[ language_user1 ] = " "; + SlotName[ english_us ] = "Number Format: Standard"; + SlotName[ portuguese ] = "Formato numérico: padrão"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò : ñòàíäàðò"; + SlotName[ dutch ] = "Getalnotatie: standaard"; + SlotName[ french ] = "Format numérique : standard"; + SlotName[ spanish ] = "Formato numérico: Estándar"; + SlotName[ italian ] = "Formato numero: standard"; + SlotName[ danish ] = "Talformat: standard"; + SlotName[ swedish ] = "Talformat: standard"; + SlotName[ polish ] = "Format liczb: Domyœlny"; + SlotName[ portuguese_brazilian ] = "NumberFormatStandard"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : •W�€"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º±ê×¼"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G¼Ð·Ç"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: ÞíÇÓí"; + SlotName[ dutch ] = "Getalnotatie: standaard"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£º±ê×¼"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: ÃåíéêÞ"; + SlotName[ korean ] = "¼ö ¼­½Ä: Ç¥ÁØ"; + SlotName[ turkish ] = "Sayý formatý: Standart"; +}; +SfxSlotInfo FN_NUMBER_TIME +{ + SlotName = "Zahlenformat: Zeit"; + SlotName [ english ] = "Zahlenformat: Zeit"; + SlotName[ english_us ] = "Number Format: Time"; + SlotName[ portuguese ] = "Formato numérico: hora"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò : âðåìÿ"; + SlotName[ dutch ] = "Getalnotatie: tijd"; + SlotName[ french ] = "Format numérique : horaire"; + SlotName[ spanish ] = "Formato numérico: Hora"; + SlotName[ italian ] = "Formato numero: orario"; + SlotName[ danish ] = "Talformat: klokkeslæt"; + SlotName[ swedish ] = "Talformat: tid"; + SlotName[ polish ] = "Format liczb: Czas"; + SlotName[ portuguese_brazilian ] = "NumberFormatTime"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : Žž��"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÊ±¼ä"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G®É¶¡"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: æÞÊ"; + SlotName[ dutch ] = "Getalnotatie: tijd"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÊ±¼ä"; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: ¿ñá"; + SlotName[ korean ] = "¼ö ¼­½Ä: ½Ã°£"; + SlotName[ turkish ] = "Sayý formatý: Saat"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_NUMBER_TWODEC +{ + SlotName = "Zahlenformat: Dezimal"; + SlotName [ english ] = "Zahlenformat: Dezimal"; + SlotName[ english_us ] = "Number Format: Decimal"; + SlotName[ portuguese ] = "Formato numérico: decimal"; + SlotName[ russian ] = "×èñëîâîé ôîðìàò : äðîáü"; + SlotName[ dutch ] = "Getalnotatie: decimaal"; + SlotName[ french ] = "Format numérique : décimal"; + SlotName[ spanish ] = "Formato numérico: Decimal"; + SlotName[ italian ] = "Formato numero: decimale"; + SlotName[ danish ] = "Talformat: decimal"; + SlotName[ swedish ] = "Talformat: decimal"; + SlotName[ polish ] = "Format liczb: Dziesiêtny"; + SlotName[ portuguese_brazilian ] = "NumberFormatDecimal"; + SlotName[ japanese ] = "�”‚Ì�‘Ž® : �¬�”"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÊ®½øÖÆ"; + SlotName[ chinese_traditional ] = "¼Æ¦r®æ¦¡¡G¤Q¶i¨î"; + SlotName[ arabic ] = "ÊäÓíÞ ÇáÃÑÞÇã: ÚÏÏ ÚÔÑí"; + SlotName[ dutch ] = "Getalnotatie: decimaal"; + SlotName[ chinese_simplified ] = "Êý×Ö¸ñʽ£ºÊ®½øÖÆ"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÌïñöÞ áñéèìïý: ÄåêáäéêÞ"; + SlotName[ korean ] = "¼ö ¼­½Ä: ¼Ò¼ö"; + SlotName[ turkish ] = "Sayý formatý: Ondalýk"; +}; +SfxSlotInfo FN_NUMBERING_OUTLINE_DLG +{ + SlotName = "Kapitelnummerierung"; + SlotName [ english ] = "Kapitelnummerierung"; + SlotName[ english_us ] = "Outline Numbering"; + SlotName[ portuguese ] = "Numeração de capítulos"; + SlotName[ russian ] = "Íóìåðàöèÿ ãëàâ"; + SlotName[ dutch ] = "Hoofdstuknummering"; + SlotName[ french ] = "Numérotation de chapitres"; + SlotName[ spanish ] = "Numeración de capítulos"; + SlotName[ italian ] = "Numerazione capitolo"; + SlotName[ danish ] = "Kapitelnummerering"; + SlotName[ swedish ] = "Kapitelnumrering"; + SlotName[ polish ] = "Numeracja rozdzia³u"; + SlotName[ portuguese_brazilian ] = "ToolsChapterNumbering"; + SlotName[ japanese ] = "�͂̔Ô�†•t‚¯"; + SlotName[ chinese_simplified ] = "Õ±àºÅ"; + SlotName[ chinese_traditional ] = "³¹½s¸¹"; + SlotName[ arabic ] = "ÊÑÞíã ÇáÝÕæá"; + SlotName[ dutch ] = "Hoofdstuknummering"; + SlotName[ chinese_simplified ] = "Õ±àºÅ"; + SlotName[ greek ] = "Áñßèìçóç êåöáëáßùí"; + SlotName[ korean ] = "Àå ¹øÈ£¸Å±â±â"; + SlotName[ turkish ] = "Bölüm numaralamasý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_OPTIMIZE_TABLE +{ + SlotName = "Optimieren"; + SlotName [ english ] = "Optimieren"; + SlotName[ english_us ] = "Optimize"; + SlotName[ portuguese ] = "Optimizar"; + SlotName[ russian ] = "Îïòèìèçèðîâàòü"; + SlotName[ dutch ] = "Optimeren"; + SlotName[ french ] = "Optimiser"; + SlotName[ spanish ] = "Optimar"; + SlotName[ italian ] = "Ottimizza"; + SlotName[ danish ] = "Optimer"; + SlotName[ swedish ] = "Optimera"; + SlotName[ polish ] = "Optymalizuj"; + SlotName[ portuguese_brazilian ] = "Optimize"; + SlotName[ japanese ] = "�Å“K‰»‚·‚é"; + SlotName[ chinese_simplified ] = "×î¼Ñ»¯"; + SlotName[ chinese_traditional ] = "³ÌÓì¤Æ"; + SlotName[ arabic ] = "ÇáÔßá ÇáÃãËá"; + SlotName[ dutch ] = "Optimeren"; + SlotName[ chinese_simplified ] = "×î¼Ñ»¯"; + SlotName[ greek ] = "Âåëôéóôïðïßçóç"; + SlotName[ korean ] = "ÃÖÀûÈ­"; + SlotName[ turkish ] = "Optimum"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_OUTLINE_TO_CLIPBOARD +{ + SlotName = "Gliederung zum Clipboard"; + SlotName [ english ] = "Gliederung zum Clipboard"; + SlotName[ english_us ] = "Outline to Clipboard"; + SlotName[ portuguese ] = "Esquema para Área de Transferência"; + SlotName[ russian ] = "Ñòðóêòóðà áóôåðà îáìåíà"; + SlotName[ dutch ] = "Overzicht naar clipboard"; + SlotName[ french ] = "Plan vers le presse-papiers"; + SlotName[ spanish ] = "Esquema al portapapeles"; + SlotName[ italian ] = "Struttura negli appunti"; + SlotName[ danish ] = "Disposition til udklipsbakke"; + SlotName[ swedish ] = "Disposition till urklippet"; + SlotName[ polish ] = "Konspekt do kosza"; + SlotName[ portuguese_brazilian ] = "SendOutlineToClipboard"; + SlotName[ japanese ] = "¸Ø¯ÌßÎÞ°Äނ̱³ÄײÝ"; + SlotName[ chinese_simplified ] = "´ó¸ÙËÍÖÁ¼ôÌù°å"; + SlotName[ chinese_traditional ] = "¤jºõ°eµ¹°Å¶Kï"; + SlotName[ arabic ] = "ÇáÊÞÓíã Åáì ÇáÍÇÝÙÉ"; + SlotName[ dutch ] = "Overzicht naar clipboard"; + SlotName[ chinese_simplified ] = "´ó¸ÙËÍÖÁ¼ôÌù°å"; + SlotName[ greek ] = "ÄéÜñèñùóç ðñïò ôï Clipboard"; + SlotName[ korean ] = "Ŭ¸³º¸µå °³¿ä"; + SlotName[ turkish ] = "Anahatlarý panoya gönder"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_OUTLINE_TO_IMPRESS +{ + SlotName = "Gliederung an Präsentation"; + SlotName [ english ] = "Gliederung an Präsentation"; + SlotName[ english_us ] = "Outline to Presentation"; + SlotName[ portuguese ] = "Esquema para apresentação"; + SlotName[ russian ] = "Ñòðóêòóðó â ïðåçåíòàöèþ"; + SlotName[ dutch ] = "Overzicht bij presentatie"; + SlotName[ french ] = "Plan vers présentation"; + SlotName[ spanish ] = "Esquema para presentación"; + SlotName[ italian ] = "Struttura da presentazione"; + SlotName[ danish ] = "Disposition til præsentation"; + SlotName[ swedish ] = "Disposition till presentation"; + SlotName[ polish ] = "Konspekt do prezentacji"; + SlotName[ portuguese_brazilian ] = "SendOutlineToStarOffice Impress"; + SlotName[ japanese ] = "ÌßÚ¾ÞÝð¼®Ý‚̱³ÄײÝ"; + SlotName[ chinese_simplified ] = "´ó¸ÙË͵½ÑÝʾÎĸå"; + SlotName[ chinese_traditional ] = "¤jºõ°e¨ì²³ø"; + SlotName[ arabic ] = "ÇáÊÞÓíã Åáì ÚÑÖ ÊÞÏíãí"; + SlotName[ dutch ] = "Overzicht bij presentatie"; + SlotName[ chinese_simplified ] = "´ó¸ÙË͵½ÑÝʾÎĸå"; + SlotName[ greek ] = "ÄéÜñèñùóç ðñïò ðáñïõóßáóç"; + SlotName[ korean ] = "ÇÁ¸®Á¨Å×ÀÌ¼Ç °³¿ä"; + SlotName[ turkish ] = "Anahatlarý sunuya aktar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PAGE_STYLE_SET_COLS +{ + SlotName = "Seitenvorlage: Spalten"; + SlotName [ english ] = "Seitenvorlage: Spalten"; + SlotName[ english_us ] = "Page Style: Columns"; + SlotName[ portuguese ] = "Estilo de página: colunas"; + SlotName[ russian ] = "Ñòèëü ñòðàíèöû: êîëîíêè"; + SlotName[ dutch ] = "Pagina-opmaakprofiel: kolommen"; + SlotName[ french ] = "Style de page : colonnes"; + SlotName[ spanish ] = "Estilo de página: Columnas"; + SlotName[ italian ] = "Modello di pagina: colonne"; + SlotName[ danish ] = "Sidetypografi: kolonner"; + SlotName[ swedish ] = "Sidformatmall: Kolumner"; + SlotName[ polish ] = "Styl strony: Kolumny"; + SlotName[ portuguese_brazilian ] = "SetPageStyleCols"; + SlotName[ japanese ] = "Íß°¼Þ½À²Ù:—ñ"; + SlotName[ chinese_simplified ] = "Ò³ÃæÑùʽ£ºÁÐ"; + SlotName[ chinese_traditional ] = "­¶­±¼Ë¦¡¡G¦C"; + SlotName[ arabic ] = "ÞÇáÈ ÕÝÍÉ: ÃÚãÏÉ"; + SlotName[ dutch ] = "Pagina-opmaakprofiel: kolommen"; + SlotName[ chinese_simplified ] = "Ò³ÃæÑùʽ£ºÁÐ"; + SlotName[ greek ] = "Ðñüôõðï óåëßäáò: ÓôÞëåò"; + SlotName[ korean ] = "ÆäÀÌÁö À¯Çü: ¿­"; + SlotName[ turkish ] = "Sayfa biçimi: Sütunlar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PAGEDOWN +{ + SlotName = "Nächste Seite"; + SlotName [ english ] = "Nächste Seite"; + SlotName[ english_us ] = "Next Page"; + SlotName[ portuguese ] = "Página seguinte"; + SlotName[ russian ] = "Ñäåäóþùàÿ ñòðàíèöà"; + SlotName[ dutch ] = "Volgende pagina"; + SlotName[ french ] = "Page suivante"; + SlotName[ spanish ] = "Página siguiente"; + SlotName[ italian ] = "Pagina successiva"; + SlotName[ danish ] = "Næste side"; + SlotName[ swedish ] = "Nästa sida"; + SlotName[ polish ] = "Nastêpna strona"; + SlotName[ portuguese_brazilian ] = "PageDown"; + SlotName[ japanese ] = "ŽŸ‚ÌÍß°¼Þ"; + SlotName[ chinese_simplified ] = "ÏÂÒ»Ò³"; + SlotName[ chinese_traditional ] = "¤U¤@­¶"; + SlotName[ arabic ] = "ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Volgende pagina"; + SlotName[ chinese_simplified ] = "ÏÂÒ»Ò³"; + SlotName[ greek ] = "Åðüìåíç óåëßäá"; + SlotName[ korean ] = "´ÙÀ½ ÆäÀÌÁö"; + SlotName[ turkish ] = "Sonraki sayfa"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PAGEDOWN_SEL +{ + SlotName = "Bis nächste Seite selektieren"; + SlotName [ english ] = "Bis nächste Seite selektieren"; + SlotName[ english_us ] = "Select to Next Page"; + SlotName[ portuguese ] = "Seleccionar até página seguinte"; + SlotName[ russian ] = "Âûäåëèòü äî ñëåäóþùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan volgende pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la page suivante"; + SlotName[ spanish ] = "Seleccionar hasta la página siguiente"; + SlotName[ italian ] = "Seleziona fino alla pagina successiva"; + SlotName[ danish ] = "Marker til næste side"; + SlotName[ swedish ] = "Markera till nästa sida"; + SlotName[ polish ] = "Zaznacz do nastêpnej strony"; + SlotName[ portuguese_brazilian ] = "PageDownSel"; + SlotName[ japanese ] = "ŽŸ‚ÌÍß°¼Þ‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»Ò³"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤U­¶"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Tot aan volgende pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ»Ò³"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí åðüìåíç óåëßäá"; + SlotName[ korean ] = "´ÙÀ½ ÆäÀÌÁö ¼±ÅÃ"; + SlotName[ turkish ] = "Sonraki sayfaya kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PAGEUP +{ + SlotName = "Vorherige Seite"; + SlotName [ english ] = "Vorherige Seite"; + SlotName[ english_us ] = "Previous Page"; + SlotName[ portuguese ] = "Página anterior"; + SlotName[ russian ] = "Ïðåäûäóùàÿ ñòðàíèöà"; + SlotName[ dutch ] = "Vorige pagina"; + SlotName[ french ] = "Page précédente"; + SlotName[ spanish ] = "Página anterior"; + SlotName[ italian ] = "Pagina precedente"; + SlotName[ danish ] = "Forrige side"; + SlotName[ swedish ] = "Föregående sida"; + SlotName[ polish ] = "Poprzednia strona"; + SlotName[ portuguese_brazilian ] = "PageUp"; + SlotName[ japanese ] = "‘O‚ÌÍß°¼Þ"; + SlotName[ chinese_simplified ] = "ÉÏÒ»Ò³"; + SlotName[ chinese_traditional ] = "¤W¤@­¶"; + SlotName[ arabic ] = "ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Vorige pagina"; + SlotName[ chinese_simplified ] = "ÉÏÒ»Ò³"; + SlotName[ greek ] = "Ðñïçãïýìåíç óåëßäá"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁö"; + SlotName[ turkish ] = "Önceki sayfa"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PAGEUP_SEL +{ + SlotName = "Bis vorherige Seite selektieren"; + SlotName [ english ] = "Bis vorherige Seite selektieren"; + SlotName[ english_us ] = "Select to Previous Page"; + SlotName[ portuguese ] = "Seleccionar até página anterior"; + SlotName[ russian ] = "Âûäåëèòü äî ïðåäûäóùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan vorige pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la page précédente"; + SlotName[ spanish ] = "Seleccionar hasta la página anterior"; + SlotName[ italian ] = "Seleziona fino alla pagina precedente"; + SlotName[ danish ] = "Marker til forrige side"; + SlotName[ swedish ] = "Markera till föregående sida"; + SlotName[ polish ] = "Zaznacz do poprzedniej strony"; + SlotName[ portuguese_brazilian ] = "PageUpSel"; + SlotName[ japanese ] = "‘O‚ÌÍß°¼Þ‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»Ò³"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤W¤@­¶"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Tot aan vorige pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»Ò³"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí ðñïçãïýìåíç óåëßäá"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁö ¼±ÅÃ"; + SlotName[ turkish ] = "Önceki sayfaya kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PASTESPECIAL +{ + SlotName = "Inhalte einfügen"; + SlotName [ english ] = "Inhalte einfügen"; + SlotName[ english_us ] = "Paste Special"; + SlotName[ portuguese ] = "Colar conteúdos"; + SlotName[ russian ] = "Ñïåöèàëüíàÿ âñòàâêà"; + SlotName[ dutch ] = "Plakken speciaal"; + SlotName[ french ] = "Collage spécial"; + SlotName[ spanish ] = "Pegado especial"; + SlotName[ italian ] = "Incolla speciale"; + SlotName[ danish ] = "Indsæt indhold"; + SlotName[ swedish ] = "Klistra in innehåll"; + SlotName[ polish ] = "Wklej zawartoœæ"; + SlotName[ portuguese_brazilian ] = "PasteContents"; + SlotName[ japanese ] = "Œ`Ž®‚ð‘I‘ð‚µ‚Ä“\\‚è•t‚¯"; + SlotName[ chinese_simplified ] = "²åÈëÄÚÈÝ"; + SlotName[ chinese_traditional ] = "´¡¤J¤º®e"; + SlotName[ arabic ] = "áÕÞ ÎÇÕ"; + SlotName[ dutch ] = "Plakken speciaal"; + SlotName[ chinese_simplified ] = "²åÈëÄÚÈÝ"; + SlotName[ greek ] = "ÅéäéêÞ åðéêüëëçóç"; + SlotName[ korean ] = "¼±ÅÃÇÏ¿© ºÙ¿©³Ö±â"; + SlotName[ turkish ] = "Özel yapýþtýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_POSTIT +{ + SlotName = "Notiz einfügen"; + SlotName [ english ] = "Notiz einfügen"; + SlotName[ english_us ] = "Insert Note"; + SlotName[ portuguese ] = "Inserir anotação"; + SlotName[ russian ] = "Âñòàâèòü ïðèìå÷àíèå"; + SlotName[ dutch ] = "Aantekening invoegen"; + SlotName[ french ] = "Insérer une note"; + SlotName[ spanish ] = "Insertar nota"; + SlotName[ italian ] = "Inserisci nota"; + SlotName[ danish ] = "Indsæt note"; + SlotName[ swedish ] = "Infoga anteckning"; + SlotName[ polish ] = "Wstaw notatkê"; + SlotName[ portuguese_brazilian ] = "InsertNote"; + SlotName[ japanese ] = "ÒÓ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈ뱸ע"; + SlotName[ chinese_traditional ] = "´¡¤J³Æª`"; + SlotName[ arabic ] = "ÅÏÑÇÌ ãáÇÍÙÉ"; + SlotName[ dutch ] = "Aantekening invoegen"; + SlotName[ chinese_simplified ] = "²åÈ뱸ע"; + SlotName[ greek ] = "ÅéóáãùãÞ óçìåßùóçò"; + SlotName[ korean ] = "¸Þ¸ð »ðÀÔ"; + SlotName[ turkish ] = "Not ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_BOOKMARK +{ + SlotName = "Zur vorherigen Textmarke"; + SlotName [ english ] = "Zur vorherigen Textmarke"; + SlotName[ english_us ] = "To Previous Bookmark"; + SlotName[ portuguese ] = "Ir para marcador de texto anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåé çàêëàäêè"; + SlotName[ dutch ] = "Naar vorige tekstmarkering"; + SlotName[ french ] = "Aller au repère de texte précédent"; + SlotName[ spanish ] = "Ir al marcador anterior"; + SlotName[ italian ] = "Al segnalibro precedente"; + SlotName[ danish ] = "Til forrige tekstmarkering"; + SlotName[ swedish ] = "Till föregående textmarkering"; + SlotName[ polish ] = "Do poprzedniej zak³adki"; + SlotName[ portuguese_brazilian ] = "GoToPrevBookmark"; + SlotName[ japanese ] = "‘O‚Ì÷½Äϰ¸‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÊéÇ©"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó®ÑÅÒ"; + SlotName[ arabic ] = "Åáì ÇáÅÔÇÑÉ ÇáãÑÌÚíÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige tekstmarkering"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÊéÇ©"; + SlotName[ greek ] = "Ðñïò ôïí ðñïçãïýìåíï óåëéäïäåßêôç"; + SlotName[ korean ] = "ÀÌÀü Ã¥ °¥ÇÇ·Î"; + SlotName[ turkish ] = "Önceki metin belirteci"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_FOOTNOTE +{ + SlotName = "Zur vorherigen Fußnote"; + SlotName [ english ] = "Zur vorherigen Fußnote"; + SlotName[ english_us ] = "To Previous Footnote"; + SlotName[ portuguese ] = "Ir para nota de rodapé anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåé ñíîñêè"; + SlotName[ dutch ] = "Naar vorige voetnoot"; + SlotName[ french ] = "À la note de bas de page précédente"; + SlotName[ spanish ] = "Ir a la nota al pie anterior"; + SlotName[ italian ] = "Alla nota a piè pagina precedente"; + SlotName[ danish ] = "Til forrige fodnote"; + SlotName[ swedish ] = "Till föregående fotnot"; + SlotName[ polish ] = "Do poprzedniego przypisu dolnego"; + SlotName[ portuguese_brazilian ] = "GoToPrevFootnote"; + SlotName[ japanese ] = "‘O‚Ì‹r’�‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö×¢½Å"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@µù¸}"; + SlotName[ arabic ] = "Åáì ÇáÍÇÔíÉ ÇáÓÝáíÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige voetnoot"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö×¢½Å"; + SlotName[ greek ] = "Ðñïò ôçí ðñïçãïýìåíç õðïóçìåßùóç"; + SlotName[ korean ] = "ÀÌÀü °¢ÁÖ·Î"; + SlotName[ turkish ] = "Önceki dipnot"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_PARA +{ + SlotName = "Zum vorherigen Absatz"; + SlotName [ english ] = "Zum vorherigen Absatz"; + SlotName[ english_us ] = "To Previous Paragraph"; + SlotName[ portuguese ] = "Ir para parágrafo anterior"; + SlotName[ russian ] = "Äî ïðåäûäóùåãî àáçàöà"; + SlotName[ dutch ] = "Naar vorige alinea"; + SlotName[ french ] = "Aller au paragraphe précédent"; + SlotName[ spanish ] = "Ir al párrafo anterior"; + SlotName[ italian ] = "Al paragrafo precedente"; + SlotName[ danish ] = "Til forrige afsnit"; + SlotName[ swedish ] = "Till föregående stycke"; + SlotName[ polish ] = "Do porzedniego akapitu"; + SlotName[ portuguese_brazilian ] = "GoToPrevPara"; + SlotName[ japanese ] = "‘O‚Ì’i—Ž‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¶ÎÂä"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó¬q¸¨"; + SlotName[ arabic ] = "Åáì ÇáÝÞÑÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige alinea"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¶ÎÂä"; + SlotName[ greek ] = "Ðñïò ôçí ðñïçãïýìåíç ðáñÜãñáöï"; + SlotName[ korean ] = "ÀÌÀü ´Ü¶ôÀ¸·Î"; + SlotName[ turkish ] = "Önceki paragraf"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_SENT +{ + SlotName = "Zum vorherigen Satz"; + SlotName [ english ] = "Zum vorherigen Satz"; + SlotName[ english_us ] = "To Previous Sentence"; + SlotName[ portuguese ] = "Ir para frase anterior"; + SlotName[ russian ] = "Ê ïðåäûäóùåìó ïðåäëîæåíèþ"; + SlotName[ dutch ] = "Naar vorige zin"; + SlotName[ french ] = "Aller à la phrase précédente"; + SlotName[ spanish ] = "Ir a frase anterior"; + SlotName[ italian ] = "Alla frase precedente"; + SlotName[ danish ] = "Til forrige sætning"; + SlotName[ swedish ] = "Till föregående mening"; + SlotName[ polish ] = "Do poprzedniego zdania"; + SlotName[ portuguese_brazilian ] = "GoToPrevSentence"; + SlotName[ japanese ] = "‘O‚Ì•¶�Í‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¾ä×Ó"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@¥y¤l"; + SlotName[ arabic ] = "ÍÊì ÇáÌãáÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige zin"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¾ä×Ó"; + SlotName[ greek ] = "Ðñïò ôçí ðñïçãïýìåíç ðñüôáóç"; + SlotName[ korean ] = "ÀÌÀü ¹®ÀåÀ¸·Î"; + SlotName[ turkish ] = "Önceki cümle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_SENT_SEL +{ + SlotName = "Bis zum vorherigen Satz selektieren"; + SlotName [ english ] = "Bis zum vorherigen Satz selektieren"; + SlotName[ english_us ] = "Select to Previous Sentence"; + SlotName[ portuguese ] = "Seleccionar até frase anterior"; + SlotName[ russian ] = "Âûäåëèòü äî ïðåäûäóùåãî ïðåäëîæåíèÿ"; + SlotName[ dutch ] = "Tot aan vorige zin selecteren"; + SlotName[ french ] = "Sélect. jusqu'à la phrase précédente"; + SlotName[ spanish ] = "Seleccionar hasta la oración anterior"; + SlotName[ italian ] = "Seleziona fino alla frase precedente"; + SlotName[ danish ] = "Marker til forrige sætning"; + SlotName[ swedish ] = "Markera till föregående mening"; + SlotName[ polish ] = "Zaznacz do poprzedniego zdania"; + SlotName[ portuguese_brazilian ] = "GoToPrevSentenceSel"; + SlotName[ japanese ] = "‘O‚Ì•¶�͂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»¸ö¾ä×Ó"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤W¤@­Ó¥y¤l"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáÌãáÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Tot aan vorige zin selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»¸ö¾ä×Ó"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí ðñïçãïýìåíç ðñüôáóç"; + SlotName[ korean ] = "ÀÌÀü ¹®Àå ¼±ÅÃ"; + SlotName[ turkish ] = "Önceki cümleye kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_TABLE +{ + SlotName = "Zur vorherigen Tabelle"; + SlotName [ english ] = "Zur vorherigen Tabelle"; + SlotName[ english_us ] = "To Previous Table"; + SlotName[ portuguese ] = "Tabela anterior"; + SlotName[ russian ] = "Ê ïðåäûäóùåé òàáëèöå"; + SlotName[ dutch ] = "Naar vorige tabel"; + SlotName[ french ] = "Au tableau précédent"; + SlotName[ spanish ] = "Ir a la tabla anterior"; + SlotName[ italian ] = "Alla tabella precedente"; + SlotName[ danish ] = "Til forrige tabel"; + SlotName[ swedish ] = "Till föregående tabell"; + SlotName[ polish ] = "Do poprzedniej tabeli"; + SlotName[ portuguese_brazilian ] = "JumpToPrevTable"; + SlotName[ japanese ] = "‘O‚Ì•\\‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö±í¸ñ"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@ªí®æ"; + SlotName[ arabic ] = "Åáì ÇáÌÏæá ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorige tabel"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö±í¸ñ"; + SlotName[ greek ] = "Ðñïò ôïí ðñïçãïýìåíï ðßíáêá"; + SlotName[ korean ] = "ÀÌÀü Ç¥·Î"; + SlotName[ turkish ] = "Önceki tablo"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_TBLFML +{ + SlotName = "Zur vorherigen Tabellenformel"; + SlotName [ english ] = "Zur vorherigen Tabellenformel"; + SlotName[ english_us ] = "Go to previous table formula"; + SlotName[ portuguese ] = "Fórmula de cálculo anterior"; + SlotName[ russian ] = "Ïåðåéòè ê ïðåäûäóùåé ôîðìóëå òàáëèöû"; + SlotName[ dutch ] = "Naar vorige tabelformule"; + SlotName[ french ] = "Aller à la formule de calcul précédente"; + SlotName[ spanish ] = "Ir a la fórmula anterior"; + SlotName[ italian ] = "Alla formula di tabella precedente"; + SlotName[ danish ] = "Til forrige tabelformel"; + SlotName[ swedish ] = "Till föregående tabellformel"; + SlotName[ polish ] = "PrzejdŸ do nastêpnej formu³y tabeli"; + SlotName[ portuguese_brazilian ] = "GotoPrevTableFormula"; + SlotName[ japanese ] = "‘O‚Ì�”Ž®‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¹¤×÷±í¹«Ê½"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó¤u§@ªí¤½¦¡"; + SlotName[ arabic ] = "Åáì ÕíÛÉ ÇáÌÏæá ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige tabelformule"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸ö¹¤×÷±í¹«Ê½"; + SlotName[ greek ] = "Ðñïò ôïí ðñïçãïýìåíï ôýðï ôïõ ðßíáêá"; + SlotName[ korean ] = "ÀÌÀü Ç¥ ¼ö½ÄÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Önceki tablo formulü"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_TBLFML_ERR +{ + SlotName = "Zur vorherigen fehlerhaften Tabellenformel"; + SlotName [ english ] = "Zur vorherigen fehlerhaften Tabellenformel"; + SlotName[ english_us ] = "Go to previous faulty table formula"; + SlotName[ portuguese ] = "Fórmula de cálculo anterior com defeito"; + SlotName[ russian ] = "Ïåðåéòè ê ïðåäûäóùåé ôîðìóëå òàáëèöû, ñîäåðæàùåé îøèáêè"; + SlotName[ dutch ] = "Naar vorige foutieve tabelformule"; + SlotName[ french ] = "Aller à la formule de calcul erronée précédente"; + SlotName[ spanish ] = "Ir a fórmula errónea anterior"; + SlotName[ italian ] = "Alla formula di tabella errata precedente"; + SlotName[ danish ] = "Til forrige fejlagtige tabelformel"; + SlotName[ swedish ] = "Till föregående felaktiga tabellformel"; + SlotName[ polish ] = "PrzejdŸ do poprzedniej b³êdnej formu³y tabeli"; + SlotName[ portuguese_brazilian ] = "GotoPrevWrongTableFormula"; + SlotName[ japanese ] = "‘O‚ÌŠÔˆá‚Á‚½�”Ž®‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÓдíÎóµÄ¹¤×÷±í¹«Ê½"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó¦³¿ù»~ªº¤u§@ªí¤½¦¡"; + SlotName[ arabic ] = "Åáì ÕíÛÉ ÇáÌÏæá ÇáÎÇØÆÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar vorige foutieve tabelformule"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öÓдíÎóµÄ¹¤×÷±í¹«Ê½"; + SlotName[ greek ] = "Ðñïò ôïí ðñïçãïýìåíï ëáíèáóìÝíï ôýðï ôïõ ðßíáêá"; + SlotName[ korean ] = "Ʋ¸° ÀÌÀü Ç¥ °ø½ÄÀ¸·Î À̵¿"; + SlotName[ turkish ] = "Önceki hatalý tablo formulü"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_TOXMARK +{ + SlotName = "Zur vorherigen Indexmarkierung"; + SlotName [ english ] = "Zur vorherigen Indexmarkierung"; + SlotName[ english_us ] = "Go to Previous Index Mark"; + SlotName[ portuguese ] = "Marca anterior do índice"; + SlotName[ russian ] = "Ïåðåéòè ê ïðåäûäóùåé ìåòêå óêàçàòåëÿ"; + SlotName[ dutch ] = "Naar vorige indexmarkering"; + SlotName[ french ] = "Aller à la marque d'index précédente"; + SlotName[ spanish ] = "Ir a la marca de índice anterior"; + SlotName[ italian ] = "Al contrassegno indice precedente"; + SlotName[ danish ] = "Til forrige indeksmarkering"; + SlotName[ swedish ] = "Till föregående indexmarkering"; + SlotName[ polish ] = "PrzejdŸ do poprzedniego znacznika indeksu"; + SlotName[ portuguese_brazilian ] = "GotoPrevIndexMark"; + SlotName[ japanese ] = "‘O‚̲ÝÃÞ¯¸½Ï°¸‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öË÷Òý±ê¼Ç"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­Ó¯Á¤Þ¼Ð°O"; + SlotName[ arabic ] = "Åáì ÇáÊÍÏíÏ ÇáÝåÑÓí ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar vorige indexmarkering"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»¸öË÷Òý±ê¼Ç"; + SlotName[ greek ] = "Ðñïò ôï ðñïçãïýìåíï óçìÜäé åõñåôçñßïõ"; + SlotName[ korean ] = "ÀÌÀü »öÀΠǥ½Ã·Î °¡±â"; + SlotName[ turkish ] = "Önceki dizin belirteci"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_WORD +{ + SlotName = "Zum Wort links"; + SlotName [ english ] = "Zum Wort links"; + SlotName[ english_us ] = "To Word Left"; + SlotName[ portuguese ] = "Ir para palavra à esquerda"; + SlotName[ russian ] = "Äî ñëîâà ñëåâà"; + SlotName[ dutch ] = "Naar woord links"; + SlotName[ french ] = "Au mot à gauche"; + SlotName[ spanish ] = "Ir a la palabra izquierda"; + SlotName[ italian ] = "Alla parola sinistra"; + SlotName[ danish ] = "Til ord til venstre"; + SlotName[ swedish ] = "Till vänster ord"; + SlotName[ polish ] = "Do s³owa po lewej stronie"; + SlotName[ portuguese_brazilian ] = "GoToPrevWord"; + SlotName[ japanese ] = "’PŒê‚Ì�¶‚Ö"; + SlotName[ chinese_simplified ] = "תµ½×ÖµÄ×ó·½"; + SlotName[ chinese_traditional ] = "Âà¨ì¦r­º"; + SlotName[ arabic ] = "ÍÊì íÓÇÑ ÇáßáãÉ"; + SlotName[ dutch ] = "Naar woord links"; + SlotName[ chinese_simplified ] = "תµ½×ÖµÄ×ó·½"; + SlotName[ greek ] = "ËÝîç áñéóôåñÜ"; + SlotName[ korean ] = "´Ü¾î ¿ÞÂÊÀ¸·Î"; + SlotName[ turkish ] = "Soldaki sözcük"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PREV_WORD_SEL +{ + SlotName = "Bis Wort links selektieren"; + SlotName [ english ] = "Bis Wort links selektieren"; + SlotName[ english_us ] = "Select to Begin of Word"; + SlotName[ portuguese ] = "Seleccionar até ao início da palavra"; + SlotName[ russian ] = "Âûäåëèòü äî ñëîâà ñëåâà"; + SlotName[ dutch ] = "Tot aan woord links selecteren"; + SlotName[ french ] = "Sélect. mot à gauche"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo de la palabra"; + SlotName[ italian ] = "Seleziona fino alla parola di sinistra"; + SlotName[ danish ] = "Marker til ord til venstre"; + SlotName[ swedish ] = "Markera till vänster ord"; + SlotName[ polish ] = "Zaznacz do s³owa po lewej"; + SlotName[ portuguese_brazilian ] = "WordLeftSel"; + SlotName[ japanese ] = "’PŒê‚Ì�¶‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ×ÖµÄ×ó·½"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¦r­º"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÇáßáãÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Tot aan woord links selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ×ÖµÄ×ó·½"; + SlotName[ language_user1 ] = " "; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí ëÝîç áñéóôåñÜ"; + SlotName[ korean ] = "´Ü¾îÀÇ ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Soldaki sözcüðe kadar seç"; +}; +SfxSlotInfo FN_PREVIEW_PRINT_OPTIONS +{ + SlotName = "Druckoptionen Seitenansicht"; + SlotName [ english ] = "Druckoptionen Seitenansicht"; + SlotName[ english_us ] = "Print options page view"; + SlotName[ portuguese ] = "Opções de impressão"; + SlotName[ russian ] = "Ïàðàìåòðû ïå÷àòè"; + SlotName[ dutch ] = "Printopties afdrukvoorbeeld"; + SlotName[ french ] = "Options d'impression : aperçu"; + SlotName[ spanish ] = "Opciones de impresión"; + SlotName[ italian ] = "Opzioni di stampa"; + SlotName[ danish ] = "Udskriftsindstillinger vis udskrift"; + SlotName[ swedish ] = "Utskriftsalternativ förhandsgranskning"; + SlotName[ polish ] = "Opcje drukowania Widok strony"; + SlotName[ portuguese_brazilian ] = "Printing options"; + SlotName[ japanese ] = "ÌßÚËÞ­°ˆó�üµÌß¼®Ý"; + SlotName[ chinese_simplified ] = "´òÓ¡Ñ¡Ïî Ò³ÃæÊÓͼ"; + SlotName[ chinese_traditional ] = "¦C¦L¿ï¶µ ­¶­±À˵ø"; + SlotName[ arabic ] = "ÎíÇÑÇÊ ÇáØÈÇÚÉ: ãÚÇíäÉ ÇáÕÝÍÇÊ"; + SlotName[ language_user1 ] = " "; + SlotName[ dutch ] = "Printopties afdrukvoorbeeld"; + SlotName[ chinese_simplified ] = "´òÓ¡Ñ¡Ïî Ò³ÃæÊÓͼ"; + SlotName[ greek ] = "ÅðéëïãÝò åêôýðùóçò/Ðñïåðéóêüðçóç óåëßäáò"; + SlotName[ korean ] = "Àμ⠿ɼÇ"; + SlotName[ turkish ] = "Sayfa görünümü yazdýrma seçenekleri"; +}; +SfxSlotInfo FN_PREVIEW_ZOOM +{ + SlotName = "Maßstab Seitenansicht"; + SlotName [ english ] = "Zoom page view"; + SlotName[ english_us ] = "Preview Zoom"; + SlotName[ portuguese ] = "Ver Zoom"; + SlotName[ russian ] = "Ìàñøòàá"; + SlotName[ greek ] = "Êëßìáêá ðñïâïëÞò óåëßäáò"; + SlotName[ dutch ] = "Zoom afdrukvoorbeeld"; + SlotName[ french ] = "Échelle de l'aperçu"; + SlotName[ spanish ] = "Escala"; + SlotName[ italian ] = "Zoom"; + SlotName[ danish ] = "Målestok sidevisning"; + SlotName[ swedish ] = "Skala sidvy"; + SlotName[ polish ] = "Skala widoku strony"; + SlotName[ portuguese_brazilian ] = "Scale"; + SlotName[ japanese ] = "ÌßÚËÞ­°‚̽ްÑ"; + SlotName[ korean ] = "È®´ë/Ãà¼Ò"; + SlotName[ chinese_simplified ] = "Ò³ÃæÊÓͼ±ÈÀý"; + SlotName[ chinese_traditional ] = "Åã¥Ü¤ñ¨Ò ­¶­±µø¹Ï"; + SlotName[ turkish ] = "Yakýnlaþtýr"; + SlotName[ arabic ] = "ÊßÈíÑ æÊÕÛíÑ ãÚÇíäÉ ÇáÕÝÍÉ"; +}; +SfxSlotInfo FN_PRINT_LAYOUT +{ + SlotName = "Druck-Layout ein/aus"; + SlotName [ english ] = "Druck-Layout ein/aus"; + SlotName[ english_us ] = "Print Layout On/Off"; + SlotName[ portuguese ] = "Configuração da impressão"; + SlotName[ russian ] = "Âêë./âûêë. ðàçìåòêó ïå÷àòè"; + SlotName[ dutch ] = "Afdruklay-out aan/uit"; + SlotName[ french ] = "Mode Mise en page d'impression"; + SlotName[ spanish ] = "Diseño de Impresión"; + SlotName[ italian ] = "Stampa layout on/off"; + SlotName[ danish ] = "Udskriftslayout til/fra"; + SlotName[ swedish ] = "Utskriftslayout på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz uk³ad wydruku"; + SlotName[ portuguese_brazilian ] = "PrintLayout"; + SlotName[ japanese ] = "ˆó�üÚ²±³Ä µÝ/µÌ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë ´òÓ¡°æÊ½"; + SlotName[ chinese_traditional ] = "Åã¥Ü/Áô¤J¦C¦L-ª©¦¡"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÊÎØíØ ÇáØÈÇÚÉ"; + SlotName[ dutch ] = "Afdruklay-out aan/uit"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë ´òÓ¡°æÊ½"; + SlotName[ greek ] = "ÄéÜôáîç åêôýðùóçò Íáé/¼÷é"; + SlotName[ korean ] = "Àμ⠸ð¾ç ÀÛµ¿/ÇØÁ¦"; + SlotName[ turkish ] = "Yazdýrma düzeni açýk/kapalý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_PRINT_PAGEPREVIEW +{ + SlotName = "Seitenansicht drucken"; + SlotName [ english ] = "Seitenansicht drucken"; + SlotName[ english_us ] = "Print page view"; + SlotName[ portuguese ] = "Imprimir previsualização"; + SlotName[ russian ] = "Ïå÷àòü"; + SlotName[ dutch ] = "Afdrukvoorbeeld drukken"; + SlotName[ french ] = "Imprimer l'aperçu"; + SlotName[ spanish ] = "Imprimir previsualización"; + SlotName[ italian ] = "Stampa anteprima pagina"; + SlotName[ danish ] = "Udskriv vist udskrift"; + SlotName[ swedish ] = "Skriv ut förhandsgranskning"; + SlotName[ polish ] = "Drukuj widok strony"; + SlotName[ portuguese_brazilian ] = "PrintPagePreview"; + SlotName[ japanese ] = "ÌßÚËÞ­°‚̈ó�ü"; + SlotName[ chinese_simplified ] = "´òÓ¡Ò³ÃæÊÓͼ"; + SlotName[ chinese_traditional ] = "¦C¦L­¶­±À˵ø"; + SlotName[ arabic ] = "ÇáØÈÇÚÉ ÍÓÈ ÇáãÚÇíäÉ"; + SlotName[ dutch ] = "Afdrukvoorbeeld drukken"; + SlotName[ chinese_simplified ] = "´òÓ¡Ò³ÃæÊÓͼ"; + SlotName[ greek ] = "Åêôýðùóç ðñïåðéóêüðçóçò óåëßäáò"; + SlotName[ korean ] = "ÀÎ¼â ÆäÀÌÁö º¸±â"; + SlotName[ turkish ] = "Sayfa görünümünü yazdýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_QRY +{ + SlotName = "Datenbankmanager aufrufen"; + SlotName [ english ] = "Datenbankmanager aufrufen"; + SlotName[ english_us ] = "Call Database Manager"; + SlotName[ portuguese ] = "Gestor da Base de Dados"; + SlotName[ russian ] = "Âûçîâ àäìèíèñòðàòîðà áàçû äàííûõ"; + SlotName[ dutch ] = "Databasemanager oproepen"; + SlotName[ french ] = "Gestionnaire de base de données"; + SlotName[ spanish ] = "Activar administrador de bases de datos"; + SlotName[ italian ] = "Richiama gestione database"; + SlotName[ danish ] = "Aktiver databasemanager"; + SlotName[ swedish ] = "Anropa databas"; + SlotName[ polish ] = "Wywo³aj mened¿era bazy danych"; + SlotName[ portuguese_brazilian ] = "InsertDatabase"; + SlotName[ japanese ] = "ÃÞ°ÀÍÞ°½ÏȰ¼Þ¬‚ÌŽÀ�s"; + SlotName[ chinese_simplified ] = "Æô¶¯Êý¾Ý¿â¹ÜÀí³ÌÐò"; + SlotName[ chinese_traditional ] = "±Ò°Ê¸ê®Æ®wºÞ²zµ{¦¡"; + SlotName[ arabic ] = "ãÏíÑ ÞÇÚÏÉ ÇáÈíÇäÇÊ"; + SlotName[ dutch ] = "Databasemanager oproepen"; + SlotName[ chinese_simplified ] = "Æô¶¯Êý¾Ý¿â¹ÜÀí³ÌÐò"; + SlotName[ greek ] = "Åíåñãïðïßçóç äéá÷åéñéóôÞ âÜóçò äåäïìÝíùí"; + SlotName[ korean ] = "µ¥ÀÌÅͺ£À̽º °ü¸®ÀÚ È£Ãâ"; + SlotName[ turkish ] = "Veritabaný yöneticisini çalýþtýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_QRY_MERGE +{ + SlotName = "Seriendruck vorbereiten"; + SlotName [ english ] = "Seriendruck vorbereiten"; + SlotName[ english_us ] = "Prepare Mail Merge"; + SlotName[ portuguese ] = "Preparar impressão em série"; + SlotName[ russian ] = "Ïîäãîòîâêà ê ñëèÿíèþ"; + SlotName[ dutch ] = "Afdruk standaardbrief voorbereiden"; + SlotName[ french ] = "Préparer Impression en série"; + SlotName[ spanish ] = "Preparar impresión en serie"; + SlotName[ italian ] = "Prepara stampa in serie"; + SlotName[ danish ] = "Forbered brevfletning"; + SlotName[ swedish ] = "Förbered serieutskrift"; + SlotName[ polish ] = "Przygotuj druk korespondencji seryjnej"; + SlotName[ portuguese_brazilian ] = "MergeDialog"; + SlotName[ japanese ] = "�·‚µ�ž‚݈ó�ü‚Ì�€”õ"; + SlotName[ chinese_simplified ] = "×¼±¸ÓʼþºÏ²¢"; + SlotName[ chinese_traditional ] = "·Ç³Æ¦X¨Ö¦C¦L"; + SlotName[ arabic ] = "ÊÌåíÒ ÇáØÈÇÚÉ ÇáãÓáÓáÉ"; + SlotName[ dutch ] = "Afdruk standaardbrief voorbereiden"; + SlotName[ chinese_simplified ] = "×¼±¸ÓʼþºÏ²¢"; + SlotName[ greek ] = "Ðñïåôïéìáóßá ãéá åêôýðùóç ìáæéêÞò áëëçëïãñáößáò"; + SlotName[ korean ] = "ÀüÀÚ¿ìÆí ÅëÇÕ Áغñ"; + SlotName[ turkish ] = "Standart mektup yazdýrmayý hazýrla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REDLINE_ACCEPT +{ + SlotName = "Änderungen akzeptieren oder ablehnen"; + SlotName [ english ] = "Änderungen akzeptieren oder ablehnen"; + SlotName[ english_us ] = "Accept or Reject Changes"; + SlotName[ portuguese ] = "Aceitar ou rejeitar modificações"; + SlotName[ russian ] = "Ïðèíÿòü èëè îòêëîíèòü èñïðàâëåíèÿ"; + SlotName[ dutch ] = "Wijzigingen accepteren of weigeren"; + SlotName[ french ] = "Accepter ou rejeter les modifications"; + SlotName[ spanish ] = "Aceptar modificaciones o rechazarlas"; + SlotName[ italian ] = "Accetta o rifiuta modifiche"; + SlotName[ danish ] = "Accepter eller forkast ændringer"; + SlotName[ swedish ] = "Acceptera eller ignorera ändringar"; + SlotName[ polish ] = "Zaakceptuj albo odrzuæ zmiany"; + SlotName[ portuguese_brazilian ] = "AcceptRedlining"; + SlotName[ japanese ] = "•Ï�X‰Ó�Š‚ÌŠm”F"; + SlotName[ chinese_simplified ] = "½ÓÊÜ»ò¾Ü¾ø¸ü¸Ä"; + SlotName[ chinese_traditional ] = "±µ¨ü©Î©Úµ´Åܧó"; + SlotName[ arabic ] = "ÞÈæá Ãæ ÑÝÖ ÇáÊÛííÑÇÊ"; + SlotName[ dutch ] = "Wijzigingen accepteren of weigeren"; + SlotName[ chinese_simplified ] = "½ÓÊÜ»ò¾Ü¾ø¸ü¸Ä"; + SlotName[ greek ] = "Áðïäï÷Þ Þ áðüññéøç áëëáãþí"; + SlotName[ korean ] = "º¯°æ ¼ö¶ô ¶Ç´Â °ÅÀý"; + SlotName[ turkish ] = "Deðiþiklikleri kabul ya da reddet"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REDLINE_COMMENT +{ + SlotName = "Kommentar einfügen"; + SlotName [ english ] = "Kommentar einfügen"; + SlotName[ english_us ] = "Insert Comment"; + SlotName[ portuguese ] = "Inserir comentário"; + SlotName[ russian ] = "Âñòàâèòü êîììåíòàðèé"; + SlotName[ dutch ] = "Commentaar invoegen"; + SlotName[ french ] = "Insérer un commentaire"; + SlotName[ spanish ] = "Insertar comentario"; + SlotName[ italian ] = "Inserisci commento"; + SlotName[ danish ] = "Indsæt kommentar"; + SlotName[ swedish ] = "Infoga kommentar"; + SlotName[ polish ] = "Wstaw komentarz"; + SlotName[ portuguese_brazilian ] = "CommentRedlining"; + SlotName[ japanese ] = "ºÒÝĂ̑}“ü"; + SlotName[ chinese_simplified ] = "²åÈë×¢½â"; + SlotName[ chinese_traditional ] = "´¡¤Jª`¸Ñ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÊÚáíÞ"; + SlotName[ dutch ] = "Commentaar invoegen"; + SlotName[ chinese_simplified ] = "²åÈë×¢½â"; + SlotName[ greek ] = "ÅéóáãùãÞ ó÷ïëßïõ"; + SlotName[ korean ] = "¼³¸í »ðÀÔ"; + SlotName[ turkish ] = "Açýklama ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REDLINE_ON +{ + SlotName = "Überarbeiten einschalten"; + SlotName [ english ] = "Überarbeiten einschalten"; + SlotName[ english_us ] = "Switch on Review"; + SlotName[ portuguese ] = "Traçar modificações"; + SlotName[ russian ] = "Âêë. èñïðàâëåíèÿ"; + SlotName[ dutch ] = "Opnieuw bewerken inschakelen"; + SlotName[ french ] = "Activer la retouche"; + SlotName[ spanish ] = "Activar modificaciones"; + SlotName[ italian ] = "Attiva modifiche"; + SlotName[ danish ] = "Aktiver modificering"; + SlotName[ swedish ] = "Aktivera revidering"; + SlotName[ polish ] = "W³¹cz modyfikacje"; + SlotName[ portuguese_brazilian ] = "ActivateRedlining"; + SlotName[ japanese ] = "•Ï�X—š—ð‚Ì‹L˜^"; + SlotName[ chinese_simplified ] = "¼¤»îÐÞ¸Ä"; + SlotName[ chinese_traditional ] = "¿E¬¡­×§ï"; + SlotName[ arabic ] = "ÊÊÈÚ ÇáÊäÞíÍ"; + SlotName[ dutch ] = "Opnieuw bewerken inschakelen"; + SlotName[ chinese_simplified ] = "¼¤»îÐÞ¸Ä"; + SlotName[ greek ] = "Åíåñãïðïßçóç åðáíåîÝôáóçò"; + SlotName[ korean ] = "¼öÁ¤ º¸¿Ï Àû¿ë"; + SlotName[ turkish ] = "Redaksiyonu çalýþtýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REDLINE_SHOW +{ + SlotName = "Überarbeitung anzeigen"; + SlotName [ english ] = "Überarbeitung anzeigen"; + SlotName[ english_us ] = "Highlight Changes"; + SlotName[ portuguese ] = "Destacar modificações"; + SlotName[ russian ] = "Âûäåëèòü èñïðàâëåíèÿ"; + SlotName[ dutch ] = "Nieuwe bewerking weergeven"; + SlotName[ french ] = "Afficher les retouches"; + SlotName[ spanish ] = "Mostrar modificaciones"; + SlotName[ italian ] = "Mostra revisione"; + SlotName[ danish ] = "Vis ændringer"; + SlotName[ swedish ] = "Visa revidering"; + SlotName[ polish ] = "Poka¿ modyfikacje"; + SlotName[ portuguese_brazilian ] = "ShowRedlining"; + SlotName[ japanese ] = "•Ï�X‰Ó�Š‚Ì•\\ަ"; + SlotName[ chinese_simplified ] = "ÏÔʾÐÞ¸Ä"; + SlotName[ chinese_traditional ] = "Åã¥Ü­×§ï"; + SlotName[ arabic ] = "ÅÙåÇÑ ÇáÊäÞíÍ"; + SlotName[ dutch ] = "Nieuwe bewerking weergeven"; + SlotName[ chinese_simplified ] = "ÏÔʾÐÞ¸Ä"; + SlotName[ greek ] = "ÅìöÜíéóç áëëáãþí"; + SlotName[ korean ] = "ÇÏÀ̶óÀÌÆ® º¯°æ"; + SlotName[ turkish ] = "Redaksiyonu görüntüle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REFRESH_VIEW +{ + SlotName = "Ansicht wiederherstellen"; + SlotName [ english ] = "Ansicht wiederherstellen"; + SlotName[ english_us ] = "Restore View"; + SlotName[ portuguese ] = "Restaurar visualização"; + SlotName[ russian ] = "Âîññòàíîâèòü ïðåäâàðèòåëüíûé ïðîñìîòð"; + SlotName[ dutch ] = "Weergave herstellen"; + SlotName[ french ] = "Restaurer l'affichage"; + SlotName[ spanish ] = "Restablecer visualización"; + SlotName[ italian ] = "Ripristina vista"; + SlotName[ danish ] = "Gendan visning"; + SlotName[ swedish ] = "Återställ vy"; + SlotName[ polish ] = "Przywróæ widok"; + SlotName[ portuguese_brazilian ] = "RestoreView"; + SlotName[ japanese ] = "•\\ަ‚Ì•œŒ³"; + SlotName[ chinese_simplified ] = "»Ö¸´ÊÓͼ"; + SlotName[ chinese_traditional ] = "«ì½ÆÀ˵ø"; + SlotName[ arabic ] = "ÇÓÊÚÇÏÉ ÇáÚÑÖ"; + SlotName[ dutch ] = "Weergave herstellen"; + SlotName[ chinese_simplified ] = "»Ö¸´ÊÓͼ"; + SlotName[ greek ] = "ÅðáíáöïñÜ ðñïâïëÞò"; + SlotName[ korean ] = "º¹±¸ º¸±â"; + SlotName[ turkish ] = "Görünümü geri getir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REPAGINATE +{ + SlotName = "Neuformatierung"; + SlotName [ english ] = "Neuformatierung"; + SlotName[ english_us ] = "Repaginate"; + SlotName[ portuguese ] = "Repaginar"; + SlotName[ russian ] = "Íîâîå ôîðìàòèðîâàíèå"; + SlotName[ dutch ] = "Nieuwe opmaak"; + SlotName[ french ] = "Repaginer"; + SlotName[ spanish ] = "Reformatear"; + SlotName[ italian ] = "Reimpagina"; + SlotName[ danish ] = "Genformatering"; + SlotName[ swedish ] = "Nyformatering"; + SlotName[ polish ] = "Nowe formatowanie"; + SlotName[ portuguese_brazilian ] = "Repaginate"; + SlotName[ japanese ] = "�V‹K�‘Ž®�Ý’è"; + SlotName[ chinese_simplified ] = "ÖØÐÂÖÆ×÷¸ñʽ"; + SlotName[ chinese_traditional ] = "­«·s¨î§@®æ¦¡"; + SlotName[ arabic ] = "ÅÚÇÏÉ ÇáÊäÓíÞ"; + SlotName[ dutch ] = "Nieuwe opmaak"; + SlotName[ chinese_simplified ] = "ÖØÐÂÖÆ×÷¸ñʽ"; + SlotName[ greek ] = "ÅðáíÜëçøç ìïñöïðïßçóçò"; + SlotName[ korean ] = "ÆäÀÌÁö ¸Å±è"; + SlotName[ turkish ] = "Yeniden formatla"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_REPEAT_SEARCH +{ + SlotName = "Suche wiederholen"; + SlotName [ english ] = "Suche wiederholen"; + SlotName[ english_us ] = "Repeat Search"; + SlotName[ portuguese ] = "Repetir procura"; + SlotName[ russian ] = "Ïîâòîð ïîèñêà"; + SlotName[ dutch ] = "Zoeken herhalen"; + SlotName[ french ] = "Répéter la recherche"; + SlotName[ spanish ] = "Repetir búsqueda"; + SlotName[ italian ] = "Ripeti ricerca"; + SlotName[ danish ] = "Gentag søgning"; + SlotName[ swedish ] = "Upprepa sökning"; + SlotName[ polish ] = "Powtórz wyszukiwanie"; + SlotName[ portuguese_brazilian ] = "RepeatSearch"; + SlotName[ japanese ] = "�ÄŒŸ�õ"; + SlotName[ chinese_simplified ] = "ÖØ¸´ËÑѰ"; + SlotName[ chinese_traditional ] = "­«½Æ´M§ä"; + SlotName[ arabic ] = "ÊßÑÇÑ ÇáÈÍË"; + SlotName[ dutch ] = "Zoeken herhalen"; + SlotName[ chinese_simplified ] = "ÖØ¸´ËÑѰ"; + SlotName[ greek ] = "ÅðáíÜëçøç áíáæÞôçóçò"; + SlotName[ korean ] = "ã±â ¹Ýº¹"; + SlotName[ turkish ] = "Yeniden bul"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_RULER +{ + SlotName = "Lineal ein/aus"; + SlotName [ english ] = "Lineal ein/aus"; + SlotName[ english_us ] = "Ruler On/Off"; + SlotName[ portuguese ] = "Mostrar régua"; + SlotName[ russian ] = "Âêë./âûêë. ëèíåéêó"; + SlotName[ dutch ] = "Liniaal aan/uit"; + SlotName[ french ] = "Afficher/masquer la règle"; + SlotName[ spanish ] = "Regla"; + SlotName[ italian ] = "Righello on/off"; + SlotName[ danish ] = "Lineal til/fra"; + SlotName[ swedish ] = "Linjal på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz linijkê"; + SlotName[ portuguese_brazilian ] = "ViewRuler"; + SlotName[ japanese ] = "Ù°×° µÝ/µÌ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë±ê³ß"; + SlotName[ chinese_traditional ] = "Åã¥Ü/Áô¤J¼Ð¤Ø"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÇáãÓØÑÉ"; + SlotName[ dutch ] = "Liniaal aan/uit"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë±ê³ß"; + SlotName[ greek ] = "×Üñáêáò Íáé/¼÷é"; + SlotName[ korean ] = "´«±ÝÀÚ ÀÛµ¿/ÇØÁ¦"; + SlotName[ turkish ] = "Cetveli görüntüle/gizle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SELECT_PARA +{ + SlotName = "Absatz selektieren"; + SlotName [ english ] = "Absatz selektieren"; + SlotName[ english_us ] = "Select Paragraph"; + SlotName[ portuguese ] = "Seleccionar parágrafo"; + SlotName[ russian ] = "Âûäåëèòü àáçàö"; + SlotName[ dutch ] = "Alinea selecteren"; + SlotName[ french ] = "Sélectionner paragraphe"; + SlotName[ spanish ] = "Seleccionar párrafo"; + SlotName[ italian ] = "Seleziona paragrafo"; + SlotName[ danish ] = "Marker afsnit"; + SlotName[ swedish ] = "Markera stycke"; + SlotName[ polish ] = "Wybierz akapit"; + SlotName[ portuguese_brazilian ] = "ParagraphSelect"; + SlotName[ japanese ] = "’i—Ž‚Ì‘I‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÖжÎÂä"; + SlotName[ chinese_traditional ] = "¿ï¨ú¬q¸¨"; + SlotName[ arabic ] = "ÊÍÏíÏ ÝÞÑÉ"; + SlotName[ dutch ] = "Alinea selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÖжÎÂä"; + SlotName[ greek ] = "ÅðéëïãÞ ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ô ¼±ÅÃ"; + SlotName[ turkish ] = "Paragraf seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SELECT_WORD +{ + SlotName = "Wort selektieren"; + SlotName [ english ] = "Wort selektieren"; + SlotName[ english_us ] = "Select Word"; + SlotName[ portuguese ] = "Seleccionar palavra"; + SlotName[ russian ] = "Âûäåëèòü ñëîâî"; + SlotName[ dutch ] = "Woord selecteren"; + SlotName[ french ] = "Sélectionner mot"; + SlotName[ spanish ] = "Seleccionar palabra"; + SlotName[ italian ] = "Seleziona parola"; + SlotName[ danish ] = "Marker ord"; + SlotName[ swedish ] = "Markera ord"; + SlotName[ polish ] = "Zaznacz s³owo"; + SlotName[ portuguese_brazilian ] = "WordSelect"; + SlotName[ japanese ] = "’PŒê‚Ì‘I‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñ×Ö"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦r"; + SlotName[ arabic ] = "ÊÍÏíÏ ßáãÉ"; + SlotName[ dutch ] = "Woord selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñ×Ö"; + SlotName[ greek ] = "ÅðéëïãÞ ëÝîçò"; + SlotName[ korean ] = "´Ü¾î ¼±ÅÃ"; + SlotName[ turkish ] = "Sözcük seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SET_ADD_MODE +{ + SlotName = "Multiselektion ein"; + SlotName [ english ] = "Multiselektion ein"; + SlotName[ english_us ] = "MultiSelection On"; + SlotName[ portuguese ] = "Multiselecção"; + SlotName[ russian ] = "Âêë. ìóëüòèâûäåëåíèå"; + SlotName[ dutch ] = "Multiselectie inschakelen"; + SlotName[ french ] = "Mode Multisélection"; + SlotName[ spanish ] = "Activar selección múltiple"; + SlotName[ italian ] = "Attiva selezione multipla"; + SlotName[ danish ] = "Aktiver multimarkering"; + SlotName[ swedish ] = "Multipel markering på"; + SlotName[ polish ] = "W³¹cz wielokrotn¹ selekcjê"; + SlotName[ portuguese_brazilian ] = "SetMultiSelection"; + SlotName[ japanese ] = "•¡�”‘I‘ð�@µÝ"; + SlotName[ chinese_simplified ] = "¼¤»î¶àÖØÑ¡Ôñ"; + SlotName[ chinese_traditional ] = "¿E¬¡¦h­«¿ï¨ú"; + SlotName[ arabic ] = "ÊÔÛíá ÇáÊÍÏíÏ ÇáãÊÚÏÏ"; + SlotName[ dutch ] = "Multiselectie inschakelen"; + SlotName[ chinese_simplified ] = "¼¤»î¶àÖØÑ¡Ôñ"; + SlotName[ greek ] = "Åíåñãïðïßçóç ðïëëáðëÞò åðéëïãÞò"; + SlotName[ korean ] = "´ÙÁß ¼±Åà ÀÛµ¿"; + SlotName[ turkish ] = "Çoklu seçim açýk"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SET_EXT_MODE +{ + SlotName = "Erweiterte Selektion ein"; + SlotName [ english ] = "Erweiterte Selektion ein"; + SlotName[ english_us ] = "Extended Selection On"; + SlotName[ portuguese ] = "Selecção extensa"; + SlotName[ russian ] = "Âêë. ðàñøèðåííîå âûäåëåíèå"; + SlotName[ dutch ] = "Uitgebreide selectie inschakelen"; + SlotName[ french ] = "Sélection étendue"; + SlotName[ spanish ] = "Activar Selección Extendida"; + SlotName[ italian ] = "Attiva selezione ampliata"; + SlotName[ danish ] = "Aktiver udvidet markering"; + SlotName[ swedish ] = "Utökad markering på"; + SlotName[ polish ] = "W³¹cz rozsz. selekcjê"; + SlotName[ portuguese_brazilian ] = "SetExtSelection"; + SlotName[ japanese ] = "Šg’£‘I‘ð µÝ"; + SlotName[ chinese_simplified ] = "¼¤»î¸ß¼¶Ñ¡Ôñ"; + SlotName[ chinese_traditional ] = "¿E¬¡¶i¶¥¿ï¨ú"; + SlotName[ arabic ] = "ÊÔÛíá ÇáÊÍÏíÏ ÇáãæÓÚ"; + SlotName[ dutch ] = "Uitgebreide selectie inschakelen"; + SlotName[ chinese_simplified ] = "¼¤»î¸ß¼¶Ñ¡Ôñ"; + SlotName[ greek ] = "Åíåñãïðïßçóç åêôåôáìÝíçò åðéëïãÞò"; + SlotName[ korean ] = "È®Àå ¼±Åà ÀÛµ¿"; + SlotName[ turkish ] = "Ayrýntýlý seçim açýk"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SET_PAGE_STYLE +{ + SlotName = "Seitenvorlage zuweisen"; + SlotName [ english ] = "Seitenvorlage zuweisen"; + SlotName[ english_us ] = "Apply Page Style"; + SlotName[ portuguese ] = "Aplicar estilo de página"; + SlotName[ russian ] = "Ïðèìåíèòü ñòèëè ñòðàíèöû"; + SlotName[ dutch ] = "Pagina-opmaakprofiel toewijzen"; + SlotName[ french ] = "Assigner le style de page"; + SlotName[ spanish ] = "Aplicar estilo de página"; + SlotName[ italian ] = "Assegna modello di pagina"; + SlotName[ danish ] = "Tildel sidetypografi"; + SlotName[ swedish ] = "Tilldela sidformatmall"; + SlotName[ polish ] = "Zastosuj styl strony"; + SlotName[ portuguese_brazilian ] = "ApplyPageStyle"; + SlotName[ japanese ] = "Íß°¼Þ½À²Ù‚Ì“K—p"; + SlotName[ chinese_simplified ] = "ʹÓÃÒ³ÃæÑùʽ"; + SlotName[ chinese_traditional ] = "¨Ï¥Î­¶­±¼Ë¦¡"; + SlotName[ arabic ] = "ÊÚííä ÞÇáÈ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Pagina-opmaakprofiel toewijzen"; + SlotName[ chinese_simplified ] = "ʹÓÃÒ³ÃæÑùʽ"; + SlotName[ greek ] = "ÅöáñìïãÞ ðñüôõðïõ óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö À¯Çü Àû¿ë"; + SlotName[ turkish ] = "Sayfa þablonu ata"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SET_SUB_SCRIPT +{ + SlotName = "Tiefgestellt"; + SlotName [ english ] = "Tiefgestellt"; + SlotName[ english_us ] = "Subscript"; + SlotName[ portuguese ] = "Inferior à linha"; + SlotName[ russian ] = "Íèæíèé èíäåêñ"; + SlotName[ dutch ] = "Subscript"; + SlotName[ french ] = "Indice"; + SlotName[ spanish ] = "Subíndice"; + SlotName[ italian ] = "Pedice"; + SlotName[ danish ] = "Sænket"; + SlotName[ swedish ] = "Nedsänkt"; + SlotName[ polish ] = "Indeks dolny"; + SlotName[ portuguese_brazilian ] = "Subscript"; + SlotName[ japanese ] = "‰º•t‚«"; + SlotName[ chinese_simplified ] = "ϱê"; + SlotName[ chinese_traditional ] = "¤U¼Ð"; + SlotName[ arabic ] = "ãäÎÝÖ"; + SlotName[ dutch ] = "Subscript"; + SlotName[ chinese_simplified ] = "ϱê"; + SlotName[ greek ] = "Äåßêôçò"; + SlotName[ korean ] = "¾Æ·¡ ÷ÀÚ"; + SlotName[ turkish ] = "Alt simge"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SET_SUPER_SCRIPT +{ + SlotName = "Hochgestellt"; + SlotName [ english ] = "Hochgestellt"; + SlotName[ english_us ] = "Superscript"; + SlotName[ portuguese ] = "Superior à linha"; + SlotName[ russian ] = "Âåðõíèé èíäåêñ"; + SlotName[ dutch ] = "Superscript"; + SlotName[ french ] = "Exposant"; + SlotName[ spanish ] = "Superíndice"; + SlotName[ italian ] = "Apice"; + SlotName[ danish ] = "Hævet"; + SlotName[ swedish ] = "Upphöjt"; + SlotName[ polish ] = "Indeks górny"; + SlotName[ portuguese_brazilian ] = "Superscript"; + SlotName[ japanese ] = "�ã•t‚«"; + SlotName[ chinese_simplified ] = "Éϱê"; + SlotName[ chinese_traditional ] = "¤W¼Ð"; + SlotName[ arabic ] = "ãÑÊÝÚ"; + SlotName[ dutch ] = "Superscript"; + SlotName[ chinese_simplified ] = "Éϱê"; + SlotName[ greek ] = "ÅêèÝôçò"; + SlotName[ korean ] = "À­ ÷ÀÚ"; + SlotName[ turkish ] = "Üst simge"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SHADOWCURSOR +{ + SlotName = "Direkt-Cursor ein/aus"; + SlotName [ english ] = "Direkt-Cursor ein/aus"; + SlotName[ english_us ] = "Direct Cursor on/off"; + SlotName[ portuguese ] = "Activar cursor directo"; + SlotName[ russian ] = "Âêë./âûêë. ñâîáîäíûé êóðñîð"; + SlotName[ dutch ] = "Direct-cursor aan/uit"; + SlotName[ french ] = "(Dés)activer le curseur direct"; + SlotName[ spanish ] = "Activar/desactivar cursor directo"; + SlotName[ italian ] = "Cursore diretto on/off"; + SlotName[ danish ] = "Direkt-markør til/fra"; + SlotName[ swedish ] = "Direktmarkör på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz kursor bezpoœredni"; + SlotName[ portuguese_brazilian ] = "ShadowCursor"; + SlotName[ japanese ] = "ÀÞ²Ú¸Ä ¶°¿Ù µÝ/µÌ"; + SlotName[ chinese_simplified ] = "¼¤»î»òʧ»îÖ±½Ó¶¨Î»¹â±ê"; + SlotName[ chinese_traditional ] = "¿E¬¡©Î¥¢¬¡ª½±µ©w¦ì¥ú¼Ð"; + SlotName[ arabic ] = "ÊÔÛíá/ÅíÞÇÝ ÇáãÄÔÑ ÇáãÈÇÔÑ"; + SlotName[ dutch ] = "Direct-cursor aan/uit"; + SlotName[ chinese_simplified ] = "¼¤»î»òʧ»îÖ±½Ó¶¨Î»¹â±ê"; + SlotName[ greek ] = "¢ìåóïò äñïìÝáò Íáé/¼÷é"; + SlotName[ korean ] = "Á÷Á¢ Ä¿¼­ ÀÛµ¿/ÇØÁ¦"; + SlotName[ turkish ] = "Serbest imleç açýk/kapalý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SHIFT_BACKSPACE +{ + SlotName = "Rückschritt"; + SlotName [ english ] = "Rückschritt"; + SlotName[ english_us ] = "Backspace"; + SlotName[ portuguese ] = "Retrocesso"; + SlotName[ russian ] = "Âîçâðàò"; + SlotName[ dutch ] = "Backspace"; + SlotName[ french ] = "RET.ARR"; + SlotName[ spanish ] = "Retroceso"; + SlotName[ italian ] = "Backspace"; + SlotName[ danish ] = "Tilbage"; + SlotName[ swedish ] = "Backsteg"; + SlotName[ polish ] = "Wstecz"; + SlotName[ portuguese_brazilian ] = "Backspace"; + SlotName[ japanese ] = "ÊÞ¯¸½Íß°½"; + SlotName[ chinese_simplified ] = "Í˸ñ"; + SlotName[ chinese_traditional ] = "ºM®ø©R¥O"; + SlotName[ arabic ] = "ÊÑÇÌÚ"; + SlotName[ dutch ] = "Backspace"; + SlotName[ chinese_simplified ] = "Í˸ñ"; + SlotName[ greek ] = "Backspace"; + SlotName[ korean ] = "¹é ½ºÆäÀ̽º"; + SlotName[ turkish ] = "Geri al"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SHOW_FOUR_PAGES +{ + SlotName = "Seitenansicht: vier Seiten"; + SlotName [ english ] = "Seitenansicht: vier Seiten"; + SlotName[ english_us ] = "Page Preview: Four Pages"; + SlotName[ portuguese ] = "Ver página: quatro páginas"; + SlotName[ russian ] = "Ïðîñìîòð ñòðàíèöû:÷åòûðå ñòðàíèöû"; + SlotName[ dutch ] = "Afdrukvoorbeeld: vier pagina´s"; + SlotName[ french ] = "Aperçu : quatre pages"; + SlotName[ spanish ] = "Vista preliminar: cuatro páginas"; + SlotName[ italian ] = "Vista pagina: quattro pagine"; + SlotName[ danish ] = "Vis udskrift: fire sider"; + SlotName[ swedish ] = "Förhandsgranskning: fyra sidor"; + SlotName[ polish ] = "Podgl¹d ustawienia strony: Cztery strony"; + SlotName[ portuguese_brazilian ] = "ShowFourPages"; + SlotName[ japanese ] = "4Íß°¼Þ•\\ަ"; + SlotName[ chinese_simplified ] = "Ò³ÃæÊÓͼ£ºËÄÒ³"; + SlotName[ chinese_traditional ] = "­¶­±À˵ø¡G¥|­¶"; + SlotName[ arabic ] = "ÇáãÚÇíäÉ: ÃÑÈÚ ÕÝÍÇÊ"; + SlotName[ dutch ] = "Afdrukvoorbeeld: vier pagina´s"; + SlotName[ chinese_simplified ] = "Ò³ÃæÊÓͼ£ºËÄÒ³"; + SlotName[ greek ] = "Ðñïåðéóêüðçóç óåëßäáò: ôÝóóåñéò óåëßäåò"; + SlotName[ korean ] = "ÆäÀÌÁö ¹Ì¸®º¸±â: 4 ÆäÀÌÁö"; + SlotName[ turkish ] = "Sayfa ön izleme: Dört sayfa"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SHOW_TWO_PAGES +{ + SlotName = "Seitenansicht: zwei Seiten"; + SlotName [ english ] = "Seitenansicht: zwei Seiten"; + SlotName[ english_us ] = "Page Preview: Two Pages"; + SlotName[ portuguese ] = "Ver página: duas páginas"; + SlotName[ russian ] = "Ïðîñìîòð ñòðàíèöû: äâå ñòðàíèöû"; + SlotName[ dutch ] = "Afdrukvoorbeeld: twee pagina´s"; + SlotName[ french ] = "Aperçu : deux pages"; + SlotName[ spanish ] = "Vista preliminar: dos páginas"; + SlotName[ italian ] = "Vista pagina: due pagine"; + SlotName[ danish ] = "Vis udskrift: to sider"; + SlotName[ swedish ] = "Förhandsgranskning: två sidor"; + SlotName[ polish ] = "Podgl¹d ustawienia strony:Dwie strony"; + SlotName[ portuguese_brazilian ] = "ShowTwoPages"; + SlotName[ japanese ] = "2Íß°¼Þ•\\ަ"; + SlotName[ chinese_simplified ] = "Ò³ÃæÊÓͼ£ºÁ½Ò³"; + SlotName[ chinese_traditional ] = "­¶­±À˵ø¡G¨â­¶"; + SlotName[ arabic ] = "ÇáãÚÇíäÉ: ÕÝÍÊÇä"; + SlotName[ dutch ] = "Afdrukvoorbeeld: twee pagina´s"; + SlotName[ chinese_simplified ] = "Ò³ÃæÊÓͼ£ºÁ½Ò³"; + SlotName[ greek ] = "Ðñïåðéóêüðçóç óåëßäáò: Äýï óåëßäåò"; + SlotName[ korean ] = "ÆäÀÌÁö ¹Ì¸®º¸±â: 2 ÆäÀÌÁö"; + SlotName[ turkish ] = "Sayfa önizleme: Ýki sayfa"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SHRINK_FONT_SIZE +{ + SlotName = "Zeichen verkleinern"; + SlotName [ english ] = "Zeichen verkleinern"; + SlotName[ english_us ] = "Reduce Font"; + SlotName[ portuguese ] = "Reduzir caracteres"; + SlotName[ russian ] = "Óìåíüøèòü øðèôò"; + SlotName[ dutch ] = "Tekens verkleinen"; + SlotName[ french ] = "Réduire taille des caractères"; + SlotName[ spanish ] = "Reducir fuente"; + SlotName[ italian ] = "Riduci dim. carattere"; + SlotName[ danish ] = "Formindsk tegn"; + SlotName[ swedish ] = "Förminska tecken"; + SlotName[ polish ] = "Pomniejsz znaki"; + SlotName[ portuguese_brazilian ] = "ShrinkCharacterSize"; + SlotName[ japanese ] = "•¶Žš‚Ì�k�¬"; + SlotName[ chinese_simplified ] = "ËõС×Ö·û"; + SlotName[ chinese_traditional ] = "ÁY¤p¦r¤¸"; + SlotName[ arabic ] = "ÊÕÛíÑ ÇáÎØ"; + SlotName[ dutch ] = "Tekens verkleinen"; + SlotName[ chinese_simplified ] = "ËõС×Ö·û"; + SlotName[ greek ] = "Óìßêñõíóç ÷áñáêôÞñùí"; + SlotName[ korean ] = "ÆùÆ® ÁÙÀ̱â"; + SlotName[ turkish ] = "Yazýtipini küçült"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SORTING_DLG +{ + SlotName = "Sortieren"; + SlotName [ english ] = "Sortieren"; + SlotName[ english_us ] = "Sort"; + SlotName[ portuguese ] = "Ordenar"; + SlotName[ russian ] = "Ñîðòèðîâàòü"; + SlotName[ dutch ] = "Sorteren"; + SlotName[ french ] = "Trier"; + SlotName[ spanish ] = "Ordenar"; + SlotName[ italian ] = "Ordina"; + SlotName[ danish ] = "Sorter"; + SlotName[ swedish ] = "Sortera"; + SlotName[ polish ] = "Sortuj"; + SlotName[ portuguese_brazilian ] = "ToolsSort"; + SlotName[ japanese ] = "•À‚בւ¦"; + SlotName[ chinese_simplified ] = "ÅÅÐò"; + SlotName[ chinese_traditional ] = "±Æ§Ç"; + SlotName[ arabic ] = "ÝÑÒ"; + SlotName[ dutch ] = "Sorteren"; + SlotName[ chinese_simplified ] = "ÅÅÐò"; + SlotName[ greek ] = "Ôáîéíüìçóç"; + SlotName[ korean ] = "Á¤·Ä"; + SlotName[ turkish ] = "Sýrala"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SOURCEVIEW +{ + SlotName = "HTML-Quelltext anzeigen"; + SlotName [ english ] = "HTML-Quelltext anzeigen"; + SlotName[ english_us ] = "Show HTML Source"; + SlotName[ portuguese ] = "Mostrar texto-fonte HTML"; + SlotName[ russian ] = "Ïîêàçàòü èñõîäíûé òåêñò HTML"; + SlotName[ dutch ] = "HTML-brontekst weergeven"; + SlotName[ french ] = "Afficher le texte source HTML"; + SlotName[ spanish ] = "Mostrar texto fuente HTML"; + SlotName[ italian ] = "Mostra testo sorgente HTML"; + SlotName[ danish ] = "Vis HTML-kildetekst"; + SlotName[ swedish ] = "Visa HTML-källtext"; + SlotName[ polish ] = "Poka¿ tekst Ÿród³owy HTML"; + SlotName[ portuguese_brazilian ] = "FileHtmlSourceText"; + SlotName[ japanese ] = "HTML¿°½‚Ì•\\ަ"; + SlotName[ chinese_simplified ] = "ÏÔʾ HTML Ô´Îı¾"; + SlotName[ chinese_traditional ] = "Åã¥Ü HTML-­ì©lÀÉ"; + SlotName[ arabic ] = "ÅÙåÇÑ ãÕÏÑ HTML"; + SlotName[ dutch ] = "HTML-brontekst weergeven"; + SlotName[ chinese_simplified ] = "ÏÔʾ HTML Ô´Îı¾"; + SlotName[ greek ] = "ÅìöÜíéóç êåéìÝíïõ ðñïÝëåõóçò HTML"; + SlotName[ korean ] = "HTML ¼Ò½º º¸À̱â"; + SlotName[ turkish ] = "HTML kaynak kodunu görüntüle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_SPELLING_DLG +{ + SlotName = "Rechtschreibung"; + SlotName [ english ] = "Rechtschreibung"; + SlotName[ english_us ] = "Spellcheck"; + SlotName[ portuguese ] = "Ortografia"; + SlotName[ russian ] = "Ïðàâîïèñàíèå"; + SlotName[ dutch ] = "Spelling"; + SlotName[ french ] = "Orthographe"; + SlotName[ spanish ] = "Revisión ortográfica"; + SlotName[ italian ] = "Controllo ortografico "; + SlotName[ danish ] = "Stavekontrol"; + SlotName[ swedish ] = "Rättstavning"; + SlotName[ polish ] = "Pisownia"; + SlotName[ portuguese_brazilian ] = "Spelling"; + SlotName[ japanese ] = "•¶�Í�Z�³"; + SlotName[ chinese_simplified ] = "Õý×Ö·¨"; + SlotName[ chinese_traditional ] = "«÷¦r"; + SlotName[ arabic ] = "ÊÏÞíÞ ÅãáÇÆí"; + SlotName[ dutch ] = "Spelling"; + SlotName[ chinese_simplified ] = "Õý×Ö·¨"; + SlotName[ greek ] = "Ïñèïãñáößá"; + SlotName[ korean ] = "¸ÂÃã¹ý"; + SlotName[ turkish ] = "Yazým"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_DOC_DIRECT +{ + SlotName = "Direkt zum Dokumentanfang"; + SlotName [ english ] = "Direkt zum Dokumentanfang"; + SlotName[ english_us ] = "Directly to Document Begin"; + SlotName[ portuguese ] = "Directamente para início do documento"; + SlotName[ russian ] = "Íåïîñðåäñòâåííî äî íà÷àëà äîêóìåíòà"; + SlotName[ dutch ] = "Direct naar documentbegin"; + SlotName[ french ] = "Au début du document"; + SlotName[ spanish ] = "Directo al comienzo del documento"; + SlotName[ italian ] = "Direttamente all'inizio del documento"; + SlotName[ danish ] = "Direkte til dokumentets begyndelse"; + SlotName[ swedish ] = "Direkt till början av dokumentet"; + SlotName[ polish ] = "Bezpoœrednio do pocz¹tku dokumentu"; + SlotName[ portuguese_brazilian ] = "BeginDocument"; + SlotName[ japanese ] = "’¼�Ú•¶�‘‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "Ö±½Óתµ½ÎĵµÊ×¶Ë"; + SlotName[ chinese_traditional ] = "ª½±µÂà¨ì¤å¥ó­ººÝ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáãÓÊäÏ ãÈÇÔÑÉ"; + SlotName[ dutch ] = "Direct naar documentbegin"; + SlotName[ chinese_simplified ] = "Ö±½Óתµ½ÎĵµÊ×¶Ë"; + SlotName[ greek ] = "Áðåõèåßáò ðñïò ôçí áñ÷Þ ôïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ ½ÃÀÛ¿¡ ¹Ù·Î"; + SlotName[ turkish ] = "Doðrudan belgenin baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_COLUMN +{ + SlotName = "Zum Spaltenanfang"; + SlotName [ english ] = "Zum Spaltenanfang"; + SlotName[ english_us ] = "To Column Begin"; + SlotName[ portuguese ] = "Ir para início de coluna"; + SlotName[ russian ] = "Äî íà÷àëà ñòîëáöà"; + SlotName[ dutch ] = "Naar kolombegin"; + SlotName[ french ] = "Aller au début de la colonne"; + SlotName[ spanish ] = "Ir al comienzo de la columna"; + SlotName[ italian ] = "All'inizio della colonna"; + SlotName[ danish ] = "Til kolonnens begyndelse"; + SlotName[ swedish ] = "Till början av kolumnen"; + SlotName[ polish ] = "Do pocz¹tku kolumny"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfColumn"; + SlotName[ japanese ] = "—ñ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÁÐÊ×"; + SlotName[ chinese_traditional ] = "Âà¨ìÄæ­º"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÚãæÏ"; + SlotName[ dutch ] = "Naar kolombegin"; + SlotName[ chinese_simplified ] = "תµ½ÁÐÊ×"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò óôÞëçò"; + SlotName[ korean ] = "¿­ ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Sütun baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_DOCUMENT +{ + SlotName = "Zum Dokumentanfang"; + SlotName [ english ] = "Zum Dokumentanfang"; + SlotName[ english_us ] = "To Document Begin"; + SlotName[ portuguese ] = "Ir para início do documento"; + SlotName[ russian ] = "Ê íà÷àëó äîêóìåíòà"; + SlotName[ dutch ] = "Naar begin document"; + SlotName[ french ] = "Au début du document"; + SlotName[ spanish ] = "Al comienzo del documento"; + SlotName[ italian ] = "All'inizio del documento"; + SlotName[ danish ] = "Til dokumentets begyndelse"; + SlotName[ swedish ] = "Till början av dokument"; + SlotName[ polish ] = "Do pocz¹tku dokumentu"; + SlotName[ portuguese_brazilian ] = "GoToStartOfDoc"; + SlotName[ japanese ] = "•¶�‘‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÎĵµÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤å¥ó­ººÝ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Naar begin document"; + SlotName[ chinese_simplified ] = "תµ½ÎĵµÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ÀÇ ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Belgenin baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_DOCUMENT_SEL +{ + SlotName = "Bis Dokumentanfang selektieren"; + SlotName [ english ] = "Bis Dokumentanfang selektieren"; + SlotName[ english_us ] = "Select to Document Begin"; + SlotName[ portuguese ] = "Seleccionar até início do documento"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà äîêóìåíòà"; + SlotName[ dutch ] = "Tot aan begin document selecteren"; + SlotName[ french ] = "Sélectionner jusqu'au début du document"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo del documento"; + SlotName[ italian ] = "Seleziona fino all'inizio del documento"; + SlotName[ danish ] = "Marker til dokumentets begyndelse"; + SlotName[ swedish ] = "Markera till början av dokument"; + SlotName[ polish ] = "Zaznacz do pocz¹tku dokumentu"; + SlotName[ portuguese_brazilian ] = "BeginDocumentSel"; + SlotName[ japanese ] = "•¶�‘‚ÌŽn‚߂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÖÐÖÁÎĵµÊ×¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤å¥ó­ººÝ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáãÓÊäÏ"; + SlotName[ dutch ] = "Tot aan begin document selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÖÐÖÁÎĵµÊ×¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôïõ åããñÜöïõ"; + SlotName[ korean ] = "¹®¼­ ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Belgenin baþlangýcýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_LINE +{ + SlotName = "Zum Zeilenanfang"; + SlotName [ english ] = "Zum Zeilenanfang"; + SlotName[ english_us ] = "To Line Begin"; + SlotName[ portuguese ] = "Ir para início da linha"; + SlotName[ russian ] = "Äî íà÷àëà ñòðîêè"; + SlotName[ dutch ] = "Naar begin regel"; + SlotName[ french ] = "Aller au début de ligne"; + SlotName[ spanish ] = "Ir al comienzo de la línea"; + SlotName[ italian ] = "All'inizio riga"; + SlotName[ danish ] = "Til rækkens begyndelse"; + SlotName[ swedish ] = "Till början av rad"; + SlotName[ polish ] = "Do pocz¹tku wiersza"; + SlotName[ portuguese_brazilian ] = "GoToStartOfLine"; + SlotName[ japanese ] = "�s“ª‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÊ×"; + SlotName[ chinese_traditional ] = "Âà¨ì¦æ­º"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Naar begin regel"; + SlotName[ chinese_simplified ] = "תµ½ÐÐÊ×"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò ãñáììÞò"; + SlotName[ korean ] = "¼± ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Satýr baþý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_LINE_SEL +{ + SlotName = "Bis Zeilenanfang selektieren"; + SlotName [ english ] = "Bis Zeilenanfang selektieren"; + SlotName[ english_us ] = "Select to Begin of Line"; + SlotName[ portuguese ] = "Seleccionar até início da linha"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà ñòðîêè"; + SlotName[ dutch ] = "Tot regelbegin selecteren"; + SlotName[ french ] = "Sélect. jusqu'au début de ligne"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo de la línea"; + SlotName[ italian ] = "Seleziona fino all'inizio della riga"; + SlotName[ danish ] = "Marker til rækkens begyndelse"; + SlotName[ swedish ] = "Markera till början av rad"; + SlotName[ polish ] = "Zaznacz do pocz¹tku wiersza"; + SlotName[ portuguese_brazilian ] = "BeginLineSel"; + SlotName[ japanese ] = "�s“ª‚܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñµ½ÐÐÊ×"; + SlotName[ chinese_traditional ] = "¿ï¾Ü¨ì¦æ­º"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáÓØÑ"; + SlotName[ dutch ] = "Tot regelbegin selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñµ½ÐÐÊ×"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôçò ãñáììÞò"; + SlotName[ korean ] = "¼±ÀÇ ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Satýr baþýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_NEXT_COLUMN +{ + SlotName = "Zum Anfang nächste Spalte"; + SlotName [ english ] = "Zum Anfang nächste Spalte"; + SlotName[ english_us ] = "To Begin of Next Column"; + SlotName[ portuguese ] = "Ir para início da coluna seguinte"; + SlotName[ russian ] = "Äî íà÷àëà ñëåäóþùåãî ñòîëáöà"; + SlotName[ dutch ] = "Naar begin volgende kolom"; + SlotName[ french ] = "Aller au début de la colonne suivante"; + SlotName[ spanish ] = "Ir al comienzo de la columna siguiente "; + SlotName[ italian ] = "All'inizio della colonna successiva"; + SlotName[ danish ] = "Til næste kolonnes begyndelse"; + SlotName[ swedish ] = "Till början av nästa kolumn"; + SlotName[ polish ] = "Do pocz¹tku nastêpnej kolumny"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfNextColumn"; + SlotName[ japanese ] = "ŽŸ‚Ì—ñ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÁеÄÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@Äæ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÚãæÏ ÇáÊÇáí"; + SlotName[ dutch ] = "Naar begin volgende kolom"; + SlotName[ chinese_simplified ] = "תµ½ÏÂÒ»ÁеÄÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò áñ÷Þ åðüìåíçò óôÞëçò"; + SlotName[ korean ] = "´ÙÀ½ ¿­¿¡ ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Sonraki sütunun baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_NEXT_PAGE +{ + SlotName = "Zum Anfang nächste Seite"; + SlotName [ english ] = "Zum Anfang nächste Seite"; + SlotName[ english_us ] = "To Begin of Next Page"; + SlotName[ portuguese ] = "Ir para início da página seguinte"; + SlotName[ russian ] = "Äî íà÷àëà ñëåäóþùåé ñòðàíèöû"; + SlotName[ dutch ] = "Naar begin volgende pagina"; + SlotName[ french ] = "Aller au début de la page suivante"; + SlotName[ spanish ] = "Ir al comienzo de la página siguiente"; + SlotName[ italian ] = "All'inizio della pagina successiva"; + SlotName[ danish ] = "Til næste sides begyndelse"; + SlotName[ swedish ] = "Till början av nästa sida"; + SlotName[ polish ] = "Na pocz¹tek nastêpnej strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfNextPage"; + SlotName[ japanese ] = "ŽŸÍß°¼Þ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ï¸öÒ³ÃæµÄÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤U¤@­¶­º"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Naar begin volgende pagina"; + SlotName[ chinese_simplified ] = "תµ½Ï¸öÒ³ÃæµÄÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò åðüìåíçò óåëßäáò"; + SlotName[ korean ] = "´ÙÀ½ ÆäÀÌÁöÀÇ ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Sonraki sayfanýn baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_NEXT_PAGE_SEL +{ + SlotName = "Bis Anfang nächste Seite selektieren"; + SlotName [ english ] = "Bis Anfang nächste Seite selektieren"; + SlotName[ english_us ] = "Select to Begin of Next Page"; + SlotName[ portuguese ] = "Seleccionar até início da página seguinte"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà ñëåäóþùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan begin volgende pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'au début de la page suivante"; + SlotName[ spanish ] = "Seleccionar hasta comienzo de la página siguiente"; + SlotName[ italian ] = "Seleziona fino all'inizio della pagina successiva"; + SlotName[ danish ] = "Marker til næste sides begyndelse"; + SlotName[ swedish ] = "Markera till början av nästa sida"; + SlotName[ polish ] = "Zaznacz do pocz¹tku nastêpnej strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfNextPageSel"; + SlotName[ japanese ] = "ŽŸÍß°¼Þ‚ÌŽn‚߂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ³Ê×¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¤¤¦Ü¤U¤@­¶­º"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáÕÝÍÉ ÇáÊÇáíÉ"; + SlotName[ dutch ] = "Tot aan begin volgende pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÏÂÒ³Ê×¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôçò åðüìåíçò óåëßäáò"; + SlotName[ korean ] = "´ÙÀ½ ÆäÀÌÁö ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Sonraki sayfanýn baþlangýcýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PAGE +{ + SlotName = "Zum Seitenanfang"; + SlotName [ english ] = "Zum Seitenanfang"; + SlotName[ english_us ] = "To Page Begin"; + SlotName[ portuguese ] = "Ir para início da página"; + SlotName[ russian ] = "Äî íà÷àëà ñòðàíèöû"; + SlotName[ dutch ] = "Naar begin pagina"; + SlotName[ french ] = "Aller au début de la page"; + SlotName[ spanish ] = "Ir al comienzo de la página"; + SlotName[ italian ] = "All'inizio pagina"; + SlotName[ danish ] = "Til sidens begyndelse"; + SlotName[ swedish ] = "Till början av sidan"; + SlotName[ polish ] = "Na pocz¹tek strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfPage"; + SlotName[ japanese ] = "Íß°¼Þ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ê×"; + SlotName[ chinese_traditional ] = "Âà¨ì­¶­º"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Naar begin pagina"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ê×"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Sayfa baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PAGE_SEL +{ + SlotName = "Bis Seitenanfang selektieren"; + SlotName [ english ] = "Bis Seitenanfang selektieren"; + SlotName[ english_us ] = "Select to Page Begin"; + SlotName[ portuguese ] = "Seleccionar até início da página"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà ñòðàíèöû"; + SlotName[ dutch ] = "Tot aan paginabegin selecteren"; + SlotName[ french ] = "Sélect. jusqu'au début de la page"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo de la página"; + SlotName[ italian ] = "Seleziona fino all'inizio della pagina"; + SlotName[ danish ] = "Marker til sidens begyndelse"; + SlotName[ swedish ] = "Markera till början av sidan"; + SlotName[ polish ] = "Zaznacz do pocz¹tku strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfPageSel"; + SlotName[ japanese ] = "Íß°¼Þ‚ÌŽn‚߂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÒ³Ê×"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü­¶­º"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Tot aan paginabegin selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÒ³Ê×"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôçò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Sayfanýn baþlangýcýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PARA +{ + SlotName = "Zum Absatzanfang"; + SlotName [ english ] = "Zum Absatzanfang"; + SlotName[ english_us ] = "To Paragraph Begin"; + SlotName[ portuguese ] = "Ir para início do parágrafo"; + SlotName[ russian ] = "Äî íà÷àëà àáçàöà"; + SlotName[ dutch ] = "Naar begin alinea"; + SlotName[ french ] = "Au début du paragraphe"; + SlotName[ spanish ] = "Ir al comienzo del párrafo"; + SlotName[ italian ] = "All'inizio del paragrafo"; + SlotName[ danish ] = "Til afsnittets begyndelse"; + SlotName[ swedish ] = "Till början av stycket"; + SlotName[ polish ] = "Na pocz¹tek akapitu"; + SlotName[ portuguese_brazilian ] = "GoToStartOfPara"; + SlotName[ japanese ] = "’i—Ž‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½¶ÎÂäÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¬q¸¨­ººÝ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Naar begin alinea"; + SlotName[ chinese_simplified ] = "תµ½¶ÎÂäÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ô ½ÃÀÛÀ¸·Î"; + SlotName[ turkish ] = "Paragraf baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PARA_SEL +{ + SlotName = "Bis Absatzanfang selektieren"; + SlotName [ english ] = "Bis Absatzanfang selektieren"; + SlotName[ english_us ] = "Select to Paragraph Begin"; + SlotName[ portuguese ] = "Seleccionar até início do parágrafo"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà àáçàöà"; + SlotName[ dutch ] = "Tot aan begin alinea selecteren"; + SlotName[ french ] = "Sélect. jusqu'au début du paragraphe"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo del párrafo"; + SlotName[ italian ] = "Selezioni fini all'inizio del parametro"; + SlotName[ danish ] = "Marker til afsnittets begyndelse"; + SlotName[ swedish ] = "Markera till början av stycke"; + SlotName[ polish ] = "Zaznacz do pocz¹tku akapitu"; + SlotName[ portuguese_brazilian ] = "BeginParagraphSel"; + SlotName[ japanese ] = "’i—Ž‚ÌŽn‚߂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ¶ÎÂäÊ×¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¬q¸¨­ººÝ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Tot aan begin alinea selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁ¶ÎÂäÊ×¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "´Ü¶ô ½ÃÀÛ¿¡ ¼±ÅÃ"; + SlotName[ turkish ] = "Paragraf baþlangýcýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PREV_COLUMN +{ + SlotName = "Zum Anfang vorheriger Spalte"; + SlotName [ english ] = "Zum Anfang vorheriger Spalte"; + SlotName[ english_us ] = "To Begin of Previous Column"; + SlotName[ portuguese ] = "Ir para início da coluna anterior"; + SlotName[ russian ] = "Äî íà÷àëà ïðåäûäóùåãî ñòîëáöà"; + SlotName[ dutch ] = "Naar begin vorige kolom"; + SlotName[ french ] = "Au début de la colonne précédente"; + SlotName[ spanish ] = "Ir al comienzo de la columna anterior"; + SlotName[ italian ] = "All'inizio della colonna precedente"; + SlotName[ danish ] = "Til forrige kolonnes begyndelse"; + SlotName[ swedish ] = "Till början av föregående kolumn"; + SlotName[ polish ] = "Na pocz¹tek poprzedniej kolumny"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfPrevColumn"; + SlotName[ japanese ] = "‘O‚Ì—ñ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»ÁÐÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@Äæ­ººÝ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÚãæÏ ÇáÓÇÈÞ"; + SlotName[ dutch ] = "Naar begin vorige kolom"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»ÁÐÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôçò ðñïçãïýìåíçò óôÞëçò"; + SlotName[ korean ] = "ÀÌÀü ¿­ÀÇ ½ÃÀÛÀ¸·Î"; + SlotName[ turkish ] = "Önceki sütunun baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PREV_PAGE +{ + SlotName = "Zum Anfang vorheriger Seite"; + SlotName [ english ] = "Zum Anfang vorheriger Seite"; + SlotName[ english_us ] = "To Begin of Previous Page"; + SlotName[ portuguese ] = "Ir para início da página anterior"; + SlotName[ russian ] = "Äî íà÷àëà ïðåäûäóùåé ñòðàíèöû"; + SlotName[ dutch ] = "Naar begin vorige pagina"; + SlotName[ french ] = "Au début de la page précédente"; + SlotName[ spanish ] = "Ir al comienzo de página anterior"; + SlotName[ italian ] = "All'inizio della pagina precedente"; + SlotName[ danish ] = "Til forrige sides begyndelse"; + SlotName[ swedish ] = "Till början av föregående sida"; + SlotName[ polish ] = "Na pocz¹tek poprzedniej strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfPrevPage"; + SlotName[ japanese ] = "‘OÍß°¼Þ‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»Ò³Ê×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ì¤W¤@­¶­º"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Naar begin vorige pagina"; + SlotName[ chinese_simplified ] = "תµ½ÉÏÒ»Ò³Ê×¶Ë"; + SlotName[ greek ] = "Ðñïò áñ÷Þ ðñïçãïýìåíçò óåëßäáò"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁöÀÇ ½ÃÀÛÀ¸·Î"; + SlotName[ turkish ] = "Önceki sayfanýn baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_OF_PREV_PAGE_SEL +{ + SlotName = "Bis Anfang vorheriger Seite selektieren"; + SlotName [ english ] = "Bis Anfang vorheriger Seite selektieren"; + SlotName[ english_us ] = "Select to Begin of Previous Page"; + SlotName[ portuguese ] = "Seleccionar até início da página anterior"; + SlotName[ russian ] = "Âûäåëèòü äî íà÷àëà ïðåäûäóùåé ñòðàíèöû"; + SlotName[ dutch ] = "Tot begin vorige pagina selecteren"; + SlotName[ french ] = "Sélect. jusqu'au début de la page précédente"; + SlotName[ spanish ] = "Seleccionar hasta el comienzo de la página anterior"; + SlotName[ italian ] = "Seleziona fino all'inizio della pagina precedente"; + SlotName[ danish ] = "Marker til forrige sides begyndelse"; + SlotName[ swedish ] = "Markera till början av föregående sida"; + SlotName[ polish ] = "Zaznacz do pocz¹tku poprzedniej strony"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfPrevPageSel"; + SlotName[ japanese ] = "‘OÍß°¼Þ‚ÌŽn‚߂܂őI‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»Ò³Ê×¶Ë"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦Ü¤W¤@­¶­º"; + SlotName[ arabic ] = "ÊÍÏíÏ ÍÊì ÈÏÇíÉ ÇáÕÝÍÉ ÇáÓÇÈÞÉ"; + SlotName[ dutch ] = "Tot begin vorige pagina selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÖÁÉÏÒ»Ò³Ê×¶Ë"; + SlotName[ greek ] = "ÅðéëïãÞ Ýùò ôçí áñ÷Þ ôçò ðñïçãïýìåíçò óåëßäáò"; + SlotName[ korean ] = "ÀÌÀü ÆäÀÌÁöÀÇ ½ÃÀÛ ¼±ÅÃ"; + SlotName[ turkish ] = "Önceki sayfanýn baþlangýcýna kadar seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_START_TABLE +{ + SlotName = "Zum Tabellenanfang"; + SlotName [ english ] = "Zum Tabellenanfang"; + SlotName[ english_us ] = "To Table Begin"; + SlotName[ portuguese ] = "Ir para início da tabela"; + SlotName[ russian ] = "Äî íà÷àëà òàáëèöû"; + SlotName[ dutch ] = "Naar tabelbegin"; + SlotName[ french ] = "Au début du tableau"; + SlotName[ spanish ] = "Ir al comienzo de la tabla"; + SlotName[ italian ] = "All'inizio della tabella"; + SlotName[ danish ] = "Til tabellens begyndelse"; + SlotName[ swedish ] = "Till början av tabell"; + SlotName[ polish ] = "Na pocz¹tek tabeli"; + SlotName[ portuguese_brazilian ] = "GoToBeginOfTable"; + SlotName[ japanese ] = "•\\‚ÌŽn‚ß‚Ö"; + SlotName[ chinese_simplified ] = "תµ½±í¸ñÊ×¶Ë"; + SlotName[ chinese_traditional ] = "Âà¨ìªí®æ­ººÝ"; + SlotName[ arabic ] = "Åáì ÈÏÇíÉ ÇáÌÏæá"; + SlotName[ dutch ] = "Naar tabelbegin"; + SlotName[ chinese_simplified ] = "תµ½±í¸ñÊ×¶Ë"; + SlotName[ greek ] = "Ðñïò ôçí áñ÷Þ ôïõ ðßíáêá"; + SlotName[ korean ] = "Ç¥ ½ÃÀÛ¿¡"; + SlotName[ turkish ] = "Tablo baþlangýcý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_STAT_HYPERLINKS +{ + SlotName = "Hyperlinks aktiv"; + SlotName [ english ] = "Hyperlinks aktiv"; + SlotName[ english_us ] = "Hyperlinks Active"; + SlotName[ portuguese ] = "Activar hiperligações"; + SlotName[ russian ] = "Àêòèâíûå ãèïåðññûëêè "; + SlotName[ dutch ] = "Hyperlinks actief"; + SlotName[ french ] = "Activer hyperliens"; + SlotName[ spanish ] = "Activar Hiperenlaces"; + SlotName[ italian ] = "Hyperlink attivi"; + SlotName[ danish ] = "Hyperlinks aktive"; + SlotName[ swedish ] = "Hyperlänkar aktiva"; + SlotName[ polish ] = "Aktywne hiper³¹cza"; + SlotName[ portuguese_brazilian ] = "ExecHyperlinks"; + SlotName[ japanese ] = "ʲÊß°ØÝ¸ µÝ"; + SlotName[ chinese_simplified ] = "¼¤»î³¬Á´½Ó"; + SlotName[ chinese_traditional ] = "¿E¬¡¶W³sµ²"; + SlotName[ arabic ] = "ÇÑÊÈÇØÇÊ ÊÔÚÈíÉ äÔØÉ"; + SlotName[ dutch ] = "Hyperlinks actief"; + SlotName[ chinese_simplified ] = "¼¤»î³¬Á´½Ó"; + SlotName[ greek ] = "Åíåñãïðïßçóç õðåñ-óýíäåóçò"; + SlotName[ korean ] = "ÇÏÀÌÆÛ ¸µÅ© Ȱ¼ºÈ­"; + SlotName[ turkish ] = "Hyperlink'ler etkin"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_STAT_PAGE +{ + SlotName = "Seitennummer"; + SlotName [ english ] = "Seitennummer"; + SlotName[ english_us ] = "Page Number"; + SlotName[ portuguese ] = "Número de página"; + SlotName[ russian ] = "Íîìåð ñòðàíèöû"; + SlotName[ dutch ] = "Paginanummer"; + SlotName[ french ] = "Numéro de page"; + SlotName[ spanish ] = "Número de página"; + SlotName[ italian ] = "Numero di pagina"; + SlotName[ danish ] = "Sidetal"; + SlotName[ swedish ] = "Sidnummer"; + SlotName[ polish ] = "Numer strony"; + SlotName[ portuguese_brazilian ] = "StatePageNumber"; + SlotName[ japanese ] = "Íß°¼Þ”Ô�†"; + SlotName[ chinese_simplified ] = "Ò³Âë"; + SlotName[ chinese_traditional ] = "­¶­±¸¹½X"; + SlotName[ arabic ] = "ÑÞã ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Paginanummer"; + SlotName[ chinese_simplified ] = "Ò³Âë"; + SlotName[ greek ] = "Áñéèìüò óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö ¹øÈ£"; + SlotName[ turkish ] = "Sayfa numarasý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_STAT_SELMODE +{ + SlotName = "Selektionsmodus"; + SlotName [ english ] = "Selektionsmodus"; + SlotName[ english_us ] = "Selection Mode"; + SlotName[ portuguese ] = "Modo de selecção"; + SlotName[ russian ] = "Ðåæèì âûäåëåíèÿ"; + SlotName[ dutch ] = "Selectiemodus"; + SlotName[ french ] = "Mode Sélection"; + SlotName[ spanish ] = "Modo Selección"; + SlotName[ italian ] = "Modo selezione"; + SlotName[ danish ] = "Udvalgsmodus"; + SlotName[ swedish ] = "Markeringsläge"; + SlotName[ polish ] = "Tryb selekcji"; + SlotName[ portuguese_brazilian ] = "SelectionMode"; + SlotName[ japanese ] = "‘I‘ðÓ°ÄÞ"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñģʽ"; + SlotName[ chinese_traditional ] = "¿ï¨ú¼Ò¦¡"; + SlotName[ arabic ] = "æÖÚ ÇáÊÍÏíÏ"; + SlotName[ dutch ] = "Selectiemodus"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñģʽ"; + SlotName[ greek ] = "ÊáôÜóôáóç åðéëïãÞò"; + SlotName[ korean ] = "¼±Åà ¸ðµå"; + SlotName[ turkish ] = "Seçim kipi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_STAT_TEMPLATE +{ + SlotName = "Seitenvorlage"; + SlotName [ english ] = "Seitenvorlage"; + SlotName[ english_us ] = "Page Style"; + SlotName[ portuguese ] = "Estilo de página"; + SlotName[ russian ] = "Ñòèëü ñòðàíèöû"; + SlotName[ dutch ] = "Pagina-opmaakprofiel"; + SlotName[ french ] = "Style de page"; + SlotName[ spanish ] = "Estilo de página"; + SlotName[ italian ] = "Modello di pagina"; + SlotName[ danish ] = "Sidetypografi"; + SlotName[ swedish ] = "Sidformatmall"; + SlotName[ polish ] = "Styl strony"; + SlotName[ portuguese_brazilian ] = "PageStyleName"; + SlotName[ japanese ] = "Íß°¼Þ½À²Ù"; + SlotName[ chinese_simplified ] = "Ò³ÃæÑùʽ"; + SlotName[ chinese_traditional ] = "­¶­±¼Ë¦¡"; + SlotName[ arabic ] = "äãØ ÕÝÍÉ"; + SlotName[ dutch ] = "Pagina-opmaakprofiel"; + SlotName[ chinese_simplified ] = "Ò³ÃæÑùʽ"; + SlotName[ greek ] = "Ðñüôõðï óåëßäáò"; + SlotName[ korean ] = "ÆäÀÌÁö À¯Çü"; + SlotName[ turkish ] = "Sayfa þablonu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_ADJUST_CELLS +{ + SlotName = "Optimale Spaltenbreite"; + SlotName [ english ] = "Optimale Spaltenbreite"; + SlotName[ english_us ] = "Optimal Column Width"; + SlotName[ portuguese ] = "Largura da coluna"; + SlotName[ russian ] = "Îïòèìàëüíàÿ øèðèíà ñòîëáöà"; + SlotName[ dutch ] = "Optimale kolombreedte"; + SlotName[ french ] = "Largeur de colonne optimale"; + SlotName[ spanish ] = "Ancho óptimo de columnas"; + SlotName[ italian ] = "Larghezza colonna ottimale"; + SlotName[ danish ] = "Optimal kolonnebredde"; + SlotName[ swedish ] = "Optimal kolumnbredd"; + SlotName[ polish ] = "Optymalna szerokoœæ kolumn"; + SlotName[ portuguese_brazilian ] = "TableCellsAdjust"; + SlotName[ japanese ] = "�Å“K‚È—ñ‚Ì•�"; + SlotName[ chinese_simplified ] = "×î¼ÑÁпí"; + SlotName[ chinese_traditional ] = "³ÌÓìÄæ¼e"; + SlotName[ arabic ] = "ÇáÚÑÖ ÇáÃãËá ááÚãæÏ"; + SlotName[ dutch ] = "Optimale kolombreedte"; + SlotName[ chinese_simplified ] = "×î¼ÑÁпí"; + SlotName[ greek ] = "ÂÝëôéóôï ðëÜôïò óôÞëçò"; + SlotName[ korean ] = "ÃÖÀûÀÇ ¿­ ³Êºñ"; + SlotName[ turkish ] = "En uygun sütun geniþliði"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_AUTOSUM +{ + SlotName = "Summe"; + SlotName [ english ] = "Sum"; + SlotName[ english_us ] = "Sum"; + SlotName[ portuguese ] = "Soma"; + SlotName[ russian ] = "Sum"; + SlotName[ greek ] = "¢èñïéóìá"; + SlotName[ dutch ] = "Som"; + SlotName[ french ] = "Somme"; + SlotName[ spanish ] = "Sum"; + SlotName[ italian ] = "Sum"; + SlotName[ danish ] = "Sum"; + SlotName[ swedish ] = "Summa"; + SlotName[ polish ] = "Suma"; + SlotName[ portuguese_brazilian ] = "Sum"; + SlotName[ japanese ] = "µ°Ä Sum"; + SlotName[ korean ] = "Sum"; + SlotName[ chinese_simplified ] = "×ܼÆ"; + SlotName[ chinese_traditional ] = "¤p­p"; + SlotName[ turkish ] = "Sum"; + SlotName[ arabic ] = "ÇáãÌãæÚ"; +}; +SfxSlotInfo FN_TABLE_BALANCE_CELLS +{ + SlotName = "Spalten gleichmäßig verteilen"; + SlotName [ english ] = "Spalten gleichmäßig verteilen"; + SlotName[ english_us ] = "Space Columns Equally"; + SlotName[ portuguese ] = "Ordenar colunas"; + SlotName[ russian ] = "Ðàñïðåäåëèòü ñòîëáöû ðàâíîìåðíî"; + SlotName[ dutch ] = "Kolommen gelijkmatig verdelen"; + SlotName[ french ] = "Espace équilibré entre les colonnes"; + SlotName[ spanish ] = "Ordenar columnas"; + SlotName[ italian ] = "Distribuisci le colonne uniformemente"; + SlotName[ danish ] = "Fordel kolonner jævnt"; + SlotName[ swedish ] = "Fördela kolumnerna jämnt"; + SlotName[ polish ] = "Roz³ó¿ równomiernie kolumny"; + SlotName[ portuguese_brazilian ] = "ArrangeColumns"; + SlotName[ japanese ] = "—ñ‚̋ϓ™•ªŠ„"; + SlotName[ chinese_simplified ] = "ƽ¾ù·ÖÅäÁпí"; + SlotName[ chinese_traditional ] = "¹ïºÙ½Õ¾ãÄæ¼e"; + SlotName[ arabic ] = "ÊæÒíÚ ÇáÃÚãÏÉ ÈÇáÊÓÇæí"; + SlotName[ dutch ] = "Kolommen gelijkmatig verdelen"; + SlotName[ chinese_simplified ] = "ƽ¾ù·ÖÅäÁпí"; + SlotName[ greek ] = "ºóç êáôáíïìÞ óôçëþí"; + SlotName[ korean ] = "¿­ °£°Ý µ¿ÀÏÇϰÔ"; + SlotName[ turkish ] = "Sütunlarý geniþliklerini eþitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_BALANCE_ROWS +{ + SlotName = "Zeilen gleichmäßig verteilen"; + SlotName [ english ] = "Zeilen gleichmäßig verteilen"; + SlotName[ english_us ] = "Space Rows Equally "; + SlotName[ portuguese ] = "Ordenar linhas"; + SlotName[ russian ] = "Ðàñïðåäåëèòü ñòðîêè ðàâíîìåðíî"; + SlotName[ dutch ] = "Rijen gelijkmatig verdelen"; + SlotName[ french ] = "Espace équilibré entre les lignes"; + SlotName[ spanish ] = "Ordenar filas"; + SlotName[ italian ] = "Distribuisci le righe uniformemente"; + SlotName[ danish ] = "Fordel rækker jævnt"; + SlotName[ swedish ] = "Fördela raderna jämnt"; + SlotName[ polish ] = "Roz³ó¿ równomiernie wiersze"; + SlotName[ portuguese_brazilian ] = "ArrangeRows"; + SlotName[ japanese ] = "�s‚̋ϓ™•ªŠ„"; + SlotName[ chinese_simplified ] = "ƽ¾ù·ÖÅäÐиß"; + SlotName[ chinese_traditional ] = "¹ïºÙ¦a½Õ¾ã¦æ°ª"; + SlotName[ arabic ] = "ÊæÒíÚ ÇáÕÝæÝ ÈÇáÊÓÇæí"; + SlotName[ dutch ] = "Rijen gelijkmatig verdelen"; + SlotName[ chinese_simplified ] = "ƽ¾ù·ÖÅäÐиß"; + SlotName[ greek ] = "ºóç êáôáíïìÞ ãñáììþí"; + SlotName[ korean ] = "Çà °£°Ý µ¿ÀÏÇϰÔ"; + SlotName[ turkish ] = "Satýr yüksekliklerini eþitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_DELETE_COL +{ + SlotName = "Spalte löschen"; + SlotName [ english ] = "Spalte löschen"; + SlotName[ english_us ] = "Delete Column"; + SlotName[ portuguese ] = "Eliminar coluna"; + SlotName[ russian ] = "Óäàëèòü ñòîëáåö"; + SlotName[ dutch ] = "Kolom wissen"; + SlotName[ french ] = "Supprimer la colonne"; + SlotName[ spanish ] = "Eliminar columna"; + SlotName[ italian ] = "Elimina colonna"; + SlotName[ danish ] = "Slet kolonne"; + SlotName[ swedish ] = "Radera kolumn"; + SlotName[ polish ] = "Usuñ kolumnê"; + SlotName[ portuguese_brazilian ] = "TableColumnsDelete"; + SlotName[ japanese ] = "—ñ‚Ì�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÁÐ"; + SlotName[ chinese_traditional ] = "§R°£Äæ"; + SlotName[ arabic ] = "ÍÐÝ ÚãæÏ"; + SlotName[ dutch ] = "Kolom wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÁÐ"; + SlotName[ greek ] = "ÄéáãñáöÞ óôÞëçò"; + SlotName[ korean ] = "¿­ »èÁ¦"; + SlotName[ turkish ] = "Sütunu sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_DELETE_ROW +{ + SlotName = "Zeile löschen"; + SlotName [ english ] = "Zeile löschen"; + SlotName[ english_us ] = "Delete Row"; + SlotName[ portuguese ] = "Eliminar linha"; + SlotName[ russian ] = "Óäàëèòü ñòðîêó"; + SlotName[ dutch ] = "Rij wissen"; + SlotName[ french ] = "Supprimer la ligne"; + SlotName[ spanish ] = "Eliminar fila"; + SlotName[ italian ] = "Elimina riga"; + SlotName[ danish ] = "Slet række"; + SlotName[ swedish ] = "Radera rad"; + SlotName[ polish ] = "Usuñ wiersz"; + SlotName[ portuguese_brazilian ] = "TableRowDelete"; + SlotName[ japanese ] = "�s‚Ì�í�œ"; + SlotName[ chinese_simplified ] = "ɾ³ýÐÐ"; + SlotName[ chinese_traditional ] = "§R°£¦æ"; + SlotName[ arabic ] = "ÍÐÝ ÕÝ"; + SlotName[ dutch ] = "Rij wissen"; + SlotName[ chinese_simplified ] = "ɾ³ýÐÐ"; + SlotName[ greek ] = "ÄéáãñáöÞ ãñáììÞò"; + SlotName[ korean ] = "Çà »èÁ¦"; + SlotName[ turkish ] = "Satýrý sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_INSERT_COL +{ + SlotName = "Spalte einfügen"; + SlotName [ english ] = "Spalte einfügen"; + SlotName[ english_us ] = "Insert Columns"; + SlotName[ portuguese ] = "Inserir coluna"; + SlotName[ russian ] = "Âñòàâèòü ñòîëáåö"; + SlotName[ dutch ] = "Kolom invoegen"; + SlotName[ french ] = "Insérer une colonne"; + SlotName[ spanish ] = "Insertar columna"; + SlotName[ italian ] = "Inserisci colonna"; + SlotName[ danish ] = "Indsæt kolonne"; + SlotName[ swedish ] = "Infoga kolumn"; + SlotName[ polish ] = "Wstaw kolumnê"; + SlotName[ portuguese_brazilian ] = "TableColumnsInsert"; + SlotName[ japanese ] = "—ñ‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÁÐ"; + SlotName[ chinese_traditional ] = "´¡¤JÄæ"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÚãæÏ"; + SlotName[ dutch ] = "Kolom invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÁÐ"; + SlotName[ greek ] = "ÅéóáãùãÞ óôÞëçò"; + SlotName[ korean ] = "¿­ »ðÀÔ"; + SlotName[ turkish ] = "Sütun ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_INSERT_ROW +{ + SlotName = "Zeile einfügen"; + SlotName [ english ] = "Zeile einfügen"; + SlotName[ english_us ] = "Insert Rows"; + SlotName[ portuguese ] = "Inserir linha"; + SlotName[ russian ] = "Âñòàâèòü ñòðîêó"; + SlotName[ dutch ] = "Rij invoegen"; + SlotName[ french ] = "Insérer une ligne"; + SlotName[ spanish ] = "Insertar fila"; + SlotName[ italian ] = "Inserisci righe"; + SlotName[ danish ] = "Indsæt række"; + SlotName[ swedish ] = "Infoga rad"; + SlotName[ polish ] = "Wstaw wiersz"; + SlotName[ portuguese_brazilian ] = "TableRowsInsert"; + SlotName[ japanese ] = "�s‚Ì‘}“ü"; + SlotName[ chinese_simplified ] = "²åÈëÐÐ"; + SlotName[ chinese_traditional ] = "´¡¤J¦C"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÕÝ"; + SlotName[ dutch ] = "Rij invoegen"; + SlotName[ chinese_simplified ] = "²åÈëÐÐ"; + SlotName[ greek ] = "ÅéóáãùãÞ ãñáììÞò"; + SlotName[ korean ] = "Çà»ðÀÔ"; + SlotName[ turkish ] = "Satýr ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_MERGE_CELLS +{ + SlotName = "Zellen verbinden"; + SlotName [ english ] = "Zellen verbinden"; + SlotName[ english_us ] = "Merge Cells"; + SlotName[ portuguese ] = "Unir células"; + SlotName[ russian ] = "Îáúåäèíèòü ÿ÷åéêè"; + SlotName[ dutch ] = "Cellen verbinden"; + SlotName[ french ] = "Fusionner les cellules "; + SlotName[ spanish ] = "Unir celdas"; + SlotName[ italian ] = "Collega celle"; + SlotName[ danish ] = "Flet celler"; + SlotName[ swedish ] = "Förbind celler"; + SlotName[ polish ] = "Scal komórki"; + SlotName[ portuguese_brazilian ] = "TableCellsMerge"; + SlotName[ japanese ] = "¾Ù‚ÌŒ‹�‡"; + SlotName[ chinese_simplified ] = "ºÏ²¢µ¥Ôª¸ñ"; + SlotName[ chinese_traditional ] = "¦X¨ÖÀx¦s®æ"; + SlotName[ arabic ] = "ÏãÌ ÇáÎáÇíÇ"; + SlotName[ dutch ] = "Cellen verbinden"; + SlotName[ chinese_simplified ] = "ºÏ²¢µ¥Ôª¸ñ"; + SlotName[ greek ] = "¸íùóç êåëéþí"; + SlotName[ korean ] = "¼¿ º´ÇÕ"; + SlotName[ turkish ] = "Hücreleri birleþtir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_MERGE_TABLE +{ + SlotName = "Tabelle zusammenfassen"; + SlotName [ english ] = "Tabelle zusammenfassen"; + SlotName[ english_us ] = "Merge Table"; + SlotName[ portuguese ] = "Unir tabela"; + SlotName[ russian ] = "Îáúåäèíèòü òàáëèöó"; + SlotName[ dutch ] = "Tabel samenvatten"; + SlotName[ french ] = "Fusionner le tableau"; + SlotName[ spanish ] = "Unir tabla"; + SlotName[ italian ] = "Unisci tabella"; + SlotName[ danish ] = "Flet tabeller"; + SlotName[ swedish ] = "Sammanfatta tabell"; + SlotName[ polish ] = "Scal tabelê"; + SlotName[ portuguese_brazilian ] = "MergeTable"; + SlotName[ japanese ] = "•\\‚ÌŒ‹�‡"; + SlotName[ chinese_simplified ] = "ºÏ²¢±í¸ñ"; + SlotName[ chinese_traditional ] = "¦X¨Öªí®æ"; + SlotName[ arabic ] = "ÏãÌ ÌÏæá"; + SlotName[ dutch ] = "Tabel samenvatten"; + SlotName[ chinese_simplified ] = "ºÏ²¢±í¸ñ"; + SlotName[ greek ] = "Óõã÷þíåõóç ðéíÜêùí"; + SlotName[ korean ] = "Ç¥ º´ÇÕ"; + SlotName[ turkish ] = "Tabloyu birleþtir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_MODE_FIX +{ + SlotName = "Tabelle: fix"; + SlotName [ english ] = "Tabelle: fix"; + SlotName[ english_us ] = "Table: Fixed"; + SlotName[ portuguese ] = "Tabela: fixa"; + SlotName[ russian ] = "Òàáëèöà : ôèêñèðîâàíàÿ"; + SlotName[ dutch ] = "Tabel: vast"; + SlotName[ french ] = "Tableau : fixe"; + SlotName[ spanish ] = "Tabla: fija"; + SlotName[ italian ] = "Tabella: fissa"; + SlotName[ danish ] = "Tabel: fast"; + SlotName[ swedish ] = "Tabell: fast"; + SlotName[ polish ] = "Tabela : sta³a"; + SlotName[ portuguese_brazilian ] = "TableModeFix"; + SlotName[ japanese ] = "•\\:ŒÅ’è"; + SlotName[ chinese_simplified ] = "±í¸ñ¹Ì¶¨"; + SlotName[ chinese_traditional ] = "ªí®æ©T©w"; + SlotName[ arabic ] = "ÌÏæá: ËÇÈÊ"; + SlotName[ dutch ] = "Tabel: vast"; + SlotName[ chinese_simplified ] = "±í¸ñ¹Ì¶¨"; + SlotName[ greek ] = "Ðßíáêáò: Óôáèåñüò"; + SlotName[ korean ] = "Ç¥:°íÁ¤µÊ"; + SlotName[ turkish ] = "Tablo: Sabit"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_MODE_FIX_PROP +{ + SlotName = "Tabelle: fix, proportional"; + SlotName [ english ] = "Tabelle: fix, proportional"; + SlotName[ english_us ] = "Table: Fixed, Proportional"; + SlotName[ portuguese ] = "Tabela: fixa, proporcional"; + SlotName[ russian ] = "Òàáëèöà: ôèêñèðîâàííàÿ , ïðîïîðöèîíàëüíàÿ"; + SlotName[ dutch ] = "Tabel; vast, proportioneel"; + SlotName[ french ] = "Tableau : fixe, proportionnel"; + SlotName[ spanish ] = "Tabla: fija, proporcional"; + SlotName[ italian ] = "Tabella: fissa, proporzionale"; + SlotName[ danish ] = "Tabel: fast, proportional"; + SlotName[ swedish ] = "Tabell: fast, proportionell"; + SlotName[ polish ] = "Tabela : sta³a, proporcjonalna"; + SlotName[ portuguese_brazilian ] = "TableModeFixProp"; + SlotName[ japanese ] = "•\\:ŒÅ’è�A”ä—á"; + SlotName[ chinese_simplified ] = "±í¸ñ¹Ì¶¨³É±ÈÀý"; + SlotName[ chinese_traditional ] = "ªí®æ©T©w¦¨¤ñ¨Ò"; + SlotName[ arabic ] = "ÌÏæá: ËÇÈÊ¡ ãÊäÇÓÈ"; + SlotName[ dutch ] = "Tabel; vast, proportioneel"; + SlotName[ chinese_simplified ] = "±í¸ñ¹Ì¶¨³É±ÈÀý"; + SlotName[ greek ] = "Ðßíáêáò: Óôáèåñüò, áíáëïãéêüò"; + SlotName[ korean ] = "Ç¥: °íÁ¤,ºñ·Ê"; + SlotName[ turkish ] = "Tablo: Sabit, orantýlý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_MODE_VARIABLE +{ + SlotName = "Tabelle: variabel"; + SlotName [ english ] = "Tabelle: variabel"; + SlotName[ english_us ] = "Table: Variable"; + SlotName[ portuguese ] = "Tabela: variável"; + SlotName[ russian ] = "Òàáëèöà: èçìåíÿåìàÿ"; + SlotName[ dutch ] = "Tabel: variabel"; + SlotName[ french ] = "Tableau : variable"; + SlotName[ spanish ] = "Tabla: variable"; + SlotName[ italian ] = "Tabella: variabile"; + SlotName[ danish ] = "Tabel: variabel"; + SlotName[ swedish ] = "Tabell: variabel"; + SlotName[ polish ] = "Tabela: zmienna"; + SlotName[ portuguese_brazilian ] = "TableModeVariable"; + SlotName[ japanese ] = "•\\:•Ï�”"; + SlotName[ chinese_simplified ] = "±í¸ñ¿É±ä"; + SlotName[ chinese_traditional ] = "ªí®æ¥iÅÜ"; + SlotName[ arabic ] = "ÌÏæá: ãÊÛíÑ"; + SlotName[ dutch ] = "Tabel: variabel"; + SlotName[ chinese_simplified ] = "±í¸ñ¿É±ä"; + SlotName[ greek ] = "Ðßíáêáò: Ìåôáâëçôüò"; + SlotName[ korean ] = "Ç¥:º¯¼ö"; + SlotName[ turkish ] = "Tablo: Deðiþken"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_OPTIMAL_HEIGHT +{ + SlotName = "Optimale Zeilenhöhe"; + SlotName [ english ] = "Optimale Zeilenhöhe"; + SlotName[ english_us ] = "Optimal Row Height"; + SlotName[ portuguese ] = "Altura da linha"; + SlotName[ russian ] = "Îïòèìàëüíàÿ âûñîòà ñòðîêè"; + SlotName[ dutch ] = "Optimale rijhoogte"; + SlotName[ french ] = "Hauteur de ligne optimale"; + SlotName[ spanish ] = "Altura óptima de filas"; + SlotName[ italian ] = "Altezza riga ottimale"; + SlotName[ danish ] = "Optimal rækkehøjde"; + SlotName[ swedish ] = "Optimal radhöjd"; + SlotName[ polish ] = "Optymalna wysokoœæ wierszy"; + SlotName[ portuguese_brazilian ] = "SetOptimalRowHeight"; + SlotName[ japanese ] = "�Å“K‚È�s‚Ì�‚‚³"; + SlotName[ chinese_simplified ] = "×î¼ÑÐиß"; + SlotName[ chinese_traditional ] = "³ÌÓìÄæ°ª"; + SlotName[ arabic ] = "ÇáÇÑÊÝÇÚ ÇáÃãËá ááÕÝ"; + SlotName[ dutch ] = "Optimale rijhoogte"; + SlotName[ chinese_simplified ] = "×î¼ÑÐиß"; + SlotName[ greek ] = "ÂÝëôéóôï ýøïò ãñáììÞò"; + SlotName[ korean ] = "ÃÖÀûÈ­µÈ Çà ³ôÀÌ"; + SlotName[ turkish ] = "En uygun satýr yüksekliði"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SELECT_ALL +{ + SlotName = "Tabelle selektieren"; + SlotName [ english ] = "Tabelle selektieren"; + SlotName[ english_us ] = "Select Table"; + SlotName[ portuguese ] = "Seleccionar tabela"; + SlotName[ russian ] = "Âûäåëèòü òàáëèöó"; + SlotName[ dutch ] = "Tabel selecteren"; + SlotName[ french ] = "Sélectionner tableau"; + SlotName[ spanish ] = "Seleccionar tabla"; + SlotName[ italian ] = "Seleziona tabella"; + SlotName[ danish ] = "Marker tabel"; + SlotName[ swedish ] = "Markera tabell"; + SlotName[ polish ] = "Zaznacz tabelê"; + SlotName[ portuguese_brazilian ] = "TableSelect"; + SlotName[ japanese ] = "•\\‚Ì‘I‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñ±í¸ñ"; + SlotName[ chinese_traditional ] = "¿ï¨úªí®æ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÌÏæá"; + SlotName[ dutch ] = "Tabel selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡Ôñ±í¸ñ"; + SlotName[ greek ] = "ÅðéëïãÞ ðßíáêá"; + SlotName[ korean ] = "Ç¥ ¼±ÅÃ"; + SlotName[ turkish ] = "Tablo seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SELECT_COL +{ + SlotName = "Spalte selektieren"; + SlotName [ english ] = "Spalte selektieren"; + SlotName[ english_us ] = "Select Column"; + SlotName[ portuguese ] = "Seleccionar coluna"; + SlotName[ russian ] = "Âûäåëèòü ñòîëáåö"; + SlotName[ dutch ] = "Kolom selecteren"; + SlotName[ french ] = "Sélectionner colonne"; + SlotName[ spanish ] = "Seleccionar columna"; + SlotName[ italian ] = "Seleziona colonna"; + SlotName[ danish ] = "Marker kolonne"; + SlotName[ swedish ] = "Markera kolumn"; + SlotName[ polish ] = "Zaznacz tabelê"; + SlotName[ portuguese_brazilian ] = "TableColumnSelect"; + SlotName[ japanese ] = "—ñ‚Ì‘I‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÁÐ"; + SlotName[ chinese_traditional ] = "¿ï¨úÄæ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÚãæÏ"; + SlotName[ dutch ] = "Kolom selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÁÐ"; + SlotName[ greek ] = "ÅðéëïãÞ óôÞëçò"; + SlotName[ korean ] = "¿­ ¼±ÅÃ"; + SlotName[ turkish ] = "Sütun seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SELECT_ROW +{ + SlotName = "Zeile selektieren"; + SlotName [ english ] = "Zeile selektieren"; + SlotName[ english_us ] = "Select Rows"; + SlotName[ portuguese ] = "Seleccionar linha"; + SlotName[ russian ] = "Âûäåëèòü ñòðîêó"; + SlotName[ dutch ] = "Rij selecteren"; + SlotName[ french ] = "Sélectionner ligne"; + SlotName[ spanish ] = "Selecionar fila"; + SlotName[ italian ] = "Seleziona riga"; + SlotName[ danish ] = "Marker række"; + SlotName[ swedish ] = "Markera rad"; + SlotName[ polish ] = "Wybierz wiersz"; + SlotName[ portuguese_brazilian ] = "TableRowSelect"; + SlotName[ japanese ] = "�s‚Ì‘I‘ð"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÐÐ"; + SlotName[ chinese_traditional ] = "¿ï¨ú¦æ"; + SlotName[ arabic ] = "ÊÍÏíÏ ÕÝ"; + SlotName[ dutch ] = "Rij selecteren"; + SlotName[ chinese_simplified ] = "Ñ¡ÔñÐÐ"; + SlotName[ greek ] = "ÅðéëïãÞ ãñáììÞò"; + SlotName[ korean ] = "Çà ¼±ÅÃ"; + SlotName[ turkish ] = "Satýr seç"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SET_READ_ONLY_CELLS +{ + SlotName = "Zelle schützen"; + SlotName [ english ] = "Zelle schützen"; + SlotName[ english_us ] = "Protect Cells"; + SlotName[ portuguese ] = "Proteger célula"; + SlotName[ russian ] = "Çàùèòà ÿ÷åéêè"; + SlotName[ dutch ] = "Cel beveiligen"; + SlotName[ french ] = "Protection"; + SlotName[ spanish ] = "Proteger celda"; + SlotName[ italian ] = "Proteggi cella"; + SlotName[ danish ] = "Beskyt celle"; + SlotName[ swedish ] = "Skydda cell"; + SlotName[ polish ] = "Chroñ komórkê"; + SlotName[ portuguese_brazilian ] = "SetTableCellsRead-only"; + SlotName[ japanese ] = "¾Ù‚̕یì"; + SlotName[ chinese_simplified ] = "µ¥Ôª¸ñ±£»¤"; + SlotName[ chinese_traditional ] = "«OÅ@Àx¦s®æ"; + SlotName[ arabic ] = "ÍãÇíÉ ÇáÎáíÉ"; + SlotName[ dutch ] = "Cel beveiligen"; + SlotName[ chinese_simplified ] = "µ¥Ôª¸ñ±£»¤"; + SlotName[ greek ] = "Ðñïóôáóßá êåëéïý"; + SlotName[ korean ] = "¼¿ º¸È£"; + SlotName[ turkish ] = "Hücreyi koru"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SET_ROW_HEIGHT +{ + SlotName = "Zeilenhöhe"; + SlotName [ english ] = "Zeilenhöhe"; + SlotName[ english_us ] = "Row Height"; + SlotName[ portuguese ] = "Altura da linha"; + SlotName[ russian ] = "Âûñîòà ñòðîêè"; + SlotName[ dutch ] = "Rijhoogte"; + SlotName[ french ] = "Hauteur de ligne"; + SlotName[ spanish ] = "Altura de fila"; + SlotName[ italian ] = "Altezza riga"; + SlotName[ danish ] = "Rækkehøjde"; + SlotName[ swedish ] = "Radhöjd"; + SlotName[ polish ] = "Wysokoœæ wierszy"; + SlotName[ portuguese_brazilian ] = "SetTableRowHeight"; + SlotName[ japanese ] = "�s‚Ì�‚‚³"; + SlotName[ chinese_simplified ] = "Ðиß"; + SlotName[ chinese_traditional ] = "¦æ°ª"; + SlotName[ arabic ] = "ÇÑÊÝÇÚ ÇáÕÝ"; + SlotName[ dutch ] = "Rijhoogte"; + SlotName[ chinese_simplified ] = "Ðиß"; + SlotName[ greek ] = "¾øïò ãñáììÞò"; + SlotName[ korean ] = "Çà ³ôÀÌ"; + SlotName[ turkish ] = "Satýr yüksekliði"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SPLIT_CELLS +{ + SlotName = "Zelle teilen"; + SlotName [ english ] = "Zelle teilen"; + SlotName[ english_us ] = "Split Cells"; + SlotName[ portuguese ] = "Dividir células"; + SlotName[ russian ] = "Ðàçáèòü ÿ÷åéêè"; + SlotName[ dutch ] = "Cel splitsen"; + SlotName[ french ] = "Scinder la celulle"; + SlotName[ spanish ] = "Dividir celdas"; + SlotName[ italian ] = "Dividi celle"; + SlotName[ danish ] = "Opdel celle"; + SlotName[ swedish ] = "Dela cell"; + SlotName[ polish ] = "Podziel komórkê"; + SlotName[ portuguese_brazilian ] = "TableCellSplit"; + SlotName[ japanese ] = "¾Ù‚Ì•ªŠ„"; + SlotName[ chinese_simplified ] = "·Ö¸ôµ¥Ôª¸ñ"; + SlotName[ chinese_traditional ] = "¤À¶}Àx¦s®æ"; + SlotName[ arabic ] = "ÊÞÓíã ÇáÎáíÉ"; + SlotName[ dutch ] = "Cel splitsen"; + SlotName[ chinese_simplified ] = "·Ö¸ôµ¥Ôª¸ñ"; + SlotName[ greek ] = "Äéáßñåóç êåëéïý"; + SlotName[ korean ] = "¼¿ ³ª´©±â"; + SlotName[ turkish ] = "Hücreyi böl"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_SPLIT_TABLE +{ + SlotName = "Tabelle auftrennen"; + SlotName [ english ] = "Tabelle auftrennen"; + SlotName[ english_us ] = "Split Table"; + SlotName[ portuguese ] = "Dividir tabela"; + SlotName[ russian ] = "Ðàçáèòü òàáëèöó"; + SlotName[ dutch ] = "Tabel splitsen"; + SlotName[ french ] = "Scinder le tableau"; + SlotName[ spanish ] = "Dividir tabla"; + SlotName[ italian ] = "Separa tabella"; + SlotName[ danish ] = "Opdel tabel"; + SlotName[ swedish ] = "Dela tabell"; + SlotName[ polish ] = "Rozdziel tabelê"; + SlotName[ portuguese_brazilian ] = "SplitTable"; + SlotName[ japanese ] = "•\\‚Ì•ªŠ„"; + SlotName[ chinese_simplified ] = "·Ö¸ô±í¸ñ"; + SlotName[ chinese_traditional ] = "¤À¶}ªí®æ"; + SlotName[ arabic ] = "ÝÕá ÇáÌÏæá"; + SlotName[ dutch ] = "Tabel splitsen"; + SlotName[ chinese_simplified ] = "·Ö¸ô±í¸ñ"; + SlotName[ greek ] = "ÄéÜóðáóç ðßíáêá"; + SlotName[ korean ] = "Ç¥ ³ª´©±â"; + SlotName[ turkish ] = "Tabloyu böl"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_UNSET_READ_ONLY +{ + SlotName = "Tabellenschutz aufheben"; + SlotName [ english ] = "Tabellenschutz aufheben"; + SlotName[ english_us ] = "Unprotect sheet"; + SlotName[ portuguese ] = "Remover protecção"; + SlotName[ russian ] = "Ñíÿòü çàùèòó òàáëèöû"; + SlotName[ dutch ] = "Werkbladbeveiliging opheffen"; + SlotName[ french ] = "Annuler la protection du tableau"; + SlotName[ spanish ] = "Desproteger tabla"; + SlotName[ italian ] = "Disattiva protezione tabella"; + SlotName[ danish ] = "Ophæv arkbeskyttelse"; + SlotName[ swedish ] = "Upphäv tabellskydd"; + SlotName[ polish ] = "Usuñ ochronê arkusza"; + SlotName[ portuguese_brazilian ] = "ResetTableRead-Only"; + SlotName[ japanese ] = "•\\‚̕یì‚ð‰ð�œ"; + SlotName[ chinese_simplified ] = "È¡Ïû±í¸ñ±£»¤"; + SlotName[ chinese_traditional ] = "¨ú®ø«OÅ@ªí®æ"; + SlotName[ arabic ] = "ÅáÛÇÁ ÍãÇíÉ ÇáÌÏæá"; + SlotName[ dutch ] = "Werkbladbeveiliging opheffen"; + SlotName[ chinese_simplified ] = "È¡Ïû±í¸ñ±£»¤"; + SlotName[ greek ] = "ÊáôÜñãçóç ðñïóôáóßáò ðßíáêá"; + SlotName[ korean ] = "º¸È£ ÇØÁ¦"; + SlotName[ turkish ] = "Tablo korumasýný kaldýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_UNSET_READ_ONLY_CELLS +{ + SlotName = "Zellschutz aufheben"; + SlotName [ english ] = "Zellschutz aufheben"; + SlotName[ english_us ] = "Unprotect cells"; + SlotName[ portuguese ] = "Remover protecção da célula"; + SlotName[ russian ] = "Ñíÿòü çàùèòó ÿ÷ååê"; + SlotName[ dutch ] = "Celbeveiliging opheffen"; + SlotName[ french ] = "Annuler la protection des cellules"; + SlotName[ spanish ] = "Desproteger celdas"; + SlotName[ italian ] = "Disattiva protezione celle"; + SlotName[ danish ] = "Ophæv cellebeskyttelse"; + SlotName[ swedish ] = "Upphäv cellskydd"; + SlotName[ polish ] = "Anuluj ochronê komórek"; + SlotName[ portuguese_brazilian ] = "RemoveTableCellsReadOnly"; + SlotName[ japanese ] = "¾Ù‚̕یì‚ð‰ð�œ"; + SlotName[ chinese_simplified ] = "È¡Ïûµ¥Ôª¸ñ±£»¤"; + SlotName[ chinese_traditional ] = "¨ú®ø«OÅ@Àx¦s®æ"; + SlotName[ arabic ] = "ÅÒÇáÉ ÍãÇíÉ ÇáÎáíÉ"; + SlotName[ dutch ] = "Celbeveiliging opheffen"; + SlotName[ chinese_simplified ] = "È¡Ïûµ¥Ôª¸ñ±£»¤"; + SlotName[ greek ] = "ÊáôÜñãçóç ðñïóôáóßáò êåëéþí"; + SlotName[ korean ] = "¼¿ º¸È£ ÇØÁ¦"; + SlotName[ turkish ] = "Hücre korumasýný kaldýr"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_VERT_BOTTOM +{ + SlotName = "Unten"; + SlotName [ english ] = "Unten"; + SlotName[ english_us ] = "Bottom"; + SlotName[ portuguese ] = "Em baixo"; + SlotName[ russian ] = "Âíèçó"; + SlotName[ dutch ] = "Beneden"; + SlotName[ french ] = "En bas"; + SlotName[ spanish ] = "Abajo"; + SlotName[ italian ] = "In basso"; + SlotName[ danish ] = "Nederst"; + SlotName[ swedish ] = "Underst"; + SlotName[ polish ] = "W dole"; + SlotName[ portuguese_brazilian ] = "CellVertBottom"; + SlotName[ japanese ] = "‰º"; + SlotName[ chinese_simplified ] = "ÏÂ"; + SlotName[ chinese_traditional ] = "¤U"; + SlotName[ arabic ] = "ÃÓÝá"; + SlotName[ dutch ] = "Beneden"; + SlotName[ chinese_simplified ] = "ÏÂ"; + SlotName[ greek ] = "ÊÜôù"; + SlotName[ korean ] = "¾Æ·¡"; + SlotName[ turkish ] = "Altta"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_VERT_CENTER +{ + SlotName = "Mittig (vertikal)"; + SlotName [ english ] = "Mittig (vertikal)"; + SlotName[ english_us ] = "Center ( vertical )"; + SlotName[ portuguese ] = "Centrado (vertical)"; + SlotName[ russian ] = "Öåíòðèðîâàòü (ïî âåðòèêàëè ) "; + SlotName[ dutch ] = "Gecentreerd (verticaal)"; + SlotName[ french ] = "Centré (verticalement) "; + SlotName[ spanish ] = "Centrado (vertical)"; + SlotName[ italian ] = "Centro (verticale) "; + SlotName[ danish ] = "Centreret (lodret)"; + SlotName[ swedish ] = "Centrerad (vertikal)"; + SlotName[ polish ] = "Do œrodka ( poziomo ) "; + SlotName[ portuguese_brazilian ] = "CellVertCenter "; + SlotName[ japanese ] = "’†‰›(�㉺)"; + SlotName[ chinese_simplified ] = "¾ÓÖÐ(´¹Ö±)"; + SlotName[ chinese_traditional ] = "¸m¤¤(««ª½)"; + SlotName[ arabic ] = "ÊæÓíØ (ÑÃÓí)"; + SlotName[ dutch ] = "Gecentreerd (verticaal)"; + SlotName[ chinese_simplified ] = "¾ÓÖÐ(´¹Ö±)"; + SlotName[ greek ] = "ÊåíôñáñéóìÝíá (êáôáêüñõöá)"; + SlotName[ korean ] = "°¡¿îµ¥ (¼öÁ÷ )"; + SlotName[ turkish ] = "Ortalanmýþ (dikey)"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TABLE_VERT_NONE +{ + SlotName = "Oben"; + SlotName [ english ] = "Oben"; + SlotName[ english_us ] = "Top"; + SlotName[ portuguese ] = "Em cima"; + SlotName[ russian ] = "Ââåðõó"; + SlotName[ dutch ] = "Boven"; + SlotName[ french ] = "En haut"; + SlotName[ spanish ] = "Arriba"; + SlotName[ italian ] = "Sopra"; + SlotName[ danish ] = "Øverst"; + SlotName[ swedish ] = "Överst"; + SlotName[ polish ] = "W górze"; + SlotName[ portuguese_brazilian ] = "CellVertTop"; + SlotName[ japanese ] = "�ã"; + SlotName[ chinese_simplified ] = "ÉÏ"; + SlotName[ chinese_traditional ] = "¤W"; + SlotName[ arabic ] = "ÃÚáì"; + SlotName[ dutch ] = "Boven"; + SlotName[ chinese_simplified ] = "ÉÏ"; + SlotName[ greek ] = "ÐÜíù"; + SlotName[ korean ] = "À§"; + SlotName[ turkish ] = "Üstte"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_THESAURUS_DLG +{ + SlotName = "Thesaurus"; + SlotName [ english ] = "Thesaurus"; + SlotName[ english_us ] = "Thesaurus"; + SlotName[ portuguese ] = "Sinónimos"; + SlotName[ russian ] = "Òåçàóðóñ"; + SlotName[ dutch ] = "Thesaurus"; + SlotName[ french ] = "Dictionnaire des synonymes"; + SlotName[ spanish ] = "Sinónimos"; + SlotName[ italian ] = "Sinonimi"; + SlotName[ danish ] = "Synonymordbog"; + SlotName[ swedish ] = "Synonymordlista"; + SlotName[ polish ] = "Tezaurus"; + SlotName[ portuguese_brazilian ] = "ToolsThesaurus"; + SlotName[ japanese ] = "—Þ‹`ŒêŽ«“T"; + SlotName[ chinese_simplified ] = "´Êµä"; + SlotName[ chinese_traditional ] = "µü¨å"; + SlotName[ arabic ] = "ÞÇãæÓ ÇáãÑÇÏÝÇÊ"; + SlotName[ dutch ] = "Thesaurus"; + SlotName[ chinese_simplified ] = "´Êµä"; + SlotName[ greek ] = "Èçóáõñüò ëÝîåùí"; + SlotName[ korean ] = "µ¿ÀÇ¾î »çÀü"; + SlotName[ turkish ] = "Eþanlamlýlar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TO_FOOTER +{ + SlotName = "Zur Fußzeile"; + SlotName [ english ] = "Zur Fußzeile"; + SlotName[ english_us ] = "To Footer"; + SlotName[ portuguese ] = "Ir para rodapé"; + SlotName[ russian ] = "Äî íèæíåãî êîëîíòèòóëà"; + SlotName[ dutch ] = "Naar voettekst"; + SlotName[ french ] = "Aller au pied de page"; + SlotName[ spanish ] = "Ir al pie de página"; + SlotName[ italian ] = "Al piè di pagina"; + SlotName[ danish ] = "Til sidefod"; + SlotName[ swedish ] = "Till sidfot"; + SlotName[ polish ] = "Do stopki"; + SlotName[ portuguese_brazilian ] = "GoToFooter"; + SlotName[ japanese ] = "̯À‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ò³½Å"; + SlotName[ chinese_traditional ] = "Âà¨ì­¶§À"; + SlotName[ arabic ] = "Åáì ÊÐííá ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Naar voettekst"; + SlotName[ chinese_simplified ] = "תµ½Ò³½Å"; + SlotName[ greek ] = "Ðñïò õðïóÝëéäï"; + SlotName[ korean ] = "¹Ù´Ú±Û·Î"; + SlotName[ turkish ] = "Altbilgi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TO_HEADER +{ + SlotName = "Zur Kopfzeile"; + SlotName [ english ] = "Zur Kopfzeile"; + SlotName[ english_us ] = "To Header"; + SlotName[ portuguese ] = "Ir para cabeçalho"; + SlotName[ russian ] = "Äî âåðõíåãî êîëîíòèòóëà"; + SlotName[ dutch ] = "Naar koptekst"; + SlotName[ french ] = "Aller à l'en-tête"; + SlotName[ spanish ] = "Ir al encabezamiento"; + SlotName[ italian ] = "Alla riga d'intestazione "; + SlotName[ danish ] = "Til sidehoved"; + SlotName[ swedish ] = "Till sidhuvud"; + SlotName[ polish ] = "Do nag³ówka"; + SlotName[ portuguese_brazilian ] = "GoToHeader"; + SlotName[ japanese ] = "ͯÀÞ‚Ö"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ã¼"; + SlotName[ chinese_traditional ] = "Âà¨ì­¶­º"; + SlotName[ arabic ] = "Åáì ÑÃÓ ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Naar koptekst"; + SlotName[ chinese_simplified ] = "תµ½Ò³Ã¼"; + SlotName[ greek ] = "Ðñïò êåöáëßäá"; + SlotName[ korean ] = "¸Ó¸®±Û·Î"; + SlotName[ turkish ] = "Üstbilgi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER +{ + SlotName = "Verankerung wechseln"; + SlotName [ english ] = "Verankerung wechseln"; + SlotName[ english_us ] = "Change Anchor"; + SlotName[ portuguese ] = "Substituir âncora"; + SlotName[ russian ] = "Èçìåíèòü ïðèâÿçêó"; + SlotName[ dutch ] = "Verankering wisselen"; + SlotName[ french ] = "Changer d'ancrage"; + SlotName[ spanish ] = "Cambiar ancla"; + SlotName[ italian ] = "Commuta l'ancoraggio"; + SlotName[ danish ] = "Skift ankerpunkt"; + SlotName[ swedish ] = "Byt förankring"; + SlotName[ polish ] = "Wymieñ zakotwiczenie"; + SlotName[ portuguese_brazilian ] = "AnchorTypeChange"; + SlotName[ japanese ] = "±Ý¶°‚Ì•Ï�X"; + SlotName[ chinese_simplified ] = "¸ü¸ÄËø¶¨"; + SlotName[ chinese_traditional ] = "ÅܧóÂê©w"; + SlotName[ arabic ] = "ÊÛííÑ ÇáÅÑÓÇÁ"; + SlotName[ dutch ] = "Verankering wisselen"; + SlotName[ chinese_simplified ] = "¸ü¸ÄËø¶¨"; + SlotName[ greek ] = "ÁëëáãÞ áãêýñùóçò"; + SlotName[ korean ] = "°íÁ¤À§Ä¡ º¯°æ"; + SlotName[ turkish ] = "Sabitleme türünü deðiþtir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER_AT_CHAR +{ + SlotName = "Am Zeichen verankern"; + SlotName [ english ] = "Am Zeichen verankern"; + SlotName[ english_us ] = "Anchor to Character"; + SlotName[ portuguese ] = "Âncora no carácter"; + SlotName[ russian ] = "Ïðèâÿçàòü ê çíàêó"; + SlotName[ dutch ] = "Aan teken verankeren"; + SlotName[ french ] = "Ancrage au caractère"; + SlotName[ spanish ] = "Anclar al carácter"; + SlotName[ italian ] = "Ancora al carattere"; + SlotName[ danish ] = "Forankring til tegnet"; + SlotName[ swedish ] = "Förankra vid tecknet"; + SlotName[ polish ] = "Zakotwicz przy znaku"; + SlotName[ portuguese_brazilian ] = "Anchor at Character"; + SlotName[ japanese ] = "•¶Žš‚ɱݶ°‚·‚é"; + SlotName[ chinese_simplified ] = "±ê¼ÇÔÚ×Ö·ûÉÏ"; + SlotName[ chinese_traditional ] = "¼Ð°O¦b¦r¤¸¤W"; + SlotName[ arabic ] = "ÅÑÓÇÁ Úáì ÇáÃÍÑÝ"; + SlotName[ dutch ] = "Aan teken verankeren"; + SlotName[ chinese_simplified ] = "±ê¼ÇÔÚ×Ö·ûÉÏ"; + SlotName[ greek ] = "Áãêýñùóç óôïí ÷áñáêôÞñá"; + SlotName[ korean ] = "¹®ÀÚ¿¡ À§Ä¡°íÁ¤"; + SlotName[ turkish ] = "Karaktere sabitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER_CHAR +{ + SlotName = "Am Zeichen verankern"; + SlotName [ english ] = "Am Zeichen verankern"; + SlotName[ english_us ] = "Anchor to Character"; + SlotName[ portuguese ] = "Âncora no carácter"; + SlotName[ russian ] = "Ïðèâÿçàòü ê çíàêó"; + SlotName[ dutch ] = "Aan teken verankeren"; + SlotName[ french ] = "Ancrage au caractère"; + SlotName[ spanish ] = "Anclar al carácter"; + SlotName[ italian ] = "Ancora al carattere"; + SlotName[ danish ] = "Forankring til tegnet"; + SlotName[ swedish ] = "Förankra vid tecknet"; + SlotName[ polish ] = "Zakotwicz przy znaku"; + SlotName[ portuguese_brazilian ] = "SetAnchorToCharachter"; + SlotName[ japanese ] = "•¶Žš‚ɱݶ°‚·‚é"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ×Ö·ûÉÏ"; + SlotName[ chinese_traditional ] = "¦b¦r¤¸§@¼Ð¸¹"; + SlotName[ arabic ] = "ÅÑÓÇÁ Úáì ÇáÃÍÑÝ"; + SlotName[ dutch ] = "Aan teken verankeren"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ×Ö·ûÉÏ"; + SlotName[ greek ] = "Áãêýñùóç óôïí ÷áñáêôÞñá"; + SlotName[ korean ] = "¹®ÀÚ¿¡ À§Ä¡°íÁ¤"; + SlotName[ turkish ] = "Karaktere sabitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER_FRAME +{ + SlotName = "Am Rahmen verankern"; + SlotName [ english ] = "Am Rahmen verankern"; + SlotName[ english_us ] = "Anchor To Frame"; + SlotName[ portuguese ] = "Âncora na moldura"; + SlotName[ russian ] = "Ïðèâÿçàòü ê ðàìêå"; + SlotName[ dutch ] = "Aan kader verankeren"; + SlotName[ french ] = "Ancrage au cadre"; + SlotName[ spanish ] = "Anclar al marco"; + SlotName[ italian ] = "Ancora alla cornice"; + SlotName[ danish ] = "Forankring til rammen"; + SlotName[ swedish ] = "Förankra vid ramen"; + SlotName[ polish ] = "Zakotwicz przy ramce"; + SlotName[ portuguese_brazilian ] = "SetAnchorToFrame"; + SlotName[ japanese ] = "˜g‚ɱݶ°‚·‚é"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ¿òÉÏ"; + SlotName[ chinese_traditional ] = "¦b®Ø¤W§@¼Ð¸¹"; + SlotName[ arabic ] = "ÅÑÓÇÁ Úáì ÇáÅØÇÑ"; + SlotName[ dutch ] = "Aan kader verankeren"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ¿òÉÏ"; + SlotName[ greek ] = "Áãêýñùóç óôï ðëáßóéï"; + SlotName[ korean ] = "ÇÁ·¹ÀÓ¿¡ À§Ä¡°íÁ¤"; + SlotName[ turkish ] = "Çerçeveye sabitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER_PAGE +{ + SlotName = "An der Seite verankern"; + SlotName [ english ] = "An der Seite verankern"; + SlotName[ english_us ] = "Anchor To Page"; + SlotName[ portuguese ] = "Âncora na página"; + SlotName[ russian ] = "Ïðèâÿçàòü ê ñòðàíèöå"; + SlotName[ dutch ] = "Aan pagina verankeren"; + SlotName[ french ] = "Ancrage à la page"; + SlotName[ spanish ] = "Anclar a la página"; + SlotName[ italian ] = "Ancora alla pagina"; + SlotName[ danish ] = "Forankring til siden"; + SlotName[ swedish ] = "Förankra vid sidan"; + SlotName[ polish ] = "Zakotwicz przy stronie"; + SlotName[ portuguese_brazilian ] = "SetAnchorToPage"; + SlotName[ japanese ] = "Íß°¼Þ‚ɱݶ°‚·‚é"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚÒ³ÃæÉÏ"; + SlotName[ chinese_traditional ] = "Âê©w¦b­¶­±¤W"; + SlotName[ arabic ] = "ÅÑÓÇÁ Úáì ÇáÕÝÍÉ"; + SlotName[ dutch ] = "Aan pagina verankeren"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚÒ³ÃæÉÏ"; + SlotName[ greek ] = "Áãêýñùóç óôç óåëßäá"; + SlotName[ korean ] = "ÆäÀÌÁö À§Ä¡°íÁ¤"; + SlotName[ turkish ] = "Sayfaya sabitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_ANKER_PARAGRAPH +{ + SlotName = "Am Absatz verankern"; + SlotName [ english ] = "Am Absatz verankern"; + SlotName[ english_us ] = "Anchor To Paragraph"; + SlotName[ portuguese ] = "Âncora no parágrafo"; + SlotName[ russian ] = "Ïðèâÿçàòü ê àáçàöó"; + SlotName[ dutch ] = "Aan alinea verankeren"; + SlotName[ french ] = "Ancrage au paragraphe"; + SlotName[ spanish ] = "Anclar en el párrafo"; + SlotName[ italian ] = "Ancora al paragrafo"; + SlotName[ danish ] = "Forankring til afsnittet"; + SlotName[ swedish ] = "Förankra vid stycket"; + SlotName[ polish ] = "Zakotwicz przy akapicie"; + SlotName[ portuguese_brazilian ] = "SetAnchorToParagraph"; + SlotName[ japanese ] = "’i—Ž‚É±Ý¶°‚·‚é"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ¶ÎÂäÉÏ"; + SlotName[ chinese_traditional ] = "¦b¬q¸¨¤W§@¼Ð¸¹"; + SlotName[ arabic ] = "ÅÑÓÇÁ Úáì ÇáÝÞÑÉ"; + SlotName[ dutch ] = "Aan alinea verankeren"; + SlotName[ chinese_simplified ] = "Ëø¶¨ÔÚ¶ÎÂäÉÏ"; + SlotName[ greek ] = "Áãêýñùóç óôç ðáñÜãñáöï"; + SlotName[ korean ] = "´Ü¶ô¿¡ À§Ä¡°íÁ¤"; + SlotName[ turkish ] = "Paragrafa sabitle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_GROUP +{ + SlotName = "Gruppierung"; + SlotName [ english ] = "Gruppierung"; + SlotName[ english_us ] = "Group"; + SlotName[ portuguese ] = "Agrupar"; + SlotName[ russian ] = "Ãðóïïèðîâàíèå"; + SlotName[ dutch ] = "Groepering"; + SlotName[ french ] = "Grouper"; + SlotName[ spanish ] = "Agrupar"; + SlotName[ italian ] = "Raggruppa"; + SlotName[ danish ] = "Gruppering"; + SlotName[ swedish ] = "Gruppering"; + SlotName[ polish ] = "Zgrupowanie"; + SlotName[ portuguese_brazilian ] = "FormatGroup"; + SlotName[ japanese ] = "¸ÞÙ°Ì߉»"; + SlotName[ chinese_simplified ] = "·Ö×é"; + SlotName[ chinese_traditional ] = "¸s²Õ"; + SlotName[ arabic ] = "ÊÌãíÚ"; + SlotName[ dutch ] = "Groepering"; + SlotName[ chinese_simplified ] = "·Ö×é"; + SlotName[ greek ] = "Ïìáäïðïßçóç"; + SlotName[ korean ] = "±×·ì"; + SlotName[ turkish ] = "Grup"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_HIERARCHIE +{ + SlotName = "Lage wechseln"; + SlotName [ english ] = "Lage wechseln"; + SlotName[ english_us ] = "Change Position"; + SlotName[ portuguese ] = "Mudar posição"; + SlotName[ russian ] = "Ñìåíèòü ïîëîæåíèå"; + SlotName[ dutch ] = "Positie veranderen"; + SlotName[ french ] = "Changer la position"; + SlotName[ spanish ] = "Cambiar posición"; + SlotName[ italian ] = "Cambia posizione"; + SlotName[ danish ] = "Modificer placering"; + SlotName[ swedish ] = "Växla läge"; + SlotName[ polish ] = "Zmieniæ po³o¿enie"; + SlotName[ portuguese_brazilian ] = "ObjectLayerChange"; + SlotName[ japanese ] = "ˆÊ’u‚Ì•Ï�X"; + SlotName[ chinese_simplified ] = "¸ü¸ÄλÖÃ"; + SlotName[ chinese_traditional ] = "Åܧó¦ì¸m"; + SlotName[ arabic ] = "ÊÛííÑ ÇáãæÖÚ"; + SlotName[ dutch ] = "Positie veranderen"; + SlotName[ chinese_simplified ] = "¸ü¸ÄλÖÃ"; + SlotName[ greek ] = "ÁëëáãÞ èÝóçò"; + SlotName[ korean ] = "À§Ä¡ º¯°æ"; + SlotName[ turkish ] = "Konum deðiþtir"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_HMIRROR +{ + SlotName = "Horizontal spiegeln"; + SlotName [ english ] = "Horizontal spiegeln"; + SlotName[ english_us ] = "Flip Horizontal"; + SlotName[ portuguese ] = "Reflectir na horizontal"; + SlotName[ russian ] = "Îòîáðàçèòü ïî ãîðèçîíòàëè"; + SlotName[ dutch ] = "Horizontaal spiegelen"; + SlotName[ french ] = "Refléter horizontalement"; + SlotName[ spanish ] = "Reflejar horizontalmente"; + SlotName[ italian ] = "Rispecchia orizzontalmente"; + SlotName[ danish ] = "Spejlvend vandret"; + SlotName[ swedish ] = "Spegla horisontellt"; + SlotName[ polish ] = "Przerzuæ w poziomie"; + SlotName[ portuguese_brazilian ] = "ObjectFlipHorizontal"; + SlotName[ japanese ] = "�㉺”½“]"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò·´Ó³"; + SlotName[ chinese_traditional ] = "¤ô¥­¤Ï¬M"; + SlotName[ arabic ] = "ÇäÚßÇÓ ÃÝÞí"; + SlotName[ dutch ] = "Horizontaal spiegelen"; + SlotName[ chinese_simplified ] = "ˮƽ·½Ïò·´Ó³"; + SlotName[ greek ] = "ÁíáóôñïöÞ ïñéæüíôéá"; + SlotName[ korean ] = "¼öÆò ´ëĪ"; + SlotName[ turkish ] = "Yatay yansýt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_UNGROUP +{ + SlotName = "Gruppierung aufheben"; + SlotName [ english ] = "Gruppierung aufheben"; + SlotName[ english_us ] = "Ungroup"; + SlotName[ portuguese ] = "Desagrupar"; + SlotName[ russian ] = "Ðàçãðóïïèðîâàòü"; + SlotName[ dutch ] = "Groepering opheffen"; + SlotName[ french ] = "Dissocier"; + SlotName[ spanish ] = "Desagrupar"; + SlotName[ italian ] = "Sciogli gruppo"; + SlotName[ danish ] = "Ophæv gruppering"; + SlotName[ swedish ] = "Upphäv gruppering"; + SlotName[ polish ] = "Rozgrupuj"; + SlotName[ portuguese_brazilian ] = "FormatUngroup"; + SlotName[ japanese ] = "¸ÞÙ°Ì߉ð�œ"; + SlotName[ chinese_simplified ] = "È¡Ïû·Ö×é"; + SlotName[ chinese_traditional ] = "¨ú®ø¸s²Õ"; + SlotName[ arabic ] = "ÅÒÇáÉ ÇáÊÌãíÚ"; + SlotName[ dutch ] = "Groepering opheffen"; + SlotName[ chinese_simplified ] = "È¡Ïû·Ö×é"; + SlotName[ greek ] = "ÊáôÜñãçóç ïìáäïðïßçóçò"; + SlotName[ korean ] = "±×·ì ÇØÃ¼"; + SlotName[ turkish ] = "Grubu çöz"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_TOOL_VMIRROR +{ + SlotName = "Vertikal spiegeln"; + SlotName [ english ] = "Vertikal spiegeln"; + SlotName[ english_us ] = "Flip Vertical"; + SlotName[ portuguese ] = "Reflectir na vertical"; + SlotName[ russian ] = "Îòîáðàçèòü ïî âåðòèêàëè"; + SlotName[ dutch ] = "Verticaal spiegelen"; + SlotName[ french ] = "Refléter verticalement"; + SlotName[ spanish ] = "Reflejar verticalmente"; + SlotName[ italian ] = "Rispecchia verticalmente"; + SlotName[ danish ] = "Spejlvend lodret"; + SlotName[ swedish ] = "Spegla vertikalt"; + SlotName[ polish ] = "Przerzuæ w pionie"; + SlotName[ portuguese_brazilian ] = "ObjectFlipVertical"; + SlotName[ japanese ] = "�¶‰E”½“]"; + SlotName[ chinese_simplified ] = "´¹Ö±·½Ïò·´Ó³"; + SlotName[ chinese_traditional ] = "««ª½¤Ï¬M"; + SlotName[ arabic ] = "ÇáÇäÚßÇÓ ÑÃÓíÇð"; + SlotName[ dutch ] = "Verticaal spiegelen"; + SlotName[ chinese_simplified ] = "´¹Ö±·½Ïò·´Ó³"; + SlotName[ greek ] = "ÁíáóôñïöÞ êáôáêüñõöá"; + SlotName[ korean ] = "¼öÁ÷ ´ëĪ"; + SlotName[ turkish ] = "Dikey yansýt"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UNDERLINE_DOUBLE +{ + SlotName = "Doppelt unterstrichen"; + SlotName [ english ] = "Doppelt unterstrichen"; + SlotName[ english_us ] = "Double Underline "; + SlotName[ portuguese ] = "Sublinhado duplo"; + SlotName[ russian ] = "Äâîéíîå ïîä÷åðêèâàíèå"; + SlotName[ dutch ] = "Dubbel onderstreept"; + SlotName[ french ] = "Soulignage double"; + SlotName[ spanish ] = "Subrayado doble"; + SlotName[ italian ] = "Sottolinea doppio"; + SlotName[ danish ] = "Dobbelt understreget"; + SlotName[ swedish ] = "Dubbelt understruket"; + SlotName[ polish ] = "Podwójne podkreœlenie"; + SlotName[ portuguese_brazilian ] = "UnderlineDouble"; + SlotName[ japanese ] = "“ñ�d‰º�ü"; + SlotName[ chinese_simplified ] = "˫ϻ®Ïß"; + SlotName[ chinese_traditional ] = "Âù¹º½u"; + SlotName[ arabic ] = "ÎØ ÊÍÊí ãÒÏæÌ"; + SlotName[ dutch ] = "Dubbel onderstreept"; + SlotName[ chinese_simplified ] = "˫ϻ®Ïß"; + SlotName[ greek ] = "ÄéðëÞ õðïãñÜììéóç"; + SlotName[ korean ] = "2Áß ¹ØÁÙ"; + SlotName[ turkish ] = "Çift çizgi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_ALL +{ + SlotName = "Alles Aktualisieren"; + SlotName [ english ] = "Alles Aktualisieren"; + SlotName[ english_us ] = "Update All"; + SlotName[ portuguese ] = "Actualizar tudo"; + SlotName[ russian ] = "Îáíîâèòü âñå"; + SlotName[ dutch ] = "Alles actualiseren"; + SlotName[ french ] = "Tout actualiser"; + SlotName[ spanish ] = "Actualizar todo"; + SlotName[ italian ] = "Aggiorna tutto"; + SlotName[ danish ] = "Opdater alt"; + SlotName[ swedish ] = "Uppdatera allt"; + SlotName[ polish ] = "Aktualizuj wszystko"; + SlotName[ portuguese_brazilian ] = "UpdateAll"; + SlotName[ japanese ] = "‚·‚ׂĂð�X�V"; + SlotName[ chinese_simplified ] = "È«²¿¸üÐÂ"; + SlotName[ chinese_traditional ] = "¥þ³¡§ó·s"; + SlotName[ arabic ] = "ÊÍÏíË Çáßá"; + SlotName[ dutch ] = "Alles actualiseren"; + SlotName[ chinese_simplified ] = "È«²¿¸üÐÂ"; + SlotName[ greek ] = "ÅíçìÝñùóç üëùí"; + SlotName[ korean ] = "Àüü ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Tümünü güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_ALL_LINKS +{ + SlotName = "Verknüpfungen aktualisieren"; + SlotName [ english ] = "Verknüpfungen aktualisieren"; + SlotName[ english_us ] = "Update All Links"; + SlotName[ portuguese ] = "Actualizar ligações"; + SlotName[ russian ] = "Îáíîâèòü ññûëêè"; + SlotName[ dutch ] = "Koppelingen actualiseren"; + SlotName[ french ] = "Actualiser les liens"; + SlotName[ spanish ] = "Actualizar todos los vínculos"; + SlotName[ italian ] = "Aggiorna collegamenti"; + SlotName[ danish ] = "Opdater kæder"; + SlotName[ swedish ] = "Uppdatera länkar"; + SlotName[ polish ] = "Aktualizuj ³¹cza"; + SlotName[ portuguese_brazilian ] = "UpdateAllLinks"; + SlotName[ japanese ] = "ØÝ¸‚Ì�X�V"; + SlotName[ chinese_simplified ] = "¸üÐÂÁ´½Ó"; + SlotName[ chinese_traditional ] = "§ó·s±¶®|"; + SlotName[ arabic ] = "ÊÍÏíË ßá ÇáÇÑÊÈÇØÇÊ"; + SlotName[ dutch ] = "Koppelingen actualiseren"; + SlotName[ chinese_simplified ] = "¸üÐÂÁ´½Ó"; + SlotName[ greek ] = "ÅíçìÝñùóç üëùí ôùí óõíäÝóåùí"; + SlotName[ korean ] = "¸ðµç ¿¬°á ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Baðlantýlarý güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_CUR_TOX +{ + SlotName = "Verzeichnis aktualisieren"; + SlotName [ english ] = "Verzeichnis aktualisieren"; + SlotName[ english_us ] = "Update Index"; + SlotName[ portuguese ] = "Actualizar índice"; + SlotName[ russian ] = "Îáíîâèòü óêàçàòåëü"; + SlotName[ dutch ] = "Index actualiseren"; + SlotName[ french ] = "Actualiser l'index"; + SlotName[ spanish ] = "Actualizar índice"; + SlotName[ italian ] = "Aggiorna indice"; + SlotName[ danish ] = "Opdater indeks"; + SlotName[ swedish ] = "Uppdatera förteckning"; + SlotName[ polish ] = "Aktualizuj indeks"; + SlotName[ portuguese_brazilian ] = "Optimize"; + SlotName[ japanese ] = "�õˆø�€–Ú‚Ì�X�V"; + SlotName[ chinese_simplified ] = "¸üÐÂĿ¼"; + SlotName[ chinese_traditional ] = "§ó·s¥Ø¿ý"; + SlotName[ arabic ] = "ÊÍÏíË ÇáÝåÑÓ"; + SlotName[ dutch ] = "Index actualiseren"; + SlotName[ chinese_simplified ] = "¸üÐÂĿ¼"; + SlotName[ greek ] = "ÅíçìÝñùóç åõñåôçñßïõ"; + SlotName[ korean ] = "»öÀÎ ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Dizini güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_CURRENT_TOX +{ + SlotName = "Verzeichnis bearbeiten"; + SlotName [ english ] = "Edit index"; + SlotName[ english_us ] = "Edit index"; + SlotName[ portuguese ] = "Editar índice"; + SlotName[ greek ] = "Åðåîåñãáóßá åõñåôçñßïõ"; + SlotName[ dutch ] = "Index bewerken"; + SlotName[ french ] = "Modifier l'index"; + SlotName[ spanish ] = "Editar índice"; + SlotName[ swedish ] = "Redigera förteckning"; + SlotName[ russian ] = "Ïðàâêà óêàçàòåëÿ"; + SlotName[ italian ] = "Modifica indice"; + SlotName[ danish ] = "Rediger indeks"; + SlotName[ polish ] = "Edytuj indeks"; + SlotName[ portuguese_brazilian ] = "Edit index"; + SlotName[ japanese ] = "�õˆø‚Ì•Ò�W"; + SlotName[ korean ] = "»öÀÎ ÆíÁý"; + SlotName[ chinese_simplified ] = "±à¼­Ä¿Â¼"; + SlotName[ chinese_traditional ] = "½s¿è¥Ø¿ý"; + SlotName[ arabic ] = "ÊÍÑíÑ ÝåÑÓ"; + SlotName[ turkish ] = "Dizini düzenle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_FIELDS +{ + SlotName = "Felder aktualisieren"; + SlotName [ english ] = "Felder aktualisieren"; + SlotName[ english_us ] = "Update Fields"; + SlotName[ portuguese ] = "Actualizar campos"; + SlotName[ russian ] = "Îáíîâèòü ïîëÿ"; + SlotName[ dutch ] = "Velden actualisern"; + SlotName[ french ] = "Actualiser les champs"; + SlotName[ spanish ] = "Actualizar campos"; + SlotName[ italian ] = "UpdateFields"; + SlotName[ danish ] = "Opdater felter"; + SlotName[ swedish ] = "Uppdatera fält"; + SlotName[ polish ] = "Aktualizuj pola"; + SlotName[ portuguese_brazilian ] = "FieldsUpdate"; + SlotName[ japanese ] = "̨°ÙÄÞ‚Ì�X�V"; + SlotName[ chinese_simplified ] = "¸üÐÂ×Ö¶Î"; + SlotName[ chinese_traditional ] = "§ó·sÄæ¦ì"; + SlotName[ arabic ] = "ÊÍÏíË ÇáÍÞæá"; + SlotName[ dutch ] = "Velden actualisern"; + SlotName[ chinese_simplified ] = "¸üÐÂ×Ö¶Î"; + SlotName[ greek ] = "ÅíçìÝñùóç ðåäßùí"; + SlotName[ korean ] = "ÇÊµå ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Alanlarý güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_INPUTFIELDS +{ + SlotName = "Eingabefelder aktualisieren"; + SlotName [ english ] = "Eingabefelder aktualisieren"; + SlotName[ english_us ] = "Update Input Fields"; + SlotName[ portuguese ] = "Actualizar campos de entrada"; + SlotName[ russian ] = "Îáíîâèòü ïîëÿ ââîäà"; + SlotName[ dutch ] = "Invoervelden actualiseren"; + SlotName[ french ] = "Actualiser les champs de saisie"; + SlotName[ spanish ] = "Actualizar campos para entradas"; + SlotName[ italian ] = "Aggiorna caselle digitazione"; + SlotName[ danish ] = "Opdater input-felter"; + SlotName[ swedish ] = "Uppdatera inmatningsfält"; + SlotName[ polish ] = "Aktualizuj pola wprowadzania"; + SlotName[ portuguese_brazilian ] = "InputfieldsUpdate"; + SlotName[ japanese ] = "“ü—ÍÎÞ¯¸½‚Ì�X�V"; + SlotName[ chinese_simplified ] = "¸üÐÂÊäÈë×Ö¶Î"; + SlotName[ chinese_traditional ] = "§ó·s¿é¤JÄæ¦ì"; + SlotName[ arabic ] = "ÊÍÏíË ÍÞæá ÇáÅÏÎÇá"; + SlotName[ dutch ] = "Invoervelden actualiseren"; + SlotName[ chinese_simplified ] = "¸üÐÂÊäÈë×Ö¶Î"; + SlotName[ greek ] = "ÅíçìÝñùóç ðåäßùí åéóáãùãÞò"; + SlotName[ korean ] = "ÀÔ·Â ÇÊµå ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Giriþ alanlarýný güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_UPDATE_TOX +{ + SlotName = "Verzeichnisse aktualisieren"; + SlotName [ english ] = "Verzeichnisse aktualisieren"; + SlotName[ english_us ] = "Update Indexes"; + SlotName[ portuguese ] = "Actualizar índices"; + SlotName[ russian ] = "Îáíîâèòü óêàçàòåëè"; + SlotName[ dutch ] = "Indices actualiseren"; + SlotName[ french ] = "Actualiser les index"; + SlotName[ spanish ] = "Actualizar índices"; + SlotName[ italian ] = "Aggiorna indici"; + SlotName[ danish ] = "Opdater alle indeks"; + SlotName[ swedish ] = "Uppdatera förteckningar"; + SlotName[ polish ] = "Aktualizuj indeksy"; + SlotName[ portuguese_brazilian ] = "UpdateAllIndexes"; + SlotName[ japanese ] = "–ÚŽŸ‚Æ�õˆø‚Ì�X�V"; + SlotName[ chinese_simplified ] = "¸üÐÂĿ¼"; + SlotName[ chinese_traditional ] = "§ó·s¥Ø¿ý"; + SlotName[ arabic ] = "ÊÍÏíË ÇáÝåÇÑÓ"; + SlotName[ dutch ] = "Indices actualiseren"; + SlotName[ chinese_simplified ] = "¸üÐÂĿ¼"; + SlotName[ greek ] = "ÅíçìÝñùóç åõñåôçñßùí"; + SlotName[ korean ] = "»öÀÎ ¾÷ µ¥ÀÌÆ®"; + SlotName[ turkish ] = "Dizinleri güncelle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_BOUNDS +{ + SlotName = "Textbegrenzungen"; + SlotName [ english ] = "Textbegrenzungen"; + SlotName[ english_us ] = "Text Limits"; + SlotName[ portuguese ] = "Limites do texto"; + SlotName[ russian ] = "Ãðàíèöû òåêñòà"; + SlotName[ dutch ] = "Tekstbegrenzingen"; + SlotName[ french ] = "Délimitations du texte"; + SlotName[ spanish ] = "Límites del texto"; + SlotName[ italian ] = "Margini del testo"; + SlotName[ danish ] = "Tekstmargener"; + SlotName[ swedish ] = "Textbegränsningar"; + SlotName[ polish ] = "Granice tekstu"; + SlotName[ portuguese_brazilian ] = "ViewTextBounds"; + SlotName[ japanese ] = "÷½Ä‚Ì‹«ŠE"; + SlotName[ chinese_simplified ] = "ÕýÎı߽ç"; + SlotName[ chinese_traditional ] = "¤º¤åÃä¬É"; + SlotName[ arabic ] = "ÍÏæÏ ÇáäÕ"; + SlotName[ dutch ] = "Tekstbegrenzingen"; + SlotName[ chinese_simplified ] = "ÕýÎı߽ç"; + SlotName[ greek ] = "¼ñéá êåéìÝíïõ"; + SlotName[ korean ] = "ÅØ½ºÆ® °æ°è¼±"; + SlotName[ turkish ] = "Metin sýnýrlarý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_FIELDNAME +{ + SlotName = "Feldnamen ein/aus"; + SlotName [ english ] = "Feldnamen ein/aus"; + SlotName[ english_us ] = "Field Names On/Off"; + SlotName[ portuguese ] = "Mostrar nomes de campos"; + SlotName[ russian ] = "Âêë./Îòêë. èìåíà ïîëÿ"; + SlotName[ dutch ] = "Veldnamen aan/uit"; + SlotName[ french ] = "Afficher/masquer les noms de champ"; + SlotName[ spanish ] = "Mostrar/ocultar nombre de campos"; + SlotName[ italian ] = "Mostra/nascondi i nomi di campo "; + SlotName[ danish ] = "Feltnavn til/fra"; + SlotName[ swedish ] = "Fältnamn på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz nazwy pól"; + SlotName[ portuguese_brazilian ] = "ViewFieldNames"; + SlotName[ japanese ] = "̨°ÙÄÞ–¼ µÝ/µÌ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë×Ö¶ÎÃû³Æ"; + SlotName[ chinese_traditional ] = "Åã¥Ü/Áô¤JÄæ¦ì¦WºÙ"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÃÓãÇÁ ÇáÍÞæá"; + SlotName[ dutch ] = "Veldnamen aan/uit"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë×Ö¶ÎÃû³Æ"; + SlotName[ greek ] = "Ïíüìáôá ðåäßùí Íáé/¼÷é"; + SlotName[ korean ] = "Çʵå À̸§ ÀÛµ¿/ÇØÁ¦"; + SlotName[ turkish ] = "Alan adlarýný görüntüle/gizle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_FIELDS +{ + SlotName = "Feldbefehle"; + SlotName [ english ] = "Feldbefehle"; + SlotName[ english_us ] = "Fields"; + SlotName[ portuguese ] = "Códigos de campo"; + SlotName[ russian ] = "Ïîëå"; + SlotName[ dutch ] = "Veldopdrachten"; + SlotName[ french ] = "Instructions de champ"; + SlotName[ spanish ] = "Códigos de campo"; + SlotName[ italian ] = "Comandi di campo"; + SlotName[ danish ] = "Felter"; + SlotName[ swedish ] = "Fältkommandon"; + SlotName[ polish ] = "Pola"; + SlotName[ portuguese_brazilian ] = "ViewFieldCodes"; + SlotName[ japanese ] = "̨°ÙÄÞ"; + SlotName[ chinese_simplified ] = "×Ö¶ÎÖ¸Áî"; + SlotName[ chinese_traditional ] = "Äæ¦ì«ü¥O"; + SlotName[ arabic ] = "ÍÞæá"; + SlotName[ dutch ] = "Veldopdrachten"; + SlotName[ chinese_simplified ] = "×Ö¶ÎÖ¸Áî"; + SlotName[ greek ] = "ÅíôïëÝò ðåäßïõ"; + SlotName[ korean ] = "Çʵå"; + SlotName[ turkish ] = "Alan öðeleri"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_GRAPHIC +{ + SlotName = "Grafik ein/aus"; + SlotName [ english ] = "Graphics On/Off"; + SlotName[ english_us ] = "Graphics on/off"; + SlotName[ portuguese ] = "Mostrar/Ocultar imagem"; + SlotName[ russian ] = "Ðèñóíîê"; + SlotName[ greek ] = "Ãñáöéêü Íáé/¼÷é"; + SlotName[ dutch ] = "Afbeelding aan/uit"; + SlotName[ french ] = "Afficher/masquer les images"; + SlotName[ spanish ] = "Imagen"; + SlotName[ italian ] = "Immagine"; + SlotName[ danish ] = "Grafik til/fra"; + SlotName[ swedish ] = "Grafik på/av"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz grafikê"; + SlotName[ portuguese_brazilian ] = "ViewGraphic"; + SlotName[ japanese ] = "�} µÝ/µÌ"; + SlotName[ korean ] = "±×·¡ÇÈ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë ͼÐÎ"; + SlotName[ chinese_traditional ] = "Åã¥Ü©ÎÁô¤J¹Ï¤ù"; + SlotName[ turkish ] = "Grafik"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÇáÕæÑÉ"; +}; +SfxSlotInfo FN_VIEW_HIDDEN_PARA +{ + SlotName = "Versteckte Absätze"; + SlotName [ english ] = "Versteckte Absätze"; + SlotName[ english_us ] = "Hidden Paragraphs"; + SlotName[ portuguese ] = "Parágrafos ocultos"; + SlotName[ russian ] = "Ñêðûòûå àáçàöû"; + SlotName[ dutch ] = "Verborgen alinea´s"; + SlotName[ french ] = "Afficher paragraphes masqués"; + SlotName[ spanish ] = "Párrafos ocultos"; + SlotName[ italian ] = "Paragrafi nascosti"; + SlotName[ danish ] = "Skjulte afsnit"; + SlotName[ swedish ] = "Dolda stycken"; + SlotName[ polish ] = "Ukryte akapity"; + SlotName[ portuguese_brazilian ] = "ShowHiddenParagraphs"; + SlotName[ japanese ] = "‰B‚µ’i—Ž"; + SlotName[ chinese_simplified ] = "ÒþÈëµÄ¶ÎÂä"; + SlotName[ chinese_traditional ] = "Áô¤Jªº¬q¸¨"; + SlotName[ arabic ] = "ÝÞÑÇÊ ãÎÝíÉ"; + SlotName[ dutch ] = "Verborgen alinea´s"; + SlotName[ chinese_simplified ] = "ÒþÈëµÄ¶ÎÂä"; + SlotName[ greek ] = "ÊñõöÞ ðáñÜãñáöïò"; + SlotName[ korean ] = "¼û°ÜÁø ´Ü¶ô"; + SlotName[ turkish ] = "Gizli paragraflar"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_MARKS +{ + SlotName = "Marken"; + SlotName [ english ] = "Marken"; + SlotName[ english_us ] = "Field Shadings"; + SlotName[ portuguese ] = "Destaques"; + SlotName[ russian ] = "Ìåòêè"; + SlotName[ dutch ] = "Markeringen"; + SlotName[ french ] = "Marques"; + SlotName[ spanish ] = "Marcas"; + SlotName[ italian ] = "Selezioni"; + SlotName[ danish ] = "Markeringer"; + SlotName[ swedish ] = "Markeringar"; + SlotName[ polish ] = "Znaczniki"; + SlotName[ portuguese_brazilian ] = "ViewMarks"; + SlotName[ japanese ] = "‘I‘ð"; + SlotName[ chinese_simplified ] = "Óòµ×ÎÆ"; + SlotName[ chinese_traditional ] = "°ì©³¯¾"; + SlotName[ arabic ] = "ÚáÇãÇÊ"; + SlotName[ dutch ] = "Markeringen"; + SlotName[ chinese_simplified ] = "Óòµ×ÎÆ"; + SlotName[ greek ] = "ÓçìÜäé"; + SlotName[ korean ] = "Çʵå À½¿µ"; + SlotName[ turkish ] = "Belirteçler"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VIEW_META_CHARS +{ + SlotName = "Steuerzeichen ein/aus"; + SlotName [ english ] = "Nonprinting Characters on/off"; + SlotName[ english_us ] = "Nonprinting Characters on/off"; + SlotName[ portuguese ] = "Mostrar/Ocultar caracteres não imprimíveis"; + SlotName[ russian ] = "Íåïå÷àòàåìûå ñèìâîëû"; + SlotName[ greek ] = "Ìç åêôõðþóéìïé ÷áñáêôÞñåò Íáé/¼÷é"; + SlotName[ dutch ] = "Besturingstekens aan/uit"; + SlotName[ french ] = "Afficher/masquer les caractères non imprimables"; + SlotName[ spanish ] = "Caracteres no imprimibles"; + SlotName[ italian ] = "Caratteri non stampabili"; + SlotName[ danish ] = "Kontroltegn til/fra"; + SlotName[ swedish ] = "Styrtecken"; + SlotName[ polish ] = "W³¹cz/Wy³¹cz znaki niedrukowalne"; + SlotName[ portuguese_brazilian ] = "ViewControlCodes"; + SlotName[ japanese ] = "•Ò�W‹L�† µÝ/µÌ"; + SlotName[ korean ] = "ÀμâÇÒ¼ö ¾ø´Â ¹®ÀÚ"; + SlotName[ chinese_simplified ] = "ÏÔʾ/ÒþÈë ¿ØÖÆ·û"; + SlotName[ chinese_traditional ] = "Åã¥Ü©ÎÁô¤J±±¨î²Å¸¹"; + SlotName[ turkish ] = "Denetim karakterleri"; + SlotName[ arabic ] = "ÅÙåÇÑ/ÅÎÝÇÁ ÇáÃÍÑÝ ÇáÊí áÇ ÊõØÈÚ"; +}; +SfxSlotInfo FN_VIEW_TABLEGRID +{ + SlotName = "Tabellenbegrenzungen"; + SlotName [ english ] = "Tabellenbegrenzungen"; + SlotName[ english_us ] = "Table Limits"; + SlotName[ portuguese ] = "Margens da tabela"; + SlotName[ russian ] = "Îãðàíè÷åíèÿ òàáëèöû"; + SlotName[ dutch ] = "Tabelbegrenzingen"; + SlotName[ french ] = "Limiteurs de tableaux"; + SlotName[ spanish ] = "Límites de la tabla"; + SlotName[ italian ] = "Limiti tabella"; + SlotName[ danish ] = "Tabelgrænser"; + SlotName[ swedish ] = "Tabellbegränsningar"; + SlotName[ polish ] = "Obramowanie tabeli"; + SlotName[ portuguese_brazilian ] = "ViewTableBoundaries"; + SlotName[ japanese ] = "•\\‚Ì‹«ŠE"; + SlotName[ chinese_simplified ] = "±í¸ñ±ß½ç"; + SlotName[ chinese_traditional ] = "ªí®æÃä¬É"; + SlotName[ arabic ] = "ÍÏæÏ ÇáÌÏæá"; + SlotName[ dutch ] = "Tabelbegrenzingen"; + SlotName[ chinese_simplified ] = "±í¸ñ±ß½ç"; + SlotName[ greek ] = "¼ñéá ðßíáêá"; + SlotName[ korean ] = "Ç¥ °æ°è¼±"; + SlotName[ turkish ] = "Tablo sýnýrlarý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VLINEAL +{ + SlotName = "Vertikales Lineal"; + SlotName [ english ] = "Vertikales Lineal"; + SlotName[ english_us ] = "Vertical Ruler"; + SlotName[ portuguese ] = "Mostrar régua vertical"; + SlotName[ russian ] = "Âåðòèêàëüíàÿ ëèíåéêà"; + SlotName[ dutch ] = "Verticale liniaal"; + SlotName[ french ] = "Règle verticale"; + SlotName[ spanish ] = "Regla vertical"; + SlotName[ italian ] = "Righello verticale"; + SlotName[ danish ] = "Lodret lineal"; + SlotName[ swedish ] = "Vertikal linjal"; + SlotName[ polish ] = "Pionowa linijka"; + SlotName[ portuguese_brazilian ] = "ViewVertRuler"; + SlotName[ japanese ] = "�‚’¼Ù°×"; + SlotName[ chinese_simplified ] = "´¹Ö±±ê³ß"; + SlotName[ chinese_traditional ] = "««ª½¼Ð¤Ø"; + SlotName[ arabic ] = "ãÓØÑÉ ÑÃÓíÉ"; + SlotName[ dutch ] = "Verticale liniaal"; + SlotName[ chinese_simplified ] = "´¹Ö±±ê³ß"; + SlotName[ greek ] = "Êáôáêüñõöïò ÷Üñáêáò"; + SlotName[ korean ] = "¼öÁ÷ ´«±ÝÀÚ"; + SlotName[ turkish ] = "Dikey cetvel"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_VSCROLLBAR +{ + SlotName = "Vertikale Bildlaufleiste"; + SlotName [ english ] = "Vertikale Bildlaufleiste"; + SlotName[ english_us ] = "Vertical Scroll bar"; + SlotName[ portuguese ] = "Barra de deslocamento vertical"; + SlotName[ russian ] = "Âåðòèêàëüíàÿ ïîëîñà ïðîêðóòêè"; + SlotName[ dutch ] = "Verticale schuifbalk"; + SlotName[ french ] = "Barre de défilement verticale"; + SlotName[ spanish ] = "Barra de desplazamiento vertical"; + SlotName[ italian ] = "Barra di scorrimento verticale"; + SlotName[ danish ] = "Lodret rullepanel"; + SlotName[ swedish ] = "Vertikal bildrullningslist"; + SlotName[ polish ] = "Pionowy pasek przewijania obrazu"; + SlotName[ portuguese_brazilian ] = "ViewVertScroll"; + SlotName[ japanese ] = "�‚’¼½¸Û°ÙÊÞ°"; + SlotName[ chinese_simplified ] = "´¹Ö±Ïò¹ö¶¯À¸"; + SlotName[ chinese_traditional ] = "««ª½¼v¹³¨÷¶b"; + SlotName[ arabic ] = "ÔÑíØ ÊÍÑíß ÇáÕÝÍÉ ÑÃÓíÇð"; + SlotName[ dutch ] = "Verticale schuifbalk"; + SlotName[ chinese_simplified ] = "´¹Ö±Ïò¹ö¶¯À¸"; + SlotName[ greek ] = "Êáôáêüñõöç ãñáììÞ êýëéóçò"; + SlotName[ korean ] = "¼öÁ÷ ½ºÅ©·Ñ ¹Ù"; + SlotName[ turkish ] = "Dikey kaydýrma çubuðu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_WRAP_ANCHOR_ONLY +{ + SlotName = "Umlauf erster Absatz"; + SlotName [ english ] = "Umlauf erster Absatz"; + SlotName[ english_us ] = "Wrap First Paragraph"; + SlotName[ portuguese ] = "Ajuste do primeiro parágrafo"; + SlotName[ russian ] = "Îáòåêàíèå ïåðâîãî àáçàöà"; + SlotName[ dutch ] = "Omloop eerste alinea"; + SlotName[ french ] = "Adaptation premier paragraphe"; + SlotName[ spanish ] = "Ajuste del primer párrafo"; + SlotName[ italian ] = "Scorrimento primo paragrafo"; + SlotName[ danish ] = "Ombryd første afsnit"; + SlotName[ swedish ] = "Textanpassning första stycket"; + SlotName[ polish ] = "Obieg pierwszego akapitu"; + SlotName[ portuguese_brazilian ] = "FrameWrapAnchorOnly"; + SlotName[ japanese ] = "�Å�‰‚Ì’i—Ž‚Å�Ü‚è•Ô‚µ"; + SlotName[ chinese_simplified ] = "»·ÈƵÚÒ»¸ö¶ÎÂä"; + SlotName[ chinese_traditional ] = "²Ä¤@¬q¸¨´«¦æ"; + SlotName[ arabic ] = "ÇáÊÝÇÝ ÇáÝÞÑÉ ÇáÃæáì"; + SlotName[ dutch ] = "Omloop eerste alinea"; + SlotName[ chinese_simplified ] = "»·ÈƵÚÒ»¸ö¶ÎÂä"; + SlotName[ greek ] = "Áíáäßðëùóç ðñþôçò ðáñáãñÜöïõ"; + SlotName[ korean ] = "ù ´Ü¶ô ¼øÈ¯"; + SlotName[ turkish ] = "Ýlk paragrafta metin daðýlýmý"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo SID_ATTR_CHAR_COLOR_BACKGROUND +{ + SlotName = "Zeichenhintergrund"; + SlotName [ english ] = "Zeichenhintergrund"; + SlotName[ english_us ] = "Highlighting"; + SlotName[ portuguese ] = "Cor de fundo dos caracteres"; + SlotName[ russian ] = "Ïîäöâåòêà"; + SlotName[ dutch ] = "Tekenachtergrond"; + SlotName[ french ] = "Trame de fond"; + SlotName[ spanish ] = "Fondo de carácter"; + SlotName[ italian ] = "Sfondo caratteri"; + SlotName[ danish ] = "Tegnbaggrund"; + SlotName[ swedish ] = "Teckenbakgrund"; + SlotName[ polish ] = "T³o znaków"; + SlotName[ portuguese_brazilian ] = "BackColor"; + SlotName[ japanese ] = "•¶Žš‚Ì”wŒi"; + SlotName[ chinese_simplified ] = "×Ö·û±³¾°"; + SlotName[ chinese_traditional ] = "¦r¤¸­I´º"; + SlotName[ arabic ] = "ÎáÝíÉ ÇáÎØ"; + SlotName[ dutch ] = "Tekenachtergrond"; + SlotName[ chinese_simplified ] = "×Ö·û±³¾°"; + SlotName[ greek ] = "Öüíôï ãñáììáôïóåéñÜò"; + SlotName[ korean ] = "°­Á¶"; + SlotName[ turkish ] = "Vurgu"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo SID_ATTR_CHAR_COLOR_BACKGROUND_EXT +{ + SlotName = "Zeichenhintergrund-Gießkanne"; + SlotName [ english ] = "Zeichenhintergrund-Gießkanne"; + SlotName[ english_us ] = "Highlight Fill"; + SlotName[ portuguese ] = "Cor de fundo da letra"; + SlotName[ russian ] = "Ïîäöâåòêà-Çàëèâêà"; + SlotName[ dutch ] = "Tekenachtergrond gieter"; + SlotName[ french ] = "Trame de fond verseuse"; + SlotName[ spanish ] = "Fondo de carácter"; + SlotName[ italian ] = "Colore sfondo caratteri"; + SlotName[ danish ] = "Tegnbaggrund-fyld"; + SlotName[ swedish ] = "Teckenbakgrundsvattenkanna"; + SlotName[ polish ] = "T³o znaków-Polewaczka"; + SlotName[ portuguese_brazilian ] = "CharBackgroundExt"; + SlotName[ japanese ] = "•¶Žš”wŒi-�…‚â‚è"; + SlotName[ chinese_simplified ] = "×Ö·û±³¾°ÌîÉ«"; + SlotName[ chinese_traditional ] = "¦r¤¸­I´º-¶ñ¦â"; + SlotName[ arabic ] = "ÊÚÈÆÉ ÎáÝíÉ ÇáÎØ"; + SlotName[ dutch ] = "Tekenachtergrond gieter"; + SlotName[ chinese_simplified ] = "×Ö·û±³¾°ÌîÉ«"; + SlotName[ greek ] = "ÐïôéóôÞñé öüíôïõ ÷áñáêôÞñùí"; + SlotName[ korean ] = "ÇÏÀ̶óÀÌÆ® ä¿ì±â"; + SlotName[ turkish ] = "Vurgu renk doldurma"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo SID_ATTR_CHAR_COLOR_EXT +{ + SlotName = "Zeichenfarbe-Gießkanne"; + SlotName [ english ] = "Zeichenfarbe-Gießkanne"; + SlotName[ english_us ] = "Font Color Fill"; + SlotName[ portuguese ] = "Cor de preenchimento"; + SlotName[ russian ] = "Öâåò øðèôòà-Çàëèâêà"; + SlotName[ dutch ] = "Tekenkleur-gieter"; + SlotName[ french ] = "Couleur de caractère - Verseuse"; + SlotName[ spanish ] = "Color de relleno del carácter"; + SlotName[ italian ] = "Colore riempimento carattere"; + SlotName[ danish ] = "Tegnefarve-fyld"; + SlotName[ swedish ] = "Teckenfärgvattenkanna"; + SlotName[ polish ] = "Kolor znaków-Polewaczka"; + SlotName[ portuguese_brazilian ] = "CharColorExt"; + SlotName[ japanese ] = "•¶Žš‚Ì�F-�…‚â‚è"; + SlotName[ chinese_simplified ] = "×Ö·ûÑÕÉ«ÌîÉ«"; + SlotName[ chinese_traditional ] = "¦r¤¸ÃC¦â-¶ñ¦â"; + SlotName[ arabic ] = "ÊÚÈÆÉ ÃáæÇä ÇáÎØ"; + SlotName[ dutch ] = "Tekenkleur-gieter"; + SlotName[ chinese_simplified ] = "×Ö·ûÑÕÉ«ÌîÉ«"; + SlotName[ greek ] = "ÐïôéóôÞñé ÷ñþìáôïò ÷áñáêôÞñùí"; + SlotName[ korean ] = "±Û²Ã »ö ä¿ì±â"; + SlotName[ turkish ] = "Yazýtipi rengi doldurma"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo SID_ATTR_CHAR_COLOR2 +{ + SlotName = "Zeichenfarbe"; + SlotName [ english ] = "Zeichenfarbe"; + SlotName[ english_us ] = "Font Color"; + SlotName[ portuguese ] = "Cor dos caracteres"; + SlotName[ russian ] = "Öâåò øðèôòà"; + SlotName[ dutch ] = "Tekenkleur"; + SlotName[ french ] = "Couleur de caractères"; + SlotName[ spanish ] = "Color del carácter"; + SlotName[ italian ] = "Colore carattere"; + SlotName[ danish ] = "Tegnfarve"; + SlotName[ swedish ] = "Teckenfärg"; + SlotName[ polish ] = "Kolor znaków"; + SlotName[ portuguese_brazilian ] = "FontColor"; + SlotName[ japanese ] = "Ì«ÝÄ‚Ì�F"; + SlotName[ chinese_simplified ] = "×Ö·ûÑÕÉ«"; + SlotName[ chinese_traditional ] = "¦r¤¸ÃC¦â"; + SlotName[ arabic ] = "áæä ÇáÎØ"; + SlotName[ dutch ] = "Tekenkleur"; + SlotName[ chinese_simplified ] = "×Ö·ûÑÕÉ«"; + SlotName[ greek ] = "×ñþìá ãñáììáôïóåéñÜò"; + SlotName[ korean ] = "±Û²Ã »ö"; + SlotName[ turkish ] = "Yazýtipi rengi"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo SID_TEMPLATE_LOAD +{ + SlotName = "Vorlagen laden"; + SlotName [ english ] = "Vorlagen laden"; + SlotName[ english_us ] = "Load Template"; + SlotName[ portuguese ] = "Carregar estilos"; + SlotName[ russian ] = "Çàãðóçèòü øàáëîíû"; + SlotName[ dutch ] = "Opmaakprofielen laden"; + SlotName[ french ] = "Charger styles"; + SlotName[ spanish ] = "Cargar estilos"; + SlotName[ italian ] = "Carica modelli"; + SlotName[ danish ] = "Indlæs typografier"; + SlotName[ swedish ] = "Ladda mallar"; + SlotName[ polish ] = "£aduj style"; + SlotName[ portuguese_brazilian ] = "FormatStylesLoad"; + SlotName[ japanese ] = "½À²Ù‚̓ǂÝ�ž‚Ý"; + SlotName[ chinese_simplified ] = "×°ÔØÑùʽ"; + SlotName[ chinese_traditional ] = "¸Ë¸ü¼Ë¦¡"; + SlotName[ arabic ] = "ÊÍãíá ÃäãÇØ"; + SlotName[ dutch ] = "Opmaakprofielen laden"; + SlotName[ chinese_simplified ] = "×°ÔØÑùʽ"; + SlotName[ greek ] = "Öüñôùóç ðñïôýðùí"; + SlotName[ korean ] = "·Îµå À¯Çü"; + SlotName[ turkish ] = "Þablonlarý yükle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_COLUMN_SECTION +{ + SlotName = "Bereich einfügen"; + SlotName [ english ] = "Insert Section"; + SlotName[ english_us ] = "Insert Section"; + SlotName[ portuguese ] = "Inserir secção"; + SlotName[ greek ] = "ÅéóáãùãÞ åíüôçôáò"; + SlotName[ dutch ] = "Bereik invoegen"; + SlotName[ french ] = "Insérer une section"; + SlotName[ spanish ] = "Insertar área"; + SlotName[ swedish ] = "Infoga område"; + SlotName[ russian ] = "Âñòàâèòü îáëàñòü"; + SlotName[ italian ] = "Inserisci sezione"; + SlotName[ danish ] = "Indsæt område"; + SlotName[ polish ] = "Wstaw obszar"; + SlotName[ portuguese_brazilian ] = "Insert Section"; + SlotName[ japanese ] = "”͈͂̑}“ü"; + SlotName[ korean ] = "±¸¿ª »ðÀÔ"; + SlotName[ chinese_simplified ] = "²åÈëÇøÓò"; + SlotName[ chinese_traditional ] = "´¡¤J°Ï°ì"; + SlotName[ arabic ] = "ÅÏÑÇÌ äØÇÞ"; + SlotName[ turkish ] = "Bölüm ekle"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_FORMAT_COLUMN +{ + SlotName = "Spalten"; + SlotName [ english ] = "Spalten"; + SlotName[ english_us ] = "Columns"; + SlotName[ portuguese ] = "Colunas"; + SlotName[ greek ] = "ÓôÞëåò"; + SlotName[ dutch ] = "Kolommen"; + SlotName[ french ] = "Colonnes"; + SlotName[ spanish ] = "Columnas"; + SlotName[ swedish ] = "Kolumner"; + SlotName[ russian ] = "Êîëîíêè"; + SlotName[ italian ] = "Colonne"; + SlotName[ danish ] = "Kolonner"; + SlotName[ polish ] = "Kolumny"; + SlotName[ portuguese_brazilian ] = "Spalten"; + SlotName[ japanese ] = "’i‘g‚Ý"; + SlotName[ korean ] = "¿­"; + SlotName[ chinese_simplified ] = "ÁÐ"; + SlotName[ chinese_traditional ] = "Äæ"; + SlotName[ arabic ] = "ÃÚãÏÉ"; + SlotName[ turkish ] = "Sütun"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_INSERT_MULTI_TOX +{ + SlotName = "Verzeichnis einfügen"; + SlotName [ english ] = "Insert Table of"; + + SlotName[ english_us ] = "Insert Index"; + SlotName[ portuguese ] = "Inserir índice"; + SlotName[ greek ] = "ÅéóáãùãÞ åõñåôçñßïõ"; + SlotName[ dutch ] = "Index invoegen"; + SlotName[ french ] = "Insérer un index"; + SlotName[ spanish ] = "Insertar índice"; + SlotName[ swedish ] = "Infoga förteckning"; + SlotName[ language_user1 ] = " "; + SlotName[ russian ] = "Âñòàâèòü óêàçàòåëü"; + SlotName[ italian ] = "Inserisci indice"; + SlotName[ danish ] = "Indsæt indeks"; + SlotName[ polish ] = "Wstaw indeks"; + SlotName[ portuguese_brazilian ] = "Insert Table of"; + SlotName[ japanese ] = "�õˆø‚Ì‘}“ü"; + SlotName[ korean ] = "»öÀλðÀÔ"; + SlotName[ chinese_simplified ] = "²åÈëĿ¼"; + SlotName[ chinese_traditional ] = "´¡¤J¥Ø¿ý"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÝåÑÓ"; + SlotName[ turkish ] = "Dizin ekle"; +}; +SfxSlotInfo FN_INSERT_AUTH_ENTRY_DLG +{ + SlotName = "Literaturverzeichniseintrag einfügen"; + SlotName [ english ] = "Insert Authorities entry"; + SlotName[ english_us ] = "Insert Bibliography Entry"; + SlotName[ portuguese ] = "Inserir entrada bibliográfica"; + SlotName[ russian ] = "Âñòàâèòü ýëåìåíò ñïèñêà ëèòåðàòóðû"; + SlotName[ greek ] = "ÐñïóèÞêç åããñáöÞò âéâëéïãñáößáò"; + SlotName[ dutch ] = "Item voor literatuurlijst invoegen"; + SlotName[ french ] = "Insérer une entrée de bibliographie"; + SlotName[ spanish ] = "Insertar entrada de bibliografía"; + SlotName[ italian ] = "Inserisci voce bibliografica"; + SlotName[ danish ] = "Indsæt litteraturlisteelement"; + SlotName[ swedish ] = "Infoga litteraturförteckningspost"; + SlotName[ polish ] = "Dodaj wpis bibliograficzny"; + SlotName[ portuguese_brazilian ] = "Insert Authorities entry"; + SlotName[ japanese ] = "ŽQ�l•¶Œ£‚Ì‘}“ü"; + SlotName[ korean ] = "Âü°í¹®Çå Ç׸ñ »ðÀÔ"; + SlotName[ chinese_simplified ] = "²åÈëÎÄÏ×Ŀ¼ÌõÄ¿"; + SlotName[ chinese_traditional ] = "´¡¤J°Ñ¦Ò¤åÄm¥Ø¿ý"; + SlotName[ arabic ] = "ÅÏÑÇÌ ÅÏÎÇá Ýí ÝåÑÓ ÇáãÑÇÌÚ"; + SlotName[ turkish ] = "Kaynakça giriþi ekle"; + SlotName[ language_user1 ] = " "; +}; + +SfxSlotInfo FN_EDIT_AUTH_ENTRY_DLG +{ + SlotName = "Literaturverzeichniseintrag bearbeiten"; + SlotName [ english ] = "Edit Authorities entry"; + SlotName[ english_us ] = "Edit Bibliography Entry"; + SlotName[ portuguese ] = "Editar entrada bibliográfica"; + SlotName[ russian ] = "Ïðàâêà ýëåìåíòà ñïèñêà ëèòåðàòóðû"; + SlotName[ greek ] = "Åðåîåñãáóßá åããñáöÞò âéâëéïãñáößáò"; + SlotName[ dutch ] = "Item voor literatuurlijst bewerken"; + SlotName[ french ] = "Éditer une entrée de bibliographie"; + SlotName[ spanish ] = "Editar entrada de bibliografía"; + SlotName[ italian ] = "Modifica voce bibliografica"; + SlotName[ danish ] = "Rediger litteraturlisteelement"; + SlotName[ swedish ] = "Redigera litteraturförteckningspost"; + SlotName[ polish ] = "Edytuj wpis bibliograficzny"; + SlotName[ portuguese_brazilian ] = "Edit Authorities entry"; + SlotName[ japanese ] = "ŽQ�l•¶Œ£•\\‚Ì•Ò�W"; + SlotName[ korean ] = "Âü°í¹®Çå Ç׸ñÆíÁý"; + SlotName[ chinese_simplified ] = "±à¼­ÎÄÏ×Ŀ¼ÌõÄ¿"; + SlotName[ chinese_traditional ] = "½s¿è°Ñ¦Ò¤åÄm¥Ø¿ýªº±ø¥Ø"; + SlotName[ arabic ] = "ÊÍÑíÑ ÅÏÎÇá Ýí ÝåÑÓ ÇáãÑÇÌÚ"; + SlotName[ turkish ] = "Kaynakça giriþini düzenle"; + SlotName[ language_user1 ] = " "; +}; + +SfxSlotInfo FN_REMOVE_CUR_TOX +{ + SlotName = "Verzeichnis löschen"; + SlotName [ english ] = "Remove index"; + SlotName[ english_us ] = "Delete index"; + SlotName[ portuguese ] = "Eliminar índice"; + SlotName[ russian ] = "Óäàëèòü óêàçàòåëü"; + SlotName[ greek ] = "ÄéáãñáöÞ åõñåôçñßïõ"; + SlotName[ dutch ] = "Index wissen"; + SlotName[ french ] = "Supprimer l'index"; + SlotName[ spanish ] = "Eliminar índice"; + SlotName[ italian ] = "Rimuovi indice"; + SlotName[ danish ] = "Slet indeks"; + SlotName[ swedish ] = "Radera förteckning"; + SlotName[ polish ] = "Usuñ ideks."; + SlotName[ portuguese_brazilian ] = "Remove index"; + SlotName[ japanese ] = "–ÚŽŸ‚Æ�õˆø‚Ì�í�œ"; + SlotName[ korean ] = "»öÀÎ Á¦°Å"; + SlotName[ chinese_simplified ] = "ɾ³ýĿ¼"; + SlotName[ chinese_traditional ] = "§R°£¥Ø¿ý"; + SlotName[ arabic ] = "ÍÐÝ ÇáÝåÑÓ"; + SlotName[ turkish ] = "Dizini sil"; + SlotName[ language_user1 ] = " "; +}; +SfxSlotInfo FN_EDIT_HYPERLINK +{ + SlotName = "Hyperlink bearbeiten"; + SlotName [ english ] = "Edit hyperlink"; + SlotName[ english_us ] = "Edit hyperlink"; + SlotName[ portuguese ] = "Editar hiperligação"; + SlotName[ russian ] = "Ïðàâêà ãèïåðññûëêè"; + SlotName[ greek ] = "Åðåîåñãáóßá õðåñ-óýíäåóçò"; + SlotName[ dutch ] = "Hyperlink bewerken"; + SlotName[ french ] = "Éditer l'hyperlien"; + SlotName[ spanish ] = "Editar hiperenlace"; + SlotName[ italian ] = "Modifica hyperlink"; + SlotName[ danish ] = "Rediger hyperlink"; + SlotName[ swedish ] = "Redigera hyperlänk"; + SlotName[ polish ] = "Edytuj hiper³¹cze"; + SlotName[ portuguese_brazilian ] = "Edit hyperlink"; + SlotName[ japanese ] = "ʲÊß°ØÝ¸‚Ì•Ò�W"; + SlotName[ korean ] = "ÇÏÀÌÆÛ¸µÅ© ÆíÁý"; + SlotName[ chinese_simplified ] = "±à¼­³¬Á´½Ó"; + SlotName[ chinese_traditional ] = "½s¿è¶W³sµ²"; + SlotName[ arabic ] = "ÊÍÑíÑ ÇáÇÑÊÈÇØ ÇáÊÔÚÈí"; + SlotName[ turkish ] = "Hyperlink'i düzenle"; +}; + + diff --git a/sw/sdi/tabsh.sdi b/sw/sdi/tabsh.sdi new file mode 100644 index 000000000000..a35ba2a7e3e4 --- /dev/null +++ b/sw/sdi/tabsh.sdi @@ -0,0 +1,100 @@ +/*------------------------------------------------------------------------ + + $Workfile: tabsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/tabsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File fuer TabShell + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextTable : BaseTextTable +[ + uuid = "49CE7CA0-111A-101D-9757-6E74207A7520" +] +{ + // hier sollen die Slots eingefuegt werden, die vom StarWriter/WEB + // nicht unterstuetzt werden + + import TextSelection; + + FN_TABLE_SET_READ_ONLY_CELLS // status(final|play) + [ + ExecMethod = Execute; + StateMethod = NoState; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +/* + SvxFmtSplitItem TableSplit SID_ATTR_PARA_SPLIT // status(final|play) + [ + ExecMethod = Execute; + StateMethod = GetState; + GroupId = GID_TABLE ; + ] + SvxFmtKeepItem TableKeepTogether SID_ATTR_PARA_KEEP // status(final|play) + [ + ExecMethod = Execute; + StateMethod = GetState; + GroupId = GID_TABLE ; + ] +*/ +} + + //========================================================================= + +shell SwTableShell : SwBaseShell + +{ + import TextTable[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.98 1998/11/12 16:29:10 MA + #58677# Disable Flag + + + Rev 1.97 12 Nov 1998 17:29:10 MA + #58677# Disable Flag + + Rev 1.96 28 Aug 1997 12:49:52 MBA + Neue Interface-Namen + + Rev 1.95 13 Jun 1997 16:39:58 MA + fix: Kommentar statt if + + Rev 1.94 04 Jun 1997 13:01:04 MA + chg: Keep und Split vorerst 'raus + + Rev 1.93 11 Apr 1997 15:55:58 MA + new: Split+Keep + + Rev 1.92 13 Feb 1997 12:44:46 MA + unnoetige Texte entfernt + + Rev 1.91 27 Jan 1997 16:38:16 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.90 23 Jan 1997 14:30:12 OS + Ableitung von _Table + + Rev 1.89 18 Jan 1997 15:32:34 OS + neu: CellName an Tabellen + + Rev 1.88 15 Jan 1997 14:56:26 MA + chg: State fuer merge + + Rev 1.87 09 Jan 1997 15:53:46 OS + neue Slots fuer Zellen/Spalten/Zeilen verschieben/einfuegen/loeschen + + Rev 1.86 20 Dec 1996 14:34:20 OS + V-Alignment auch aus dem Basic + + Rev 1.85 18 Dec 1996 14:53:20 OS + BoxAlign eingebaut + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/textsh.sdi b/sw/sdi/textsh.sdi new file mode 100644 index 000000000000..a78f08ee8c4e --- /dev/null +++ b/sw/sdi/textsh.sdi @@ -0,0 +1,214 @@ +/*------------------------------------------------------------------------ + + $Workfile: TEXTSH.SDI $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/textsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File Textshell fuer Sw3 + + (c) Copyright 1995 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + + + +/* +F23BA0A1-73A0-11d0-89CA-008029E4B0B1 +F23BA0A2-73A0-11d0-89CA-008029E4B0B1 +F23BA0A3-73A0-11d0-89CA-008029E4B0B1 +F23BA0A4-73A0-11d0-89CA-008029E4B0B1 +F23BA0A5-73A0-11d0-89CA-008029E4B0B1 +F23BA0A6-73A0-11d0-89CA-008029E4B0B1 +F23BA0A7-73A0-11d0-89CA-008029E4B0B1 +F23BA0A8-73A0-11d0-89CA-008029E4B0B1 + + + */ + +interface Text : BaseText +[ + uuid = "1BD56200-111A-101D-9757-6E74207A7520" +] +{ + FN_INSERT_FRAME_INTERACT // status() + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Cachable ; + ] + // hier sollen die Slots eingefuegt werden, die vom StarWriter/WEB + // nicht unterstuetzt werden + + import TextSelection; + + /*-----------------24.01.97 08.13------------------- + Spezielle Feldbefehle +--------------------------------------------------*/ + + FN_INSERT_FLD_TOPIC + [ + ExecMethod = ExecField ; + StateMethod = StateField ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ReadOnlyDoc = FALSE ; + ] + /*-----------------24.01.97 08.13------------------- + Ende Spezielle Feldbefehle +--------------------------------------------------*/ + + /*-----------------24.01.97 07.36------------------- + Verzeichnisse +--------------------------------------------------*/ + + /* +enum TOXTypes +{ + TOX_INDEX, + TOX_USER, + TOX_CONTENT +}; + + */ + + FN_INSERT_IDX_ENTRY_DLG // status(final|play) + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + + FN_INSERT_AUTH_ENTRY_DLG + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + FN_EDIT_AUTH_ENTRY_DLG + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + FN_EDIT_IDX_ENTRY_DLG // status(final|play) + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + FN_INSERT_MULTI_TOX // status(final|play) + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + FN_REMOVE_CUR_TOX + [ + ExecMethod = ExecIdx ; + StateMethod = GetIdxState ; + ] + FN_IDX_MARK_TO_IDX // status(final|play) + [ + ExecMethod = ExecIdx ; + ] + + /*-----------------24.01.97 08.01------------------- + Absatzeinstellungen +--------------------------------------------------*/ + + /*-----------------24.01.97 08.01------------------- + Ende Absatzeinstellungen +--------------------------------------------------*/ + +} + +shell SwTextShell : SwBaseShell +{ + import Text[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.239 2000/06/20 14:47:52 os + #70060# less occurences of columns in HTML + + Revision 1.238 2000/05/26 07:06:19 os + old SW Basic API Slots removed + + Revision 1.237 2000/02/22 14:49:18 os + #72894# footnote option dialog in HTML documents + + Revision 1.236 2000/02/10 11:57:08 os + #72894# fields pageno, pagecount, title and insert footnote enabled in SW/Web + + Revision 1.235 2000/01/13 09:20:14 os + #71814# FN_INSERT_IDX_ENTRY allowed on protected cursor + + Revision 1.234 1999/12/10 15:16:35 os + #70711# readonly check for index entries now in GetIdxState + + Revision 1.233 1999/10/15 11:25:59 os + new: FN_REMOVE_TOX + + Revision 1.232 1999/09/15 13:56:36 os + dialog for authorities + + Revision 1.231 1999/09/10 08:51:10 jp + FormatFootnoteDialog: dont disable by protected cursor + + Revision 1.230 1999/07/30 11:14:16 OS + indexes: check readonly in status method + + + Rev 1.229 30 Jul 1999 13:14:16 OS + indexes: check readonly in status method + + Rev 1.228 21 Jun 1999 09:56:24 OS + extended indexes + + Rev 1.227 23 Mar 1999 12:15:10 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.226 05 Feb 1999 17:04:48 OS + #61547# InsertEndnoteDirect + + Rev 1.225 22 Jan 1999 11:54:08 JP + Task #58677#: Crsr in Readonly Bereichen zulassen + + Rev 1.224 12 Nov 1998 17:29:18 MA + #58677# Disable Flag + + Rev 1.223 06 Apr 1998 09:45:00 OS + INSERT_FRAME_INTERACT fuer manche HTML-Exports erlaubt + + Rev 1.222 28 Aug 1997 12:53:10 MBA + Neue Interface-Namen + + Rev 1.221 25 Jul 1997 11:31:04 AMA + Opt: GroupId und ConfigName aufgeraeumt + + Rev 1.220 13 Feb 1997 12:44:56 MA + unnoetige Texte entfernt + + Rev 1.219 05 Feb 1997 13:26:50 OS + Blocksatz auch wieder fuer Web + + Rev 1.218 04 Feb 1997 13:40:20 HJS + merge 04.02.97 + + Rev 1.217 28 Jan 1997 13:27:40 HJS + merge 28.01.97 + + Rev 1.216 24 Jan 1997 14:58:28 OS + nicht-Web-Slots verschoben + + Rev 1.215 23 Jan 1997 14:31:24 OS + Ableitung von _Text + + Rev 1.214 21 Jan 1997 12:32:40 HJS + merge 21.01.97 + + Rev 1.213 15 Jan 1997 16:05:54 OM + Neue OLE-Dialog + + Rev 1.212 14 Jan 1997 13:43:24 JP + SID_INC_INDENT/_DEC: StatusMethode + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/viewsh.sdi b/sw/sdi/viewsh.sdi new file mode 100644 index 000000000000..f074d44d6182 --- /dev/null +++ b/sw/sdi/viewsh.sdi @@ -0,0 +1,305 @@ +/*------------------------------------------------------------------------ + + $Workfile: viewsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/viewsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File ViewShell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface TextInTable : Selection +[ uuid = "63C33940-69D8-101D-9757-C667E8298000" ] +{ + import Text; + import TextTable; +} + +interface ListInTable : Selection +[ uuid="7F1A6E20-69D8-101D-9757-C667E8298000" ] +{ + import Text; + import TextList; + import TextTable; +} + +interface ListInText : Selection +[ uuid = "8A4C07E0-69D8-101D-9757-C667E8298000"] +{ + import TextList; + import Text; +} + +interface TextEditView : BaseTextEditView +[ + uuid = "09782660-111A-101D-9757-6E74207A7520" +] +{ + // Slots, die nicht in der WebDocShell gebraucht werden + FN_INSERT_OBJ_CTRL + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Export = FALSE ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_CAPTION // status() + [ + ExecMethod = ExecDlgExt ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_EDIT_FOOTNOTE // status(final|play) + [ + ExecMethod = ExecDlgExt ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_HYPHENATE_OPT_DLG // status(final|play) + [ + ExecMethod = ExecLingu ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_CHANGE_PAGENUM // status(final) + [ + ExecMethod = ExecDlg ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SvxDrawToolItem DrawSelect SID_INSERT_DRAW // status() + [ + ExecMethod = ExecDraw ; + StateMethod = GetDrawState ; + ] + SfxBoolItem CreateControl SID_FM_CREATE_CONTROL // status() + [ + ExecMethod = ExecDraw ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + //========================================================================= + +shell SwView : SfxViewShell + +{ + import TextEditView [Automation]; +// import TextPage "Page"; +// import SearchSettings; +// import SearchAttributes; +// import ReplaceAttributes; +} + +interface TextPrintPreview : View +[ uuid = "1622A480-111A-101D-9757-6E74207A7520" ] +{ + FN_REFRESH_VIEW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_CHAR_LEFT // status(final|play) + [ + ExecMethod = Execute; + StateMethod = NoState ; + ] + FN_CHAR_RIGHT // status(final|play) + [ + ExecMethod = Execute; + StateMethod = NoState ; + ] + FN_LINE_UP // status(final|play) + [ + ExecMethod = Execute; + StateMethod = NoState ; + ] + FN_LINE_DOWN // status(final|play) + [ + ExecMethod = Execute; + StateMethod = NoState ; + ] + FN_PAGEUP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_PAGEDOWN // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_START_OF_DOCUMENT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_END_OF_DOCUMENT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_SHOW_TWO_PAGES // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_SHOW_FOUR_PAGES // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_PREVIEW_PRINT_OPTIONS //status() + [ + ExecMethod = Execute ; + ] + FN_PRINT_PAGEPREVIEW // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_PRINTDOC // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_PRINTDOCDIRECT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_PRINTPREVIEW // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_PREVIEW_ZOOM + [ + ExecMethod = Execute ; + ] + SID_UNDO // status() + [ + StateMethod = StateUndo ; + ] + SID_REDO // status() + [ + StateMethod = StateUndo ; + ] + SID_REPEAT // status() + [ + StateMethod = StateUndo ; + ] + //--------------------------------------------------------------------- + //Ab hier Statusleiste + FN_STAT_ZOOM // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_ATTR_ZOOM // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + FN_STAT_PAGE // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + //---------------------------------------------- + //End mit Statusleiste +} + + //========================================================================= + +shell SwPagePreView : SfxViewShell +{ + import TextPrintPreview[Automation]; +} + + + +/* + +9D84FD80-69D8-101D-9757-C667E8298000 + +A53B7A40-69D8-101D-9757-C667E8298000 + +AA3EBDE0-69D8-101D-9757-C667E8298000 + + + + */ + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.245 2000/08/07 11:49:25 jp + PagePreView replace the current view + + Revision 1.244 2000/05/26 07:06:19 os + old SW Basic API Slots removed + + Revision 1.243 2000/05/10 12:00:10 os + Basic API removed + + Revision 1.242 1998/11/12 16:28:58 MA + #58677# Disable Flag + + + Rev 1.241 12 Nov 1998 17:28:58 MA + #58677# Disable Flag + + Rev 1.240 29 Sep 1998 14:35:18 OS + #57281#, #57264# Zoom der Preview mit Controller, Preview-Close ueber eigenen Slot + + Rev 1.239 21 Aug 1998 15:44:10 OS + Seitendruck PagePreview #55252# + + Rev 1.238 10 Mar 1998 14:22:38 OM + Konstruktionsmodul fuer Forms + + Rev 1.237 30 Oct 1997 15:16:46 JP + neu: LineUp/-Down und CharLeft/CharRight fuer PagePreView + + Rev 1.236 28 Aug 1997 12:37:34 MBA + Neue Interface-Namen + + Rev 1.235 14 Apr 1997 16:02:58 OS + neu: SearchAttributes und ReplaceAttributes + + Rev 1.234 24 Feb 1997 16:56:32 OM + Silbentrennung in Draw-Objekten + + Rev 1.233 13 Feb 1997 12:44:50 MA + unnoetige Texte entfernt + + Rev 1.232 04 Feb 1997 13:42:20 HJS + merge 04.02.97 + + Rev 1.231 30 Jan 1997 12:40:46 HJS + quickmerge 30.01.97 + + Rev 1.230 28 Jan 1997 16:37:02 OS + DrawSelect nicht im WebWriter + + Rev 1.229 27 Jan 1997 16:37:34 OS + Web-Slots aus den allg. interfaces raus + + Rev 1.228 23 Jan 1997 08:35:04 OS + Ableitung von __View + + Rev 1.227 21 Jan 1997 12:31:42 HJS + merge 21.01.97 + + Rev 1.226 17 Jan 1997 13:08:24 OS + alte Slot-defines entfernt, xxxConfig fuer FN_UPDATE_TOX + + Rev 1.225 14 Jan 1997 12:12:26 HJS + merge 14.01.97 + + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wbasesh.sdi b/sw/sdi/wbasesh.sdi new file mode 100644 index 000000000000..1d17dfef524d --- /dev/null +++ b/sw/sdi/wbasesh.sdi @@ -0,0 +1,48 @@ +/*----------------------------------------------------------------------- + + $Workfile: WBASESH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wbasesh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwWebBaseShell fuer StarWriter/WEB + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebSelection : BaseTextSelection +[ + Automation = FALSE; +] +{ + // hier kommt nur dann etwas hinein, wenn es im + // kompletten StarWriter nicht benoetigt wird +} + +shell SwWebBaseShell +{ + import WebSelection[Automation]; + import Interior "Interior"; + import Shadow "Shadow"; + +} +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.3 1997/08/28 10:52:44 MBA + Neue Interface-Namen + + + Rev 1.2 28 Aug 1997 12:52:44 MBA + Neue Interface-Namen + + Rev 1.1 23 Jan 1997 14:41:16 OS + jetzt SwWebBaseShell + + Rev 1.0 23 Jan 1997 08:41:06 OS + Initial revision. + + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/wbeziers.sdi b/sw/sdi/wbeziers.sdi new file mode 100644 index 000000000000..464bdc49e62d --- /dev/null +++ b/sw/sdi/wbeziers.sdi @@ -0,0 +1,38 @@ +/*------------------------------------------------------------------------ + + $Workfile: wbeziers.idl $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wbeziers.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwBezierShell fuer StarWriter/Web + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface Bezier : _Bezier +[ uuid = "68EF7EA0-6876-11D0-A887-008029E86826" ] +{ +} + +shell SwBezierShell: SwBaseShell +{ + import Bezier[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.2 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.1 1997/01/23 13:48:58 OS + Initial revision. + + + Rev 1.0 23 Jan 1997 14:48:58 OS + Initial revision. + + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wdocsh.sdi b/sw/sdi/wdocsh.sdi new file mode 100644 index 000000000000..a0789f713174 --- /dev/null +++ b/sw/sdi/wdocsh.sdi @@ -0,0 +1,97 @@ +/*------------------------------------------------------------------------ + + $Workfile: wdocsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wdocsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: SwWebDocShell + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebDocument : BaseTextDocument +[ + uuid = "B47F0DE4-1E1F-11d1-89CA-008029E4B0B1" +] +{ + // hier nur Slots, die der vollstaendige Writer nicht braucht + SID_SOURCEVIEW + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Volatile = TRUE; + Asynchron = TRUE; + ] + + SID_HTML_MODE + [ + StateMethod = GetState ; + ] + + FN_PRINT_LAYOUT + [ + ExecMethod = Execute; + StateMethod = GetState; + ] +} + +shell SwWebDocShell : SfxObjectShell +{ + import WebDocument[Automation]; +} + +shell SwWebGlosDocShell : SwWebDocShell +{ + SID_SAVEDOC // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.12 1999/03/23 11:15:06 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.11 23 Mar 1999 12:15:06 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.10 01 Oct 1997 12:03:12 OS + SID_SOURCEVIEW im Writer immer asynchron #44269# + + Rev 1.9 28 Aug 1997 12:38:46 MBA + Neue Interface-Namen + + Rev 1.8 06 Aug 1997 14:50:48 OS + FN_SOURCEVIEW -> SID_SOURCEVIEW + + Rev 1.7 23 Jul 1997 16:08:00 AMA + Opt: ConfigName etc. aufgeraeumt + + Rev 1.6 16 Jun 1997 13:08:16 MA + #40731# falsches Exportverbot entfernt + + Rev 1.5 09 Jun 1997 14:27:16 MA + chg: Browse-Flag nur noch am Doc + + Rev 1.4 26 May 1997 12:45:10 OS + FN_SOURCEVIEW waehrend des Ladens disabled (Volatile) + + Rev 1.3 12 Feb 1997 11:58:44 JP + neu: WebGlossryDocShell + + Rev 1.2 03 Feb 1997 12:04:06 OS + SID_HTML_MODE an der WebDocShell + + Rev 1.1 30 Jan 1997 15:28:20 OS + SourceView nur noch fuer den Sw/Web + + Rev 1.0 23 Jan 1997 08:42:06 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wdrwbase.sdi b/sw/sdi/wdrwbase.sdi new file mode 100644 index 000000000000..5ceadf58a86b --- /dev/null +++ b/sw/sdi/wdrwbase.sdi @@ -0,0 +1,60 @@ +/*----------------------------------------------------------------------- + + $Workfile: wdrwbase.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wdrwbase.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: WebDrawBaseShell + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebDrawBase : BaseTextDrawBase +[ + Automation = FALSE; +] +{ + import BaseTextSelection; +} + + +shell SwWebDrawBaseShell: SwBaseShell +{ + import WebDrawBase[Automation]; + + SID_OBJECT_ALIGN + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.6 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.5 1998/11/12 16:28:52 MA + #58677# Disable Flag + + + Rev 1.4 12 Nov 1998 17:28:52 MA + #58677# Disable Flag + + Rev 1.3 03 Sep 1997 16:51:40 MBA + Neue Shell + + Rev 1.2 28 Aug 1997 12:37:14 MBA + Neue Interface-Namen + + Rev 1.1 12 Feb 1997 19:00:52 MA + unnoetige Texte + + Rev 1.0 23 Jan 1997 14:43:06 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wformsh.sdi b/sw/sdi/wformsh.sdi new file mode 100644 index 000000000000..75252f1c8df8 --- /dev/null +++ b/sw/sdi/wformsh.sdi @@ -0,0 +1,25 @@ +interface WebDrawForm: BaseTextDrawForm +[ + uuid = "4bac4490-fede-11d1-abff-006097b418c2" +] +{ + import WebDrawBase; +} + +shell SwWebDrawFormShell : SwWebDrawBaseShell +{ + import WebDrawForm[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.1 1998/06/08 16:07:30 OM + Initial revision. + + + Rev 1.0 08 Jun 1998 18:07:30 OM + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wfrmsh.sdi b/sw/sdi/wfrmsh.sdi new file mode 100644 index 000000000000..3450f490183f --- /dev/null +++ b/sw/sdi/wfrmsh.sdi @@ -0,0 +1,50 @@ +/*------------------------------------------------------------------------ + + $Workfile: wfrmSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wfrmsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: FrameShell fuer StarWriter/Web + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebFrame : BaseTextFrame +[ + uuid = "B47F0DE6-1E1F-11d1-89CA-008029E4B0B1" +] +{ + import BaseTextSelection; +} + + + //========================================================================= + +shell SwWebFrameShell : SwBaseShell +{ + import WebFrame[Automation]; +} + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.4 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.3 1997/08/28 10:51:42 MBA + Neue Interface-Namen + + + Rev 1.2 28 Aug 1997 12:51:42 MBA + Neue Interface-Namen + + Rev 1.1 31 Jan 1997 13:24:50 OS + SwWebFrameShell + + Rev 1.0 23 Jan 1997 14:46:46 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wgrfsh.sdi b/sw/sdi/wgrfsh.sdi new file mode 100644 index 000000000000..42837d30ff80 --- /dev/null +++ b/sw/sdi/wgrfsh.sdi @@ -0,0 +1,49 @@ +/*------------------------------------------------------------------------ + + $Workfile: WGRFSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wgrfsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: GraphicShell fuer StarWriter/Web + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebGraphic : BaseTextGraphic +[ + uuid = "B47F0DEB-1E1F-11d1-89CA-008029E4B0B1" +] +{ +} + + + //========================================================================= + +shell SwWebGrfShell : SwBaseShell +{ + import WebGraphic[Automation]; +} + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.4 2000/08/08 13:42:52 os + #77423# separate graphic shell + + Revision 1.3 1997/09/03 14:53:42 MBA + Neue Shell + + + Rev 1.2 03 Sep 1997 16:53:42 MBA + Neue Shell + + Rev 1.1 28 Aug 1997 12:52:56 MBA + Neue Interface-Namen + + Rev 1.0 31 Jan 1997 13:29:24 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wlistsh.sdi b/sw/sdi/wlistsh.sdi new file mode 100644 index 000000000000..e205a0b60a88 --- /dev/null +++ b/sw/sdi/wlistsh.sdi @@ -0,0 +1,48 @@ +/*------------------------------------------------------------------------ + + $Workfile: WLISTSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wlistsh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: IDL - File SwWebBaseShell fuer StarWriter /Web + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebList : BaseTextList +[ + uuid = "B47F0DE3-1E1F-11d1-89CA-008029E4B0B1" +] +{ + import TextSelection; +} + + //========================================================================= + +shell SwWebListShell : SwBaseShell +{ + import WebList[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.4 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.3 1997/09/03 14:52:36 MBA + Neue Shell + + + Rev 1.2 03 Sep 1997 16:52:36 MBA + Neue Shell + + Rev 1.1 28 Aug 1997 12:38:04 MBA + Neue Interface-Namen + + Rev 1.0 23 Jan 1997 14:43:32 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wolesh.sdi b/sw/sdi/wolesh.sdi new file mode 100644 index 000000000000..3caf840718fa --- /dev/null +++ b/sw/sdi/wolesh.sdi @@ -0,0 +1,47 @@ +/*------------------------------------------------------------------------ + + $Workfile: WOLESH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wolesh.sdi,v 1.1.1.1 2000-09-18 17:14:30 hr Exp $ + + Beschreibung: OleShell fuer StarWriter/Web + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebOLEObject : BaseTextOLEObject +[ + uuid = "B47F0DE2-1E1F-11d1-89CA-008029E4B0B1" +] +{ + import WebFrame; +} + + + //========================================================================= + +shell SwWebOleShell : SwWebFrameShell +{ + import WebOLEObject[Automation]; +} + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.3 1997/09/10 06:56:54 OS + OLE importiert Frame + + + Rev 1.2 10 Sep 1997 08:56:54 OS + OLE importiert Frame + + Rev 1.1 28 Aug 1997 12:37:54 MBA + Neue Interface-Namen + + Rev 1.0 31 Jan 1997 13:29:02 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wrtapp.sdi b/sw/sdi/wrtapp.sdi new file mode 100644 index 000000000000..25aebdba00db --- /dev/null +++ b/sw/sdi/wrtapp.sdi @@ -0,0 +1,367 @@ +/*------------------------------------------------------------------------ + + $Workfile: wrtapp.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wrtapp.sdi,v 1.1.1.1 2000-09-18 17:14:31 hr Exp $ + + Beschreibung: IDL - File SwWriterApp - Shell fuer Sw3 + + (c) Copyright 1989 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + + +interface StarWriter : Module +[ + uuid ( "4BF0AA20-E6B9-101C-8A0E-040224007802" ) +] +{ + FN_ENVELOP // status(final|play) + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + + FN_LABEL // status(final|play) + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + FN_BUSINESS_CARD // status() + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + + SID_SW_DOCMAN_PATH // status() + [ + // nur fuer Autopilot + ExecMethod = ExecOther ; + StateMethod = NoState ; + ] + + SID_ATTR_METRIC // status(final|play) + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + ] + SID_SW_AGENDA_WIZZARD + [ + ExecMethod = ExecWizzard ; + StateMethod = NoState ; + ] + SID_SW_FAX_WIZZARD + [ + ExecMethod = ExecWizzard ; + StateMethod = NoState ; + ] + SID_SW_LETTER_WIZZARD + [ + ExecMethod = ExecWizzard ; + StateMethod = NoState ; + ] + SID_SW_MEMO_WIZZARD + [ + ExecMethod = ExecWizzard ; + StateMethod = NoState ; + ] + +/* SID_SW_EDITOPTIONS + [ + ExecMethod = ExecOptionsDialog ; + StateMethod = NoState ; + ] + + SID_SW_ONLINEOPTIONS + [ + ExecMethod = ExecOptionsDialog ; + StateMethod = NoState ; + ]*/ + + FN_QRY // status() + [ + ExecMethod = ExecDB ; + StateMethod = StateIsView ; + ] + + FN_QRY_MERGE // status() + [ + ExecMethod = ExecDB ; + StateMethod = StateIsView ; + DisableFlags="SW_DISABLE_ON_MAILBOX_EDITOR"; + ] + + SID_ATTR_UNDO_COUNT // ole(no) api(final/play) + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + ] + + SID_AUTOSPELL_CHECK + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + ] + + SID_AUTOSPELL_MARKOFF + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + ] + + FN_SET_MODOPT_TBLNUMFMT // status() + [ + ExecMethod = ExecOther ; + StateMethod = StateOther ; + ] + //Extra/Optionen/Ansicht + //Wird zusammen zum Property ViewSettings + FN_VIEW_HIDDEN_PARA + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + ] + + FN_PRINT_LAYOUT + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + ] + // alles ab hier kann weg (Export = FALSE;), wenn die vorangehenden funktionieren + SfxBoolItem Ruler FN_RULER // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + Cachable; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_VIEW_BOUNDS // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + Cachable; + ] + + FN_VIEW_GRAPHIC // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE ; + ] + + FN_VIEW_FIELDS // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + ] + + FN_VIEW_FIELDNAME // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Cachable ; + Export = FALSE; + ] + + FN_VIEW_MARKS // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Cachable ; + Export = FALSE; + ] + + FN_VIEW_META_CHARS // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Cachable ; + Export = FALSE; + ] + + FN_VIEW_TABLEGRID // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + ] + + SID_GRID_VISIBLE + [ + ExecMethod = ExecViewOptions; + StateMethod = StateViewOptions ; + ] + SID_GRID_USE + [ + ExecMethod = ExecViewOptions; + StateMethod = StateViewOptions ; + ] + SID_HELPLINES_MOVE + [ + ExecMethod = ExecViewOptions; + StateMethod = StateViewOptions ; + ] + + FN_VLINEAL // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + FN_HSCROLLBAR // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + ] + + FN_VSCROLLBAR // status() + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + Export = FALSE; + ] + + FN_SHADOWCURSOR // status(final|play) + [ + ExecMethod = ExecViewOptions ; + StateMethod = StateViewOptions ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] +} //end interface Application + +shell SwModule +{ + import StarWriter[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.136 2000/05/26 07:06:20 os + old SW Basic API Slots removed + + Revision 1.135 2000/05/10 12:00:10 os + Basic API removed + + Revision 1.134 1999/11/30 10:19:58 jp + Task #70259#: more entries into to the popup menus + + Revision 1.133 1999/09/28 13:17:11 os + #67382# separate dialog for business cards + + Revision 1.132 1999/06/22 15:36:04 JP + Bug #43028#: disableflag for edit in mailbody + + + Rev 1.131 22 Jun 1999 17:36:04 JP + Bug #43028#: disableflag for edit in mailbody + + Rev 1.130 23 Mar 1999 12:15:22 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.129 17 Feb 1999 15:06:42 OS + #61890# Methoden fuer alte Optionsdialoge geloescht + + Rev 1.128 26 Nov 1998 15:19:08 MA + #59896# Raster usw jetzt an der Application + + Rev 1.127 12 Nov 1998 17:29:00 MA + #58677# Disable Flag + + Rev 1.126 26 Jan 1998 09:12:10 OS + neu: WebViewSettings + + Rev 1.125 22 Dec 1997 17:18:54 MA + ShadowCursor + + Rev 1.124 03 Nov 1997 16:09:42 JP + neu: Optionen/-Page/Basic-Schnittst. fuer ShadowCursor + + Rev 1.123 28 Aug 1997 12:52:34 MBA + Neue Interface-Namen + + Rev 1.122 11 Jun 1997 14:57:44 OS + SpellOnline und HideSpell nicht mehr mit Exportverbot #40529# + + Rev 1.121 09 Jun 1997 14:27:20 MA + chg: Browse-Flag nur noch am Doc + + Rev 1.120 06 Jun 1997 12:42:38 MA + chg: versteckte Absaetze ausblenden + + Rev 1.119 30 May 1997 15:36:46 OS + FN_CONFIG_DLG raus + + Rev 1.118 28 May 1997 08:13:48 OS + SID_ATTR_METRIC am SwModule ausfuehren f�r #40192# + + Rev 1.117 16 Feb 1997 15:23:38 OM + DB-Manager an Ofa verschoben + + Rev 1.116 30 Jan 1997 11:01:00 OS + neu: PRINT_LAYOUT + + Rev 1.115 27 Jan 1997 16:38:38 OS + HtmlMode entfernt + + Rev 1.114 04 Dec 1996 14:01:32 OS + neue Ids fuer Optionendialoge + + Rev 1.113 26 Nov 1996 19:43:42 OS + GetDocManPath mit SID_SW_DOCMAN_PATH + + Rev 1.112 22 Nov 1996 13:03:46 OS + neue Ids fuer Wizards + + Rev 1.111 01 Nov 1996 17:59:38 MA + Umstellung zum Module + + Rev 1.110 27 Sep 1996 13:58:28 OS + +StateMethod fuer FN_LABEL + + Rev 1.109 21 Sep 1996 17:36:42 OS + Sot-Umstellung beendet + + Rev 1.108 18 Sep 1996 10:37:14 OM + Slots entfernt + + Rev 1.107 17 Sep 1996 18:17:48 OS + EditOptionsDialog noch nicht in swriter.idl + + Rev 1.106 16 Sep 1996 10:26:50 MBA + Erste Anpassungen an swriter.idl + + Rev 1.105 10 Sep 1996 16:39:44 OS + Slotvereinheitlichung zu, 1. + + Rev 1.104 31 Aug 1996 17:13:02 OS + neue Optionendialoge + + Rev 1.103 20 Aug 1996 17:28:38 HJS + eu... + + Rev 1.102 13 Aug 1996 12:35:16 OS + neu: InternetDialog + + Rev 1.101 06 Aug 1996 11:09:56 OM + Hyperlinkleiste auf bei Readonly-Doks + + Rev 1.100 29 Jul 1996 11:09:18 OS + FN_SET_HTMLMODE -> SID_HTML_MODE + + Rev 1.99 25 Jul 1996 15:26:28 OS + neu: FN_SET_HTMLMODE + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wtabsh.sdi b/sw/sdi/wtabsh.sdi new file mode 100644 index 000000000000..e228dbe51c79 --- /dev/null +++ b/sw/sdi/wtabsh.sdi @@ -0,0 +1,46 @@ +/*------------------------------------------------------------------------ + + $Workfile: WTABSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wtabsh.sdi,v 1.1.1.1 2000-09-18 17:14:31 hr Exp $ + + Beschreibung: IDL - File fuer TabShell StarWriter /Web + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebTable : BaseTextTable +[ uuid = "B47F0DEC-1E1F-11d1-89CA-008029E4B0B1" ] +{ + import BaseTextSelection; +} + + //========================================================================= + +shell SwWebTableShell : SwBaseShell +{ + import WebTable[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.4 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.3 1997/09/03 14:42:08 MBA + Neue Shell + + + Rev 1.2 03 Sep 1997 16:42:08 MBA + Neue Shell + + Rev 1.1 28 Aug 1997 12:53:54 MBA + Neue Interface-Namen + + Rev 1.0 23 Jan 1997 14:42:32 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/sdi/wtextsh.sdi b/sw/sdi/wtextsh.sdi new file mode 100644 index 000000000000..880f5196387b --- /dev/null +++ b/sw/sdi/wtextsh.sdi @@ -0,0 +1,61 @@ +/*------------------------------------------------------------------------ + + $Workfile: WTEXTSH.IDL $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wtextsh.sdi,v 1.1.1.1 2000-09-18 17:14:31 hr Exp $ + + Beschreibung: IDL - File Textshell fuer StarWriter/WEB + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + + +interface WebText : BaseText +[ + uuid = "B47F0DE5-1E1F-11d1-89CA-008029E4B0B1"; +] +{ + FN_INSERT_FRAME_INTERACT_NOCOL + [ + ExecMethod = ExecInsert ; + StateMethod = StateInsert ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + Cachable ; + ] + // hier sollen die Slots eingefuegt werden, die n u r vom StarWriter/WEB + // unterstuetzt werden + import TextSelection; +} + +shell SwWebTextShell : SwBaseShell +{ + import WebText[Automation]; +} + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.5 2000/06/20 14:47:52 os + #70060# less occurences of columns in HTML + + Revision 1.4 2000/05/26 07:06:20 os + old SW Basic API Slots removed + + Revision 1.3 2000/02/01 09:45:00 os + #72282# SwWebBaseShell removed + + Revision 1.2 1997/08/28 10:39:20 MBA + Neue Interface-Namen + + + Rev 1.1 28 Aug 1997 12:39:20 MBA + Neue Interface-Namen + + Rev 1.0 23 Jan 1997 14:41:50 OS + WebTextShell + + +------------------------------------------------------------------------*/ + + diff --git a/sw/sdi/wviewsh.sdi b/sw/sdi/wviewsh.sdi new file mode 100644 index 000000000000..8e22b606abd8 --- /dev/null +++ b/sw/sdi/wviewsh.sdi @@ -0,0 +1,223 @@ +/*------------------------------------------------------------------------ + + $Workfile: wviewsh.sdi $ + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/sdi/wviewsh.sdi,v 1.1.1.1 2000-09-18 17:14:31 hr Exp $ + + Beschreibung: allgemeine interfaces fuer View + + (c) Copyright 1997 - 2000, Star Division GmbH, Hamburg + +------------------------------------------------------------------------*/ + +interface WebTextInTable : Selection +[ uuid = "B47F0DE7-1E1F-11d1-89CA-008029E4B0B1" ] +{ + import WebText; + import WebTable; +} + +interface WebListInTable : Selection +[ uuid="B47F0DE8-1E1F-11d1-89CA-008029E4B0B1" ] +{ + import WebText; + import WebList; + import WebTable; +} + +interface WebListInText : Selection +[ uuid = "B47F0DE9-1E1F-11d1-89CA-008029E4B0B1"] +{ + import WebList; + import WebText; +} + +interface WebEditView : BaseTextEditView +[ + uuid = "B47F0DEA-1E1F-11d1-89CA-008029E4B0B1" +] +{ + SID_DRAW_TEXT_MARQUEE // status() + [ + ExecMethod = ExecDraw ; + StateMethod = GetDrawState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + FN_INSERT_HEADER + [ + ExecMethod = Execute; + StateMethod = GetState ; + ] + FN_INSERT_FOOTER + [ + ExecMethod = Execute; + StateMethod = GetState ; + ] +} + +shell SwWebView : SfxViewShell +{ + import WebEditView [Automation]; +// import SearchSettings; +// import TextPage "Page"; +// import SearchAttributes; +// import ReplaceAttributes; + +} + +interface WebSourceView : View +[ uuid = "95069CE0-69D8-101D-9757-C667E8298000"] +{ + SID_TABLE_CELL // status() + [ + StateMethod = GetState ; + ] + SID_SAVEASDOC // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_SAVEDOC // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_PRINTDOC // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_PRINTDOCDIRECT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_ATTR_CHAR_FONT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_ATTR_CHAR_FONTHEIGHT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + SID_SEARCH_OPTIONS + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_SEARCH_ITEM + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Export = FALSE; + ] + FID_SEARCH_NOW + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + SID_UNDO // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + + SID_REDO // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] + + SID_REPEAT // status() + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_CUT // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Volatile; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_COPY // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + Volatile; + ] + + SID_PASTE // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + DisableFlags="SW_DISABLE_ON_PROTECTED_CURSOR"; + ] + + SID_SELECTALL // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = NoState ; + ] +} + +shell SwSrcView : SfxViewShell + +{ + import WebSourceView [Automation]; +} + + + +/*------------------------------------------------------------------------ + + $Log: not supported by cvs2svn $ + Revision 1.12 2000/05/26 07:06:20 os + old SW Basic API Slots removed + + Revision 1.11 2000/05/10 12:00:11 os + Basic API removed + + Revision 1.10 1999/03/23 11:16:34 MA + #63806# ConfigName und HelpText entfernt + + + Rev 1.9 23 Mar 1999 12:16:34 MA + #63806# ConfigName und HelpText entfernt + + Rev 1.8 12 Nov 1998 17:29:12 MA + #58677# Disable Flag + + Rev 1.7 11 Jul 1998 15:28:30 OS + HTML-Quelltext ins Medium der DocShell speichern #52379# + + Rev 1.6 13 Mar 1998 08:32:26 OS + SID_NEWWINDOW nicht mehr ueberladen + + Rev 1.5 28 Aug 1997 12:52:16 MBA + Neue Interface-Namen + + Rev 1.4 14 Apr 1997 16:03:00 OS + neu: SearchAttributes und ReplaceAttributes + + Rev 1.3 12 Feb 1997 12:19:16 OM + Kopf/Fusszeilen im Webmode + + Rev 1.2 11 Feb 1997 14:04:06 OM + Lauftext im Webmode + + Rev 1.1 10 Feb 1997 17:28:50 OM + Lauftext + + Rev 1.0 23 Jan 1997 08:41:46 OS + Initial revision. + +------------------------------------------------------------------------*/ + diff --git a/sw/source/filter/ascii/ascatr.cxx b/sw/source/filter/ascii/ascatr.cxx new file mode 100644 index 000000000000..bdb0a7398675 --- /dev/null +++ b/sw/source/filter/ascii/ascatr.cxx @@ -0,0 +1,486 @@ +/************************************************************************* + * + * $RCSfile: ascatr.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:53 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifdef PRECOMPILED +#include "filt_pch.hxx" +#endif + +#pragma hdrstop + +#ifndef _HINTIDS_HXX +#include +#endif + +#ifndef _STREAM_HXX //autogen +#include +#endif +#ifndef _SVSTDARR_HXX +#define _SVSTDARR_USHORTS +#include +#endif +#ifndef _SVX_FONTITEM_HXX +#include +#endif + +#ifndef _PAM_HXX +#include +#endif +#ifndef _DOC_HXX +#include +#endif +#ifndef _NDTXT_HXX +#include +#endif +#ifndef _WRTASC_HXX +#include +#endif +#ifndef _TXATBASE_HXX +#include +#endif +#ifndef _FCHRFMT_HXX +#include +#endif +#ifndef _TXTFLD_HXX +#include +#endif +#ifndef _TXTATR_HXX +#include +#endif +#ifndef _FMTFTN_HXX +#include +#endif +#ifndef _CHARFMT_HXX +#include +#endif +#ifndef _FMTFLD_HXX +#include +#endif +#ifndef _FLDBAS_HXX +#include +#endif +#ifndef _FTNINFO_HXX //autogen +#include +#endif + +/* + * Dieses File enthaelt alle Ausgabe-Funktionen des ASCII-Writers; + * fuer alle Nodes, Attribute, Formate und Chars. + */ + +void lcl_WriteString( SvStream& rOut, const String& rStr, + rtl_TextEncoding eSrcSet, rtl_TextEncoding eDest ); + +class SwASC_AttrIter +{ + SvPtrarr aTxtAtrArr; + SvUShorts aChrSetArr; + SwASCWriter& rWrt; + const SwTxtNode& rNd; + xub_StrLen nAktSwPos; + rtl_TextEncoding eNdChrSet; + + xub_StrLen SearchNext( xub_StrLen nStartPos ); + BOOL SetCharSet( const SwTxtAttr& rTxtAttr, BOOL bStart ); + +public: + SwASC_AttrIter( SwASCWriter& rWrt, const SwTxtNode& rNd, xub_StrLen nStt ); + + void NextPos() { nAktSwPos = SearchNext( nAktSwPos + 1 ); } + + xub_StrLen WhereNext() const { return nAktSwPos; } + rtl_TextEncoding GetNextCharSet() const; + rtl_TextEncoding GetNodeCharSet() const { return eNdChrSet; } + + BOOL OutAttr( xub_StrLen nSwPos, rtl_TextEncoding eChrSet ); +}; + + +SwASC_AttrIter::SwASC_AttrIter( SwASCWriter& rWr, const SwTxtNode& rTxtNd, + xub_StrLen nStt ) + : rWrt( rWr ), rNd( rTxtNd ), nAktSwPos( 0 ), + aTxtAtrArr( 0, 4 ), aChrSetArr( 0, 4 ) +{ + // Attributwechsel an Pos 0 wird ignoriert, da davon ausgegangen + // wird, dass am Absatzanfang sowieso die Attribute neu ausgegeben + // werden. + eNdChrSet = ((SvxFontItem&)rNd.SwCntntNode::GetAttr( + RES_CHRATR_FONT )).GetCharSet(); + nAktSwPos = SearchNext( nStt + 1 ); +} + +rtl_TextEncoding SwASC_AttrIter::GetNextCharSet() const +{ + if( aChrSetArr.Count() ) + return (rtl_TextEncoding )aChrSetArr[ aChrSetArr.Count() - 1 ]; + return eNdChrSet; +} + +xub_StrLen SwASC_AttrIter::SearchNext( xub_StrLen nStartPos ) +{ + register xub_StrLen nMinPos = STRING_MAXLEN; + const SwpHints* pTxtAttrs = rNd.GetpSwpHints(); + if( pTxtAttrs ) + { + register USHORT i; + register xub_StrLen nPos; + const xub_StrLen * pPos; + +// kann noch optimiert werden, wenn ausgenutzt wird, dass die TxtAttrs +// nach der Anfangsposition geordnet sind. Dann muessten +// allerdings noch 2 Indices gemerkt werden + for( i = 0; i < pTxtAttrs->Count(); i++ ) + { + const SwTxtAttr* pHt = (*pTxtAttrs)[i]; + nPos = *pHt->GetStart(); // gibt erstes Attr-Zeichen + pPos = pHt->GetEnd(); + + if( nPos >= nStartPos && nPos <= nMinPos && + ( !pPos || SetCharSet( *pHt, TRUE ) ) ) + nMinPos = nPos; + + if( pPos ? ( (nPos = *pPos) >= nStartPos && nPos <= nMinPos && + SetCharSet( *pHt, FALSE ) ) + : (( ++nPos ) >= nStartPos && nPos < nMinPos) ) + nMinPos = nPos; + } + } + return nMinPos; +} + +BOOL SwASC_AttrIter::SetCharSet( const SwTxtAttr& rAttr, BOOL bStart ) +{ + void* p = 0; + rtl_TextEncoding eChrSet; + const SfxPoolItem& rItem = rAttr.GetAttr(); + switch( rItem.Which() ) + { + case RES_CHRATR_FONT: + p = (void*)&rAttr; + eChrSet = ((SvxFontItem&)rItem).GetCharSet(); + break; + + case RES_TXTATR_CHARFMT: + { + const SfxPoolItem* pItem; + if( ((SwFmtCharFmt&)rItem).GetCharFmt() && SFX_ITEM_SET == + ((SwFmtCharFmt&)rItem).GetCharFmt()->GetItemState( + RES_CHRATR_FONT, TRUE, &pItem )) + { + eChrSet = ((SvxFontItem*)pItem)->GetCharSet(); + p = (void*)&rAttr; + } + } + break; + } + + if( p ) + { + USHORT nPos; + if( bStart ) + { + nPos = aChrSetArr.Count(); + aChrSetArr.Insert( eChrSet, nPos ); + aTxtAtrArr.Insert( p, nPos ); + } + else if( USHRT_MAX != ( nPos = aTxtAtrArr.GetPos( p )) ) + { + aTxtAtrArr.Remove( nPos ); + aChrSetArr.Remove( nPos ); + } + } + return 0 != p; +} + +BOOL SwASC_AttrIter::OutAttr( xub_StrLen nSwPos, rtl_TextEncoding eChrSet ) +{ + BOOL bRet = FALSE; + const SwpHints* pTxtAttrs = rNd.GetpSwpHints(); + if( pTxtAttrs ) + { + register USHORT i; + for( i = 0; i < pTxtAttrs->Count(); i++ ) + { + const SwTxtAttr* pHt = (*pTxtAttrs)[i]; + const xub_StrLen * pEnd = pHt->GetEnd(); + if( !pEnd && nSwPos == *pHt->GetStart() ) + { + bRet = TRUE; + String sOut; + switch( pHt->Which() ) + { + case RES_TXTATR_FIELD: + sOut = ((SwTxtFld*)pHt)->GetFld().GetFld()->Expand(); + break; + + case RES_TXTATR_HARDBLANK: + sOut = ((SwTxtHardBlank*)pHt)->GetChar(); + break; + + case RES_TXTATR_FTN: + { + const SwFmtFtn& rFtn = pHt->GetFtn(); + if( rFtn.GetNumStr().Len() ) + sOut = rFtn.GetNumStr(); + else if( rFtn.IsEndNote() ) + sOut = rWrt.pDoc->GetEndNoteInfo().aFmt. + GetNumStr( rFtn.GetNumber() ); + else + sOut = rWrt.pDoc->GetFtnInfo().aFmt. + GetNumStr( rFtn.GetNumber() ); + } + break; + } + if( sOut.Len() ) + ::lcl_WriteString( rWrt.Strm(), sOut, eChrSet, + rWrt.GetAsciiOptions().GetCharSet() ); + } + else if( nSwPos < *pHt->GetStart() ) + break; + } + } + return bRet; +} + + +//------------------------ +/* Ausgabe der Nodes */ +//------------------------ + +static Writer& OutASC_SwTxtNode( Writer& rWrt, SwCntntNode& rNode ) +{ + const SwTxtNode& rNd = (SwTxtNode&)rNode; + + xub_StrLen nStrPos = rWrt.pCurPam->GetPoint()->nContent.GetIndex(); + xub_StrLen nNodeEnde = rNd.Len(), nEnde = nNodeEnde; + BOOL bLastNd = rWrt.pCurPam->GetPoint()->nNode == rWrt.pCurPam->GetMark()->nNode; + if( bLastNd ) + nEnde = rWrt.pCurPam->GetMark()->nContent.GetIndex(); + + SwASC_AttrIter aAttrIter( (SwASCWriter&)rWrt, rNd, nStrPos ); + rtl_TextEncoding eChrSet = aAttrIter.GetNodeCharSet(); + rtl_TextEncoding eSet = rWrt.GetAsciiOptions().GetCharSet(); + + if( !nStrPos ) + ::lcl_WriteString( rWrt.Strm(), rNd.GetNumString(), eChrSet, eSet ); + + String aStr( rNd.GetTxt() ); + if( rWrt.bASCII_ParaAsBlanc ) + aStr.SearchAndReplaceAll( 0x0A, ' ' ); + + do { + xub_StrLen nNextAttr = aAttrIter.WhereNext(); + rtl_TextEncoding eNextChrSet = aAttrIter.GetNextCharSet(); + + if( nNextAttr > nEnde ) + nNextAttr = nEnde; + + if( !aAttrIter.OutAttr( nStrPos, eChrSet )) + ::lcl_WriteString( rWrt.Strm(), + aStr.Copy( nStrPos, nNextAttr - nStrPos ), + eChrSet, eSet ); + nStrPos = nNextAttr; + eChrSet = eNextChrSet; + aAttrIter.NextPos(); + } while( nStrPos < nEnde ); + + if( !bLastNd || + ( !rWrt.bWriteClipboardDoc && !rWrt.bASCII_NoLastLineEnd ) + && !nStrPos && nEnde == nNodeEnde ) + ::lcl_WriteString( rWrt.Strm(), ((SwASCWriter&)rWrt).GetLineEnd(), + RTL_TEXTENCODING_MS_1252, eSet ); + + return rWrt; +} + +void lcl_WriteString( SvStream& rStream, const String& rStr, + rtl_TextEncoding eSrcSet, rtl_TextEncoding eDestSet ) +{ + if( rStr.Len() ) + { + if( RTL_TEXTENCODING_UCS2 == eDestSet ) + rStream.Write( rStr.GetBuffer(), rStr.Len() * sizeof( sal_Unicode )); + else if( RTL_TEXTENCODING_UCS4 == eDestSet ) + { + // ???? + } + else + { + ByteString sOut( rStr, eDestSet ); + rStream << sOut.GetBuffer(); + } + } +} + +/* + * lege hier jetzt die Tabellen fuer die ASCII-Funktions-Pointer auf + * die Ausgabe-Funktionen an. + * Es sind lokale Strukturen, die nur innerhalb der ASCII-DLL + * bekannt sein muessen. + */ + +SwNodeFnTab aASCNodeFnTab = { +/* RES_TXTNODE */ OutASC_SwTxtNode, +/* RES_GRFNODE */ 0, +/* RES_OLENODE */ 0 +}; + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/ascii/ascatr.cxx,v 1.1.1.1 2000-09-18 17:14:53 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.59 2000/09/18 16:04:38 willem.vandorp + OpenOffice header added. + + Revision 1.58 2000/05/08 17:36:58 jp + Changes for Unicode + + Revision 1.57 2000/02/11 14:36:19 hr + #70473# changes for unicode ( patched by automated patchtool ) + + Revision 1.56 1999/11/01 17:49:58 jp + own convert from char to UNICODE char + + Revision 1.55 1999/11/01 11:11:14 jp + call string-convert with the CharSet of the font + + Revision 1.54 1999/08/26 18:34:10 JP + load and save Text with more options (charset/language/lineend/font) + + + Rev 1.53 26 Aug 1999 20:34:10 JP + load and save Text with more options (charset/language/lineend/font) + + Rev 1.52 27 Jun 1998 16:01:50 JP + Writer mit neuen Flags; fuer den ASCII-Writer, etwas aufgeraeumt + + Rev 1.51 27 Jan 1998 19:37:12 HR + Ueberfluessige Klammern weg, HPUX mag sie nicht + + Rev 1.50 25 Nov 1997 18:55:18 MA + includes + + Rev 1.49 03 Nov 1997 14:03:46 MA + precomp entfernt + + Rev 1.48 10 Oct 1997 12:19:46 JP + beim Clipboard das letzte CR/LF nicht schreiben + + Rev 1.47 14 Jan 1997 08:43:32 MA + includes + + Rev 1.46 23 Oct 1996 19:49:00 JP + String Umstellung: [] -> GetChar() + + Rev 1.45 28 Jun 1996 13:59:08 MA + includes + + Rev 1.44 03 Apr 1996 12:32:26 JP + OutSwTxtNode: nur im letzten Node entscheiden, ob CRLF geschrieben wird + + Rev 1.43 26 Mar 1996 15:24:08 JP + Bugfix: unbeannte Zeichen richtig schreiben + + Rev 1.42 13 Feb 1996 19:41:30 JP + Bug #25428#: LineEnd von SV holen und entsp. auswerten + + Rev 1.41 31 Jan 1996 14:27:36 mk + SINIX + + Rev 1.40 24 Nov 1995 17:24:46 OM + PCH->PRECOMPILED + + Rev 1.39 30 Oct 1995 13:03:38 MA + chg: ConvertUnknown direkt eingebaut. + + Rev 1.38 02 Oct 1995 13:10:48 JP + Umstellung auf schreiben verschiedener CodeSets + + Rev 1.37 25 Oct 1994 15:10:22 MA + PreHdr. + + Rev 1.36 21 Jul 1994 09:29:52 JP + OutASC_SwTxtNode: fuer den ZeilenUmbruch im Translate die Laenge vom Node + benutzen und nicht die vom String. Stehen Felder/Nummern/usw. im String + kann es nie passen! + + Rev 1.35 04 Mar 1994 10:58:28 JP + Translate: auf const char* casten. + + Rev 1.34 25 Feb 1994 12:54:46 JP + schreibe mit expandierten Feldern und Numerierung + + Rev 1.33 15 Feb 1994 08:24:10 MI + Filter ab jetzt handsegmentiert + + Rev 1.32 28 Jan 1994 11:28:36 MI + TCOV() entfernt, SW_... nach SEG_... umbenannt + + Rev 1.31 13 Jan 1994 08:28:28 MI + Segmentierung per #define ermoeglicht + + Rev 1.30 12 Jan 1994 11:22:46 MI + Segmentierungs-Probleme + +*************************************************************************/ diff --git a/sw/source/filter/ascii/makefile.mk b/sw/source/filter/ascii/makefile.mk new file mode 100644 index 000000000000..eb6f9e64164d --- /dev/null +++ b/sw/source/filter/ascii/makefile.mk @@ -0,0 +1,94 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.1.1.1 $ +# +# last change: $Author: hr $ $Date: 2000-09-18 17:14:53 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library 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 for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + +PRJ=..$/..$/.. + +PRJNAME=sw +TARGET=ascii + +PROJECTPCH=filt_pch +PROJECTPCHSOURCE=..\filt_1st\filt_pch + +# --- Settings ----------------------------------------------------- + +.INCLUDE : $(PRJ)$/inc$/swpre.mk +.INCLUDE : settings.mk +.INCLUDE : $(PRJ)$/inc$/sw.mk + +# --- Files -------------------------------------------------------- + +CXXFILES = \ + ascatr.cxx \ + parasc.cxx \ + wrtasc.cxx + + + +SLOFILES = \ + $(SLO)$/ascatr.obj \ + $(SLO)$/parasc.obj \ + $(SLO)$/wrtasc.obj + +# --- Tagets ------------------------------------------------------- + +.INCLUDE : target.mk + diff --git a/sw/source/filter/ascii/parasc.cxx b/sw/source/filter/ascii/parasc.cxx new file mode 100644 index 000000000000..b26616ec668b --- /dev/null +++ b/sw/source/filter/ascii/parasc.cxx @@ -0,0 +1,1180 @@ +/************************************************************************* + * + * $RCSfile: parasc.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:53 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifdef PCH +#include "filt_pch.hxx" +#endif + +#ifndef _STREAM_HXX //autogen +#include +#endif + +#pragma hdrstop + +#ifndef _HINTIDS_HXX +#include +#endif + +#ifndef _SFX_PRINTER_HXX +#include +#endif +#ifndef _SVX_FONTITEM_HXX //autogen wg. SvxFontItem +#include +#endif +#ifndef _SVX_LANGITEM_HXX //autogen wg. SvxLanguageItem +#include +#endif +#ifndef _SVX_BRKITEM_HXX //autogen +#include +#endif + +#ifndef _SHELLIO_HXX +#include +#endif +#ifndef _DOC_HXX +#include +#endif +#ifndef _SWTYPES_HXX +#include +#endif +#ifndef _NDTXT_HXX +#include +#endif +#ifndef _PAM_HXX +#include +#endif +#ifndef _FRMATR_HXX +#include +#endif +#ifndef _FLTINI_HXX +#include +#endif +#ifndef _PAGEDESC_HXX +#include +#endif + +#ifndef _SWSWERROR_H +#include +#endif +#ifndef _STATSTR_HRC +#include // ResId fuer Statusleiste +#endif +#ifndef _MDIEXP_HXX +#include // ...Percent() +#endif + +#define ASC_BUFFLEN 4096 + + +#ifdef ASYNCHRON + +class _SvLockBytes +{ + AutoTimer aTimer; + SvStream& rIn; + + ULONG nDataRead; + Link aCallDataRead; + + DECL_STATIC_LINK( _SvLockBytes, DataRead, Timer* ); + +public: + _SvLockBytes( SvStream& rInput, const Link& rCallBack ); + ~_SvLockBytes(); + + ErrCode ReadAt( ULONG nPos, void* pArr, ULONG nCount, ULONG* pReadCnt ); + + SvStream& GetStream() const { return rIn; } +}; + + +// client vom Standard SwPageDesc. Wird dieser geloescht, dann +// der Reader auch beendet werden!! +class SwAsynchLoader : public SvRefBase, public SwClient +{ +protected: + + SwDoc* pDoc; + SwPaM* pPam; + + BOOL bInCall; + _SvLockBytes* pLoader; + + DECL_STATIC_LINK( SwAsynchLoader, NewData, _SvLockBytes* ); + +protected: + virtual void Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ); + virtual ~SwAsynchLoader(); + + virtual ULONG NextData() = 0; + +public: + SwAsynchLoader( SvStream& rIn, const SwPaM& rCrsr ); + + ULONG CallParser(); +}; + +SV_DECL_REF(SwAsynchLoader) +SV_IMPL_REF(SwAsynchLoader) + + +class SwASCIIParser : public SwAsynchLoader +{ + char* pArr, *pStt, *pEnd, *pLastStt; + + long nLineLen; + ULONG nError, nReadCnt, nFileSize; + + const SwAsciiOptions& rOpt; + char cLastCRLF; + + virtual ULONG NextData(); + +protected: + virtual ~SwASCIIParser(); + +public: + SwASCIIParser( SwDoc* pD, const SwPaM& rCrsr, SvStream& rIn, + int bReadNewDoc, const SwAsciiOptions& rOpts); +}; + +SV_DECL_REF(SwASCIIParser) +SV_IMPL_REF(SwASCIIParser) + + +// Aufruf fuer die allg. Reader-Schnittstelle +ULONG AsciiReader::Read( SwDoc &rDoc, SwPaM &rPam, const String & ) +{ + if( !pStrm ) + { + ASSERT( !this, "ASCII-Read ohne Stream" ); + return ERR_SWG_READ_ERROR; + } + + //JP 18.01.96: Alle Ueberschriften sind normalerweise ohne + // Kapitelnummer. Darum hier explizit abschalten + // weil das Default jetzt wieder auf AN ist. + if( !bInsertMode ) + Reader::SetNoOutlineNum( rDoc ); + + SwASCIIParserRef xParser( new SwASCIIParser( &rDoc, rPam, *pStrm, + !bInsertMode, eCodeSet )); + ULONG nRet = xParser->CallParser(); + // nach dem Lesen sofort wieder defaulten + eCodeSet = GetSystemCharSet(); + return ERRCODE_IO_PENDING == nRet ? 0 : nRet; +} + + +/* */ + +SwASCIIParser::SwASCIIParser( SwDoc* pD, const SwPaM& rCrsr, SvStream& rIn, + int bReadNewDoc, CharSet eSrc ) + : SwAsynchLoader( rIn, rCrsr ), + eCodeSet( eSrc ) +{ + pArr = new char [ ASC_BUFFLEN + 1 ]; + + pStt = pEnd = pLastStt = pArr; + + cLastCRLF = 0; + nLineLen = 0; + nError = 0; + nReadCnt = 0; + + rIn.Seek(STREAM_SEEK_TO_END); + rIn.ResetError(); + + nFileSize = rIn.Tell(); + rIn.Seek(STREAM_SEEK_TO_BEGIN); + rIn.ResetError(); + +} + +SwASCIIParser::~SwASCIIParser() +{ + delete pArr; +} + + +ULONG SwASCIIParser::NextData() +{ + SvStream& rInput = pLoader->GetStream(); + do { + if( pStt >= pEnd ) + { + if( pLastStt != pStt ) + { + pDoc->Insert( *pPam, pLastStt, eCodeSet ); + pLastStt = pStt; + } + + // lese einen neuen Block ein + ULONG lGCount; + + if (SVSTREAM_OK != rInput.GetError() || 0 != ( nError = pLoader-> + ReadAt( nReadCnt, pArr, ASC_BUFFLEN, &lGCount )) || + ( rInput.IsEof() && !lGCount )) + { + if( ERRCODE_IO_PENDING != nError || !lGCount ) + break; // aus der WHILE-Schleife heraus + } + + pEnd = pArr + lGCount; + nReadCnt += lGCount; + *pEnd = 0; + pStt = pLastStt = pArr; + + ::SetProgressState( nReadCnt, pDoc->GetDocShell() ); + + if( cLastCRLF ) + { + if( ( 0x0a == *pStt && 0x0d == cLastCRLF ) || + ( 0x0d == *pStt && 0x0a == cLastCRLF )) + pLastStt = ++pStt; + cLastCRLF = 0; + nLineLen = 0; + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + pDoc->SplitNode( *pPam->GetPoint() ); + } + } + + BOOL bIns = TRUE, bSplitNode = FALSE; + switch( *pStt ) + { + case 0: + pEnd = pStt; + bIns = FALSE; + break; + + case 0x0a: + bIns = FALSE; + *pStt = 0; + if( ++pStt == pEnd ) + cLastCRLF = 0x0a; + else + { + if( 0x0d == *pStt ) + pStt++; + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + bSplitNode = TRUE; + } + break; + + case 0x0d: + bIns = FALSE; + *pStt = 0; + if( ++pStt == pEnd ) + cLastCRLF = 0x0d; + else + { + if( 0x0a == *pStt ) + pStt++; + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + bSplitNode = TRUE; + } + break; + + case '\t': break; + + case 0x0c: + { + // dann mal einen harten Seitenumbruch einfuegen + *pStt++ = 0; + if( nLineLen ) + pDoc->Insert( *pPam, pLastStt, eCodeSet ); + pDoc->SplitNode( *pPam->GetPoint() ); + pDoc->Insert( *pPam, SvxFmtBreakItem( + SVX_BREAK_PAGE_BEFORE )); + pLastStt = pStt; + nLineLen = 0; + bIns = FALSE; + } + break; + + case 0x1a: + if( nReadCnt == nFileSize && pStt+1 == pEnd ) + *pStt = 0; + else + *pStt = '#'; // Ersatzdarstellung + break; + + default: + + if( (BYTE)' ' > (BYTE)*pStt ) + // Ctrl-Zchn gefunden ersetze durch '#' + *pStt = '#'; + } + + if( bIns ) + { + if( ( nLineLen >= MAX_ASCII_PARA - 100 ) && + ( ( *pStt == ' ' ) || ( nLineLen >= MAX_ASCII_PARA - 1 ) ) ) + { + char c = *pStt; + *pStt = 0; + pDoc->Insert( *pPam, pLastStt, eCodeSet ); + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + *pStt = c; + } + ++pStt; + ++nLineLen; + } + else if( bSplitNode ) + { + // es wurde ein CR/LF erkannt, also speichere den Text + pDoc->Insert( *pPam, pLastStt, eCodeSet ); + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + } + } while( TRUE ); + + return nError; +} + + +/* */ + +SwAsynchLoader::SwAsynchLoader( SvStream& rIn, const SwPaM& rCrsr ) + : SwClient( 0 ) +{ + bInCall = FALSE; + pDoc = (SwDoc*)rCrsr.GetDoc(); + pPam = new SwPaM( pDoc, *rCrsr.GetPoint() ); + + SwPageDesc& rDesc = pDoc->_GetPageDesc( 0 ); + rDesc.Add( this ); + + pLoader = new _SvLockBytes( rIn, + STATIC_LINK( this, SwAsynchLoader, NewData ) ); +} + +SwAsynchLoader::~SwAsynchLoader() +{ + delete pPam; + delete pLoader; +} + +void SwAsynchLoader::Modify( SfxPoolItem *pOld, SfxPoolItem *pNew ) +{ + switch( pOld ? pOld->Which() : pNew ? pNew->Which() : 0 ) + { + case RES_OBJECTDYING: + if( ((SwPtrMsgPoolItem *)pOld)->pObject == pRegisteredIn ) + { + // dann uns selbst beenden + pRegisteredIn->Remove( this ); + ReleaseRef(); // ansonsten sind wir fertig! + } + break; + } +} + +IMPL_STATIC_LINK( SwAsynchLoader, NewData, _SvLockBytes*, p ) +{ + ULONG nRet = 0; + if( !pThis->bInCall ) // kein mehrfaches Aufrufen + { + pThis->bInCall = TRUE; + + BOOL bModify = pThis->pDoc->IsModified(); + nRet = pThis->NextData(); + if( !bModify ) + pThis->pDoc->ResetModified(); + + if( ERRCODE_IO_PENDING != nRet ) + pThis->ReleaseRef(); // ansonsten sind wir fertig! + + pThis->bInCall = FALSE; + } + + return nRet; +} + + +ULONG SwAsynchLoader::CallParser() +{ + bInCall = TRUE; + AddRef(); + ULONG nRet = NextData(); + if( ERRCODE_IO_PENDING != nRet ) + ReleaseRef(); // ansonsten sind wir fertig! + + // Sind wir im Pending-Status, wird ueber den Callback "geidelt" bis + // alles gelesen ist oder ein Fehler aufgetreten ist! + + // Was passiert dann ??? + + bInCall = FALSE; + return nRet; +} + +/* */ + +_SvLockBytes::_SvLockBytes( SvStream& rInput, const Link& rCallback ) + : rIn( rInput ), aCallDataRead( rCallback ) +{ + nDataRead = 0; + + aTimer.SetTimeout( 1000 ); // jede Sekunde 100 Zeichen lesen + aTimer.SetTimeoutHdl( STATIC_LINK( this, _SvLockBytes, DataRead )); + aTimer.Start(); +} + +_SvLockBytes::~_SvLockBytes() +{ + aTimer.Stop(); +} + +ErrCode _SvLockBytes::ReadAt( ULONG nPos, void* pArr, ULONG nCount, + ULONG* pReadCnt ) +{ + ErrCode nRet = 0; + if( nPos + nCount > nDataRead ) + { + nCount = nDataRead - nPos; + nRet = ERRCODE_IO_PENDING; + } + + if( nCount ) + { + rIn.Seek( nPos ); + *pReadCnt = rIn.Read( pArr, nCount ); + } + else + *pReadCnt = 0; + return rIn.GetError() ? rIn.GetError() + : ( rIn.IsEof() ? 0 : nRet ); +} + +IMPL_STATIC_LINK( _SvLockBytes, DataRead, Timer*, pTimer ) +{ + pThis->nDataRead += 100; + pThis->aCallDataRead.Call( pThis ); + + return 0; +} + +/* */ + +#else + +class SwASCIIParser +{ + SwDoc* pDoc; + SwPaM* pPam; + SvStream& rInput; + sal_Char* pArr; + const SwAsciiOptions& rOpt; + SfxItemSet* pItemSet; + long nFileSize; + BOOL bNewDoc; + + void ReadChars(); + void ReadUnicode(); + +public: + SwASCIIParser( SwDoc* pD, const SwPaM& rCrsr, SvStream& rIn, + int bReadNewDoc, const SwAsciiOptions& rOpts ); + ~SwASCIIParser(); + + ULONG CallParser(); +}; + + +// Aufruf fuer die allg. Reader-Schnittstelle +ULONG AsciiReader::Read( SwDoc &rDoc, SwPaM &rPam, const String & ) +{ + if( !pStrm ) + { + ASSERT( !this, "ASCII-Read ohne Stream" ); + return ERR_SWG_READ_ERROR; + } + + //JP 18.01.96: Alle Ueberschriften sind normalerweise ohne + // Kapitelnummer. Darum hier explizit abschalten + // weil das Default jetzt wieder auf AN ist. + if( !bInsertMode ) + Reader::SetNoOutlineNum( rDoc ); + + SwASCIIParser* pParser = new SwASCIIParser( &rDoc, rPam, *pStrm, + !bInsertMode, aOpt.GetASCIIOpts() ); + ULONG nRet = pParser->CallParser(); + + delete pParser; + // after Read reset the options + aOpt.ResetASCIIOpts(); + return nRet; +} + +void AsciiReader::SetFltName( const String& rFltNm ) +{ + if( 5 <= rFltNm.Len() ) + { + SwAsciiOptions aNewOpts; + switch( rFltNm.GetChar( 4 ) ) + { + case 'D': aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_850 ); + aNewOpts.SetParaFlags( LINEEND_CRLF ); + if( 5 < rFltNm.Len() ) + switch( rFltNm.Copy( 5 ).ToInt32() ) + { + case 437: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_437 ); break; + case 850: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_850 ); break; + case 860: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_860 ); break; + case 861: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_861 ); break; + case 863: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_863 ); break; + case 865: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_865 ); break; + } + break; + + case 'A': aNewOpts.SetCharSet( RTL_TEXTENCODING_MS_1252 ); + aNewOpts.SetParaFlags( LINEEND_CRLF ); + break; + case 'M': aNewOpts.SetCharSet( RTL_TEXTENCODING_APPLE_ROMAN ); + aNewOpts.SetParaFlags( LINEEND_CR ); + break; + case 'X': aNewOpts.SetCharSet( RTL_TEXTENCODING_MS_1252 ); + aNewOpts.SetParaFlags( LINEEND_LF ); + break; + + default: + if( rFltNm.Copy( 4 ).EqualsAscii( "_DLG" )) + { + // use the options + aNewOpts = aOpt.GetASCIIOpts(); + } + } + aOpt.SetASCIIOpts( aNewOpts ); + } +} + + +SwASCIIParser::SwASCIIParser( SwDoc* pD, const SwPaM& rCrsr, SvStream& rIn, + int bReadNewDoc, const SwAsciiOptions& rOpts ) + : pDoc( pD ), rInput( rIn ), rOpt( rOpts ), bNewDoc( bReadNewDoc ), + pItemSet( 0 ) +{ + pPam = new SwPaM( *rCrsr.GetPoint() ); + pArr = new sal_Char [ ASC_BUFFLEN + 1 ]; + + SfxItemSet aDfltSet( pDoc->GetAttrPool(), RES_CHRATR_FONT, + RES_CHRATR_LANGUAGE ); + + // set defaults from the options + if( rOpt.GetLanguage() ) + { + aDfltSet.Put( SvxLanguageItem( (LanguageType)rOpt.GetLanguage(), + RES_CHRATR_LANGUAGE ) ); + } + if( rOpt.GetFontName().Len() ) + { + BOOL bDelete = FALSE; + const SfxFont* pFnt = 0; + if( pDoc->GetPrt() ) + pFnt = pDoc->GetPrt()->GetFontByName( rOpt.GetFontName() ); + + if( !pFnt ) + { + pFnt = new SfxFont( FAMILY_DONTKNOW, rOpt.GetFontName() ); + bDelete = TRUE; + } + + aDfltSet.Put( SvxFontItem( pFnt->GetFamily(), pFnt->GetName(), + aEmptyStr, pFnt->GetPitch(), pFnt->GetCharSet() ) ); + } + + if( aDfltSet.Count() ) + { + if( bNewDoc ) + pDoc->SetDefault( aDfltSet ); + else + pItemSet = new SfxItemSet( aDfltSet ); + } +} + +SwASCIIParser::~SwASCIIParser() +{ + delete pPam; + delete pArr; + delete pItemSet; +} + + +// Aufruf des Parsers +ULONG SwASCIIParser::CallParser() +{ + rInput.Seek(STREAM_SEEK_TO_END); + rInput.ResetError(); + + nFileSize = rInput.Tell(); + rInput.Seek(STREAM_SEEK_TO_BEGIN); + rInput.ResetError(); + + ULONG nError = 0; + ::StartProgress( STR_STATSTR_W4WREAD, 0, nFileSize, pDoc->GetDocShell() ); + + SwPaM* pInsPam = 0; + xub_StrLen nSttCntnt; + if( !bNewDoc ) + { + const SwNodeIndex& rTmp = pPam->GetPoint()->nNode; + pInsPam = new SwPaM( rTmp, rTmp, 0, -1 ); + nSttCntnt = pPam->GetPoint()->nContent.GetIndex(); + } + + if( RTL_TEXTENCODING_UCS2 == rOpt.GetCharSet() ) + ReadUnicode(); + else + ReadChars(); + + if( pInsPam ) + { + if( pItemSet ) + { + // then set over the insert range the defined attributes + *pInsPam->GetMark() = *pPam->GetPoint(); + pInsPam->GetPoint()->nNode++; + SwNode* pNd = pInsPam->GetNode(); + if( pNd->IsCntntNode() ) + pInsPam->GetPoint()->nContent.Assign( + (SwCntntNode*)pNd, nSttCntnt ); + else + pInsPam->GetPoint()->nContent.Assign( 0, 0 ); + + // !!!!! + ASSERT( !this, "Have to change - hard attr. to para. style" ); + pDoc->Insert( *pInsPam, *pItemSet ); + + delete pItemSet, pItemSet = 0; + } + delete pInsPam; + } + + ::EndProgress( pDoc->GetDocShell() ); + return nError; +} + +void SwASCIIParser::ReadChars() +{ + sal_Char *pStt = pArr, *pEnd = pArr, *pLastStt = pArr; + long nReadCnt = 0; + + sal_Char cLastCR = 0; + long nLineLen = 0; + + do { + if( pStt >= pEnd ) + { + if( pLastStt != pStt ) + pDoc->Insert( *pPam, String( pLastStt, rOpt.GetCharSet() )); + + // lese einen neuen Block ein + ULONG lGCount; + if (SVSTREAM_OK != rInput.GetError() || + ((lGCount = rInput.Read(pArr, ASC_BUFFLEN)) == 0)) + break; // aus der WHILE-Schleife heraus + + if( lGCount == ASC_BUFFLEN ) + { + if( RTL_TEXTENCODING_UTF8 == rOpt.GetCharSet() && + 0 != ( pArr[ ASC_BUFFLEN - 1 ] & 0x80 ) ) + { + // check the last char and skip before the start of it + long nBack = 0; + while( 0x80 == ( pArr[ ASC_BUFFLEN - 1 + nBack ] & 0xC0 )) + --nBack; + --nBack; + lGCount += nBack; + rInput.SeekRel( nBack ); + } + else if( RTL_TEXTENCODING_UTF7 == rOpt.GetCharSet() ) + { + // search any char that may not be convertet + long nBack = 0; + sal_Char c; + while( ' ' < ( c = pArr[ ASC_BUFFLEN - 1 + nBack ] ) && + '+' != c ) + --nBack; + if( '+' == c ) + --nBack; + lGCount += nBack; + rInput.SeekRel( nBack ); + } + } + + pEnd = pArr + lGCount; + nReadCnt += lGCount; + *pEnd = 0; + pStt = pLastStt = pArr; + + ::SetProgressState( nReadCnt, pDoc->GetDocShell() ); + + if( cLastCR ) + { + if( 0x0a == *pStt && 0x0d == cLastCR ) + pLastStt = ++pStt; + cLastCR = 0; + nLineLen = 0; + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + pDoc->SplitNode( *pPam->GetPoint() ); + } + } + + BOOL bIns = TRUE, bSplitNode = FALSE; + switch( *pStt ) + { + case 0: + pEnd = pStt; + bIns = FALSE; + break; + + case 0x0a: if( LINEEND_LF == rOpt.GetParaFlags() ) + { + bIns = FALSE; + *pStt = 0; + ++pStt; + + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + bSplitNode = TRUE; + } + break; + + case 0x0d: if( LINEEND_LF != rOpt.GetParaFlags() ) + { + bIns = FALSE; + *pStt = 0; + ++pStt; + + BOOL bChkSplit = FALSE; + if( LINEEND_CRLF == rOpt.GetParaFlags() ) + { + if( pStt == pEnd ) + cLastCR = 0x0d; + else if( 0x0a == *pStt ) + { + ++pStt; + bChkSplit = TRUE; + } + } + else + bChkSplit = TRUE; + + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( bChkSplit && ( !rInput.IsEof() || + !(pEnd == pStt || ( !*pEnd && pEnd == pStt+1 )))) + bSplitNode = TRUE; + } + break; + + case 0x0c: + { + // dann mal einen harten Seitenumbruch einfuegen + *pStt++ = 0; + if( nLineLen ) + { + // Change to charset system!!!! + //rOpt.GetCharSet(); + pDoc->Insert( *pPam, String( pLastStt, + rOpt.GetCharSet() )); + } + pDoc->SplitNode( *pPam->GetPoint() ); + pDoc->Insert( *pPam, SvxFmtBreakItem( + SVX_BREAK_PAGE_BEFORE )); + pLastStt = pStt; + nLineLen = 0; + bIns = FALSE; + } + break; + + case 0x1a: + if( nReadCnt == nFileSize && pStt+1 == pEnd ) + *pStt = 0; + else + *pStt = '#'; // Ersatzdarstellung + break; + + case '\t': break; + + default: + if( (BYTE)' ' > (BYTE)*pStt ) + // Ctrl-Zchn gefunden ersetze durch '#' + *pStt = '#'; + break; + } + + if( bIns ) + { + if( ( nLineLen >= MAX_ASCII_PARA - 100 ) && + ( ( *pStt == ' ' ) || ( nLineLen >= MAX_ASCII_PARA - 1 ) ) ) + { + sal_Char c = *pStt; + *pStt = 0; + + // Change to charset system!!!! + //rOpt.GetCharSet(); + pDoc->Insert( *pPam, String( pLastStt, rOpt.GetCharSet() )); + + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + *pStt = c; + } + ++pStt; + ++nLineLen; + } + else if( bSplitNode ) + { + // es wurde ein CR/LF erkannt, also speichere den Text + + // Change to charset system!!!! + //rOpt.GetCharSet(); + pDoc->Insert( *pPam, String( pLastStt, rOpt.GetCharSet() )); + + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + } + } while( TRUE ); +} + +void SwASCIIParser::ReadUnicode() +{ + BOOL bSwapUnicode = FALSE; + long nReadCnt = 0; + + sal_Int16 nFlag; + rInput >> nFlag; + + if( -2 == nFlag ) + bSwapUnicode = TRUE; // must be swapped + else if( -257 != nFlag ) // notthing to do + rInput.SeekRel( sizeof( nFlag ) ); // no tag at start + + sal_Unicode *pStt = (sal_Unicode*)pArr, *pEnd = pStt, *pLastStt = pStt; + + sal_Unicode cLastCR = 0; + long nLineLen = 0; + + do { + if( pStt >= pEnd ) + { + if( pLastStt != pStt ) + pDoc->Insert( *pPam, String( pLastStt )); + + // lese einen neuen Block ein + ULONG lGCount; + if (SVSTREAM_OK != rInput.GetError() || + ((lGCount = rInput.Read(pArr, ASC_BUFFLEN)) == 0)) + break; // aus der WHILE-Schleife heraus + + pEnd = (sal_Unicode*)(pArr + lGCount); + nReadCnt += lGCount; + *pEnd = 0; + pStt = pLastStt = (sal_Unicode*)pArr; + + if( bSwapUnicode ) + { + sal_Char* pF = pArr, *pN = pArr + 1; + for( ULONG n = 0; n < lGCount; n += 2, pF += 2, pN += 2 ) + { + sal_Char c = *pF; + *pF = *pN; + *pN = c; + } + } + + ::SetProgressState( nReadCnt, pDoc->GetDocShell() ); + + if( cLastCR ) + { + if( 0x0a == *pStt && 0x0d == cLastCR ) + pLastStt = ++pStt; + cLastCR = 0; + nLineLen = 0; + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + pDoc->SplitNode( *pPam->GetPoint() ); + } + } + + BOOL bIns = TRUE, bSplitNode = FALSE; + switch( *pStt ) + { + case 0: + pEnd = pStt; + bIns = FALSE; + break; + + case 0x0a: if( LINEEND_LF == rOpt.GetParaFlags() ) + { + bIns = FALSE; + *pStt = 0; + ++pStt; + + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( !rInput.IsEof() || !(pEnd == pStt || + ( !*pEnd && pEnd == pStt+1 ) ) ) + bSplitNode = TRUE; + } + break; + + case 0x0d: if( LINEEND_LF != rOpt.GetParaFlags() ) + { + bIns = FALSE; + *pStt = 0; + ++pStt; + + BOOL bChkSplit = FALSE; + if( LINEEND_CRLF == rOpt.GetParaFlags() ) + { + if( pStt == pEnd ) + cLastCR = 0x0d; + else if( 0x0a == *pStt ) + { + ++pStt; + bChkSplit = TRUE; + } + } + else + bChkSplit = TRUE; + + // JP 03.04.96: das letze am Ende nehmen wir nicht + if( bChkSplit && ( !rInput.IsEof() || + !(pEnd == pStt || ( !*pEnd && pEnd == pStt+1 )))) + bSplitNode = TRUE; + } + break; + + case 0x0c: + { + // dann mal einen harten Seitenumbruch einfuegen + *pStt++ = 0; + if( nLineLen ) + { + // Change to charset system!!!! + //rOpt.GetCharSet(); + pDoc->Insert( *pPam, String( pLastStt )); + } + pDoc->SplitNode( *pPam->GetPoint() ); + pDoc->Insert( *pPam, SvxFmtBreakItem( + SVX_BREAK_PAGE_BEFORE )); + pLastStt = pStt; + nLineLen = 0; + bIns = FALSE; + } + break; + + case 0x1a: + if( nReadCnt == nFileSize && pStt+1 == pEnd ) + *pStt = 0; + else + *pStt = '#'; // Ersatzdarstellung + break; + + case '\t': break; + + default: + if( ' ' > *pStt ) + // Ctrl-Zchn gefunden ersetze durch '#' + *pStt = '#'; + break; + } + + if( bIns ) + { + if( ( nLineLen >= MAX_ASCII_PARA - 100 ) && + ( ( *pStt == ' ' ) || ( nLineLen >= MAX_ASCII_PARA - 1 ) ) ) + { + sal_Unicode c = *pStt; + *pStt = 0; + + // Change to charset system!!!! + //rOpt.GetCharSet(); + pDoc->Insert( *pPam, String( pLastStt )); + + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + *pStt = c; + } + ++pStt; + ++nLineLen; + } + else if( bSplitNode ) + { + // es wurde ein CR/LF erkannt, also speichere den Text + + pDoc->Insert( *pPam, String( pLastStt )); + + pDoc->SplitNode( *pPam->GetPoint() ); + pLastStt = pStt; + nLineLen = 0; + } + } while( TRUE ); +} + +#endif + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/ascii/parasc.cxx,v 1.1.1.1 2000-09-18 17:14:53 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.25 2000/09/18 16:04:39 willem.vandorp + OpenOffice header added. + + Revision 1.24 2000/08/04 16:25:28 jp + read/write unicode ascii files + + Revision 1.23 2000/05/08 17:37:02 jp + Changes for Unicode + + Revision 1.22 2000/03/16 16:42:31 kz + chg. include to sfx2/printer + + Revision 1.21 1999/10/25 19:26:58 jp + Bug #69048#: dont change LF to # + + Revision 1.20 1999/10/08 16:31:54 jp + Bug #69048#: dont change tab to # + + Revision 1.19 1999/08/26 18:34:10 JP + load and save Text with more options (charset/language/lineend/font) + + + Rev 1.18 26 Aug 1999 20:34:10 JP + load and save Text with more options (charset/language/lineend/font) + + Rev 1.17 23 Jul 1998 11:11:14 JP + Task #52654#: Einfuegen Doc nicht mit einer CrsrShell sondern mit einen PaM + + Rev 1.16 29 Jun 1998 13:01:16 JP + SvxFmtBreakItem ohne Flag! + + Rev 1.15 29 Apr 1998 08:17:14 MIB + MUSS-Aenderung: SvStream::operator!() faellt weg + + Rev 1.14 27 Feb 1998 09:19:56 JP + ObjectDying-MessageItem umbenannt + + Rev 1.13 22 Jan 1998 20:00:10 JP + CTOR des SwPaM umgestellt + + Rev 1.12 30 Oct 1997 17:13:52 AMA + Chg: Kein AutoFlag mehr an Break bzw. PageDesc-Attributen + + Rev 1.11 10 Oct 1997 12:20:22 JP + Warnings vom Ueberlauf entfernt + + Rev 1.10 09 Oct 1997 14:26:02 JP + Umstellung NodeIndex/-Array/BigPtrArray + + Rev 1.9 12 Aug 1997 10:06:46 OS + Header-Umstellung + + Rev 1.8 07 Aug 1997 15:07:08 OM + Headerfile-Umstellung + + Rev 1.7 06 Aug 1997 12:46:52 HJS + includes + + Rev 1.6 13 Dec 1996 12:18:58 JP + Bug #34482#: nach dem Lesen auf SystemCodeSet umschalten + + Rev 1.5 29 Oct 1996 12:10:24 JP + am Doc ist das NodesArray nur noch ueber Get..() zugaenglich + + Rev 1.4 09 Oct 1996 17:58:46 MA + Progress + + Rev 1.3 28 Jun 1996 13:59:08 MA + includes + + Rev 1.2 02 May 1996 11:48:46 JP + zum Testen: asynchrones Laden erweitert + + Rev 1.1 30 Apr 1996 12:09:38 JP + Vorbereitung fuer asynchrones laden + + Rev 1.0 29 Apr 1996 18:11:00 JP + Initial revision. + +*************************************************************************/ + diff --git a/sw/source/filter/ascii/wrtasc.cxx b/sw/source/filter/ascii/wrtasc.cxx new file mode 100644 index 000000000000..463c0ba50560 --- /dev/null +++ b/sw/source/filter/ascii/wrtasc.cxx @@ -0,0 +1,293 @@ +/************************************************************************* + * + * $RCSfile: wrtasc.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:53 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifdef PRECOMPILED +#include "filt_pch.hxx" +#endif + +#pragma hdrstop + +#ifndef _HINTIDS_HXX +#include +#endif + +#ifndef _STREAM_HXX +#include +#endif + +#ifndef _PAM_HXX +#include +#endif +#ifndef _DOC_HXX +#include +#endif +#ifndef _NDTXT_HXX +#include +#endif +#ifndef _MDIEXP_HXX +#include // ...Percent() +#endif +#ifndef _DOCARY_HXX +#include +#endif +#ifndef _FMTCNTNT_HXX //autogen +#include +#endif +#ifndef _FRMFMT_HXX //autogen +#include +#endif +#ifndef _WRTASC_HXX +#include +#endif + +#ifndef _STATSTR_HRC +#include // ResId fuer Statusleiste +#endif + + +//----------------------------------------------------------------- + +SwASCWriter::SwASCWriter( const String& rFltNm ) +{ + SwAsciiOptions aNewOpts; + + switch( 5 <= rFltNm.Len() ? rFltNm.GetChar( 4 ) : 0 ) + { + case 'D': aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_850 ); + aNewOpts.SetParaFlags( LINEEND_CRLF ); + if( 5 < rFltNm.Len() ) + switch( rFltNm.Copy( 5 ).ToInt32() ) + { + case 437: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_437 ); break; + case 850: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_850 ); break; + case 860: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_860 ); break; + case 861: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_861 ); break; + case 863: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_863 ); break; + case 865: aNewOpts.SetCharSet( RTL_TEXTENCODING_IBM_865 ); break; + } + break; + + case 'A': aNewOpts.SetCharSet( RTL_TEXTENCODING_MS_1252 ); + aNewOpts.SetParaFlags( LINEEND_CRLF ); + break; + case 'M': aNewOpts.SetCharSet( RTL_TEXTENCODING_APPLE_ROMAN ); + aNewOpts.SetParaFlags( LINEEND_CR ); + break; + case 'X': aNewOpts.SetCharSet( RTL_TEXTENCODING_MS_1252 ); + aNewOpts.SetParaFlags( LINEEND_LF ); + break; + + default: + if( rFltNm.Copy( 4 ).EqualsAscii( "_DLG" )) + { + // use the options + aNewOpts = GetAsciiOptions(); + } + } + SetAsciiOptions( aNewOpts ); +} + +SwASCWriter::~SwASCWriter() {} + +ULONG SwASCWriter::WriteStream() +{ + sal_Char cLineEnd[ 3 ]; + sal_Char* pCEnd = cLineEnd; + if( bASCII_ParaAsCR ) // falls vorgegeben ist. + *pCEnd++ = '\015'; + else if( bASCII_ParaAsBlanc ) + *pCEnd++ = ' '; + else + switch( GetAsciiOptions().GetParaFlags() ) + { + case LINEEND_CR: *pCEnd++ = '\015'; break; + case LINEEND_LF: *pCEnd++ = '\012'; break; + case LINEEND_CRLF: *pCEnd++ = '\015', *pCEnd++ = '\012'; break; + } + *pCEnd = 0; + + sLineEnd.AssignAscii( cLineEnd ); + + long nMaxNode = pDoc->GetNodes().Count(); + + if( bShowProgress ) + ::StartProgress( STR_STATSTR_W4WWRITE, 0, nMaxNode, pDoc->GetDocShell() ); + + SwPaM* pPam = pOrigPam; + + BOOL bWriteSttTag = bUCS2_WithStartChar && + RTL_TEXTENCODING_UCS2 == GetAsciiOptions().GetCharSet(); + + // gebe alle Bereich des Pams in das ASC-File aus. + do { + BOOL bTstFly = TRUE; + while( pCurPam->GetPoint()->nNode.GetIndex() < pCurPam->GetMark()->nNode.GetIndex() || + (pCurPam->GetPoint()->nNode.GetIndex() == pCurPam->GetMark()->nNode.GetIndex() && + pCurPam->GetPoint()->nContent.GetIndex() <= pCurPam->GetMark()->nContent.GetIndex()) ) + { + SwTxtNode* pNd = pCurPam->GetPoint()->nNode.GetNode().GetTxtNode(); + if( pNd ) + { + // sollten nur Rahmen vorhanden sein? + // (Moeglich, wenn Rahmen-Selektion ins Clipboard + // gestellt wurde) + if( bTstFly && bWriteAll && + // keine Laenge + !pNd->GetTxt().Len() && + // Rahmen vorhanden + pDoc->GetSpzFrmFmts()->Count() && + // nur ein Node im Array + pDoc->GetNodes().GetEndOfExtras().GetIndex() + 3 == + pDoc->GetNodes().GetEndOfContent().GetIndex() && + // und genau der ist selektiert + pDoc->GetNodes().GetEndOfContent().GetIndex() - 1 == + pCurPam->GetPoint()->nNode.GetIndex() ) + { + // dann den Inhalt vom Rahmen ausgeben. + // dieser steht immer an Position 0 !! + SwFrmFmt* pFmt = (*pDoc->GetSpzFrmFmts())[ 0 ]; + const SwNodeIndex* pIdx = pFmt->GetCntnt().GetCntntIdx(); + if( pIdx ) + { + delete pCurPam; + pCurPam = NewSwPaM( *pDoc, pIdx->GetIndex(), + pIdx->GetNode().EndOfSectionIndex() ); + pCurPam->Exchange(); + continue; // while-Schleife neu aufsetzen !! + } + } + else + { + if( bWriteSttTag ) + { + Strm() << short(-257); + bWriteSttTag = FALSE; + } + Out( aASCNodeFnTab, *pNd, *this ); + } + bTstFly = FALSE; // eimal Testen reicht + } + + if( !pCurPam->Move( fnMoveForward, fnGoNode ) ) + break; + + if( bShowProgress ) + ::SetProgressState( pCurPam->GetPoint()->nNode.GetIndex(), + pDoc->GetDocShell() ); // Wie weit ? + + } + } while( CopyNextPam( &pPam ) ); // bis alle Pam bearbeitet + + if( bShowProgress ) + ::EndProgress( pDoc->GetDocShell() ); + + return 0; +} + + +void GetASCWriter( const String& rFltNm, WriterRef& xRet ) +{ + xRet = new SwASCWriter( rFltNm ); +} + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/ascii/wrtasc.cxx,v 1.1.1.1 2000-09-18 17:14:53 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.61 2000/09/18 16:04:39 willem.vandorp + OpenOffice header added. + + Revision 1.60 2000/08/04 16:25:32 jp + read/write unicode ascii files + + Revision 1.59 2000/05/08 17:37:06 jp + Changes for Unicode + + Revision 1.58 2000/03/03 16:23:14 pl + #73771# workaround for c50 intel compiler + + Revision 1.57 1999/08/30 08:01:52 JP + WriteStream - set lineend string + + + Rev 1.56 30 Aug 1999 10:01:52 JP + WriteStream - set lineend string + + Rev 1.55 26 Aug 1999 20:34:10 JP + load and save Text with more options (charset/language/lineend/font) + + Rev 1.54 16 Jun 1999 19:47:26 JP + Change interface of base class Writer + + Rev 1.53 04 May 1999 14:59:40 JP + FilterExportklasse Writer von SvRef abgeleitet, damit sie immer zerstoert wird + + Rev 1.52 27 Jun 1998 16:01:50 JP + Writer mit neuen Flags; fuer den ASCII-Writer, etwas aufgeraeumt + +*************************************************************************/ + + diff --git a/sw/source/filter/ascii/wrtasc.hxx b/sw/source/filter/ascii/wrtasc.hxx new file mode 100644 index 000000000000..25fc7a0fcf60 --- /dev/null +++ b/sw/source/filter/ascii/wrtasc.hxx @@ -0,0 +1,90 @@ +/************************************************************************* + * + * $RCSfile: wrtasc.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:53 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifndef _WRTASC_HXX +#define _WRTASC_HXX + +#ifndef _SHELLIO_HXX +#include +#endif +#ifndef _WRT_FN_HXX +#include +#endif + +extern SwNodeFnTab aASCNodeFnTab; + + +// der ASC-Writer + +class SwASCWriter : public Writer +{ + String sLineEnd; + + virtual ULONG WriteStream(); + +public: + SwASCWriter( const String& rFilterName ); + virtual ~SwASCWriter(); + + const String& GetLineEnd() const { return sLineEnd; } +}; + + +#endif // _WRTASC_HXX diff --git a/sw/source/filter/html/css1atr.cxx b/sw/source/filter/html/css1atr.cxx new file mode 100644 index 000000000000..fac011d27ea5 --- /dev/null +++ b/sw/source/filter/html/css1atr.cxx @@ -0,0 +1,3536 @@ +/************************************************************************* + * + * $RCSfile: css1atr.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:55 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + + +#ifdef PRECOMPILED +#include "filt_pch.hxx" +#endif + +#pragma hdrstop + +#define ITEMID_BOXINFO SID_ATTR_BORDER_INNER +#include "hintids.hxx" + +#ifndef _SV_SVAPP_HXX //autogen +#include +#endif +#ifndef _WRKWIN_HXX //autogen +#include +#endif +#ifndef _SFX_WHITER_HXX //autogen +#include +#endif +#ifndef _SVX_BOXITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ULSPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_UDLNITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CRSDITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BLNKITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CMAPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CMAPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_COLRITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FONTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FHGTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_POSTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_KERNITEM_HXX //autogen +#include +#endif +#ifndef _SVX_WGHTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_LSPCITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ADJITEM_HXX //autogen +#include +#endif +#ifndef _SVX_LRSPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ULSPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BRSHITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BRKITEM_HXX //autogen +#include +#endif +#ifndef _SVX_KEEPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_WIDWITEM_HXX //autogen +#include +#endif +#ifndef _SVX_SPLTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ORPHITEM_HXX //autogen +#include +#endif +#ifndef _XOUTBMP_HXX //autogen +#include +#endif +#ifndef _HTMLOUT_HXX //autogen +#include +#endif +#ifndef _HTMLKYWD_HXX +#include +#endif +#ifndef _SVX_HTMLMODE_HXX //autogen +#include +#endif +#ifndef SVTOOLS_URIHELPER_HXX +#include +#endif +#ifndef _URLOBJ_HXX //autogen +#include +#endif +#ifndef _INTN_HXX //autogen +#include +#endif +#ifndef _BIGINT_HXX //autogen +#include +#endif +#ifndef _UNOTOOLS_CHARCLASS_HXX +#include +#endif + +#ifndef _CHARFMT_HXX //autogen +#include +#endif +#ifndef _FMTCOL_HXX //autogen +#include +#endif +#ifndef _FMTFSIZE_HXX //autogen +#include +#endif +#ifndef _FMTORNT_HXX //autogen +#include +#endif +#ifndef _FMTPDSC_HXX //autogen +#include +#endif +#ifndef _FMTTSPLT_HXX //autogen +#include +#endif +#ifndef _PAGEDESC_HXX //autogen +#include +#endif +#ifndef _FMTANCHR_HXX //autogen +#include +#endif +#ifndef _DOCARY_HXX +#include +#endif +#ifndef _PAM_HXX //autogen +#include +#endif +#ifndef _VIEWSH_HXX //autogen +#include +#endif +#ifndef _VIEWOPT_HXX //autogen +#include +#endif +#ifndef _SWTABLE_HXX //autogen +#include +#endif +// FOOTNOTES +#ifndef _FTNINFO_HXX //autogen +#include +#endif +#ifndef _FTNIDX_HXX //autogen +#include +#endif +#ifndef _TXTFTN_HXX //autogen +#include +#endif +#ifndef _FMTFTN_HXX //autogen +#include +#endif +// FOOTNOTES + +#ifndef _DCONTACT_HXX //autogen +#include +#endif + +#include "doc.hxx" +#include "swerror.h" +#include "charatr.hxx" +#include "paratr.hxx" +#include "frmatr.hxx" +#include "poolfmt.hxx" +#include "fltini.hxx" +#include "css1kywd.hxx" +#include "wrthtml.hxx" +#include "htmlnum.hxx" + +/* + * um nicht immer wieder nach einem Update festzustellen, das irgendwelche + * Hint-Ids dazugekommen sind, wird hier definiert, die Groesse der Tabelle + * definiert und mit der akt. verglichen. Bei unterschieden wird der + * Compiler schon meckern. + * + * diese Section und die dazugeherigen Tabellen muessen in folgenden Files + * gepflegt werden: rtf\rtfatr.cxx, sw6\sw6atr.cxx, w4w\w4watr.cxx + */ +#if !defined(UNX) && !defined(MSC) && !defined(PPC) && !defined(CSET) && !defined(__MWERKS__) && !defined(WTC) + +#define ATTRFNTAB_SIZE 121 +#if ATTRFNTAB_SIZE != POOLATTR_END - POOLATTR_BEGIN +#error Attribut-Tabelle ist ungueltigt. Wurden neue Hint-IDs zugefuegt ?? +#endif + +#endif + +#define HTML_HEADSPACE (12*20) + +#define CSS1_BACKGROUND_ATTR 1 +#define CSS1_BACKGROUND_PAGE 2 +#define CSS1_BACKGROUND_TABLE 3 +#define CSS1_BACKGROUND_FLY 4 +#define CSS1_BACKGROUND_SECTION 5 + +#define CSS1_FRMSIZE_WIDTH 0x01 +#define CSS1_FRMSIZE_VARHEIGHT 0x02 +#define CSS1_FRMSIZE_MINHEIGHT 0x04 +#define CSS1_FRMSIZE_FIXHEIGHT 0x08 +#define CSS1_FRMSIZE_ANYHEIGHT 0x0e +#define CSS1_FRMSIZE_PIXEL 0x10 + + +//----------------------------------------------------------------------- + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_rule_end, " }" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_span_tag_end, "\">" ); +const sal_Char cCSS1_style_opt_end = '\"'; + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sHTML_FTN_fontheight, "57%" ); + +extern SwAttrFnTab aCSS1AttrFnTab; + +static Writer& OutCSS1_SwFmt( Writer& rWrt, const SwFmt& rFmt, + SwDoc *pDoc, SwDoc *pTemplate ); +static Writer& OutCSS1_SwPageDesc( Writer& rWrt, const SwPageDesc& rFmt, + SwDoc *pDoc, SwDoc *pTemplate, + USHORT nRefPoolId, BOOL bExtRef, + BOOL bPseudo=TRUE ); +static Writer& OutCSS1_SwFtnInfo( Writer& rWrt, const SwEndNoteInfo& rInfo, + SwDoc *pDoc, USHORT nNotes, BOOL bEndNote ); +static void OutCSS1_SwFmtDropAttrs( SwHTMLWriter& rHWrt, + const SwFmtDrop& rDrop ); +static Writer& OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( Writer& rWrt, + const SvxUnderlineItem *pUItem, + const SvxCrossedOutItem *pCOItem, + const SvxBlinkItem *pBItem ); +static Writer& OutCSS1_SvxFontWeight( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SvxPosture( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SvxULSpace( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SvxLRSpace( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt, + const SvxULSpaceItem *pULSpace, + const SvxLRSpaceItem *pLRSpace ); +static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt, + const SfxItemSet& rItemSet, + BOOL bDeep ); +static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt, + USHORT nMode, const String *pGrfName ); +static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SvxBox( Writer& rWrt, const SfxPoolItem& rHt ); +static Writer& OutCSS1_SwFmtFrmSize( Writer& rWrt, const SfxPoolItem& rHt, + USHORT nMode ); +static Writer& OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( Writer& rWrt, + const SfxItemSet& rItemSet, + BOOL bDeep ); +static Writer& OutCSS1_SwFmtLayoutSplit( Writer& rWrt, const SfxPoolItem& rHt ); + +static void ConvToHex( USHORT nHex, ByteString& rStr ) +{ + sal_Char aNToABuf[] = "00"; + + // Pointer an das Bufferende setzen + sal_Char *pStr = aNToABuf + (sizeof(aNToABuf)-1); + for( BYTE n = 0; n < 2; ++n ) + { + *(--pStr) = (sal_Char)(nHex & 0xf ) + 48; + if( *pStr > '9' ) + *pStr += 39; + nHex >>= 4; + } + + rStr.Append( aNToABuf ); +} + +static void GetCSS1Color( const Color& rColor, ByteString& rStr ) +{ + rStr += '#'; + + ConvToHex( rColor.GetRed(), rStr ); + ConvToHex( rColor.GetGreen(), rStr ); + ConvToHex( rColor.GetBlue(), rStr ); +} + +class SwCSS1OutMode +{ + SwHTMLWriter& rWrt; + USHORT nOldMode; + +public: + + SwCSS1OutMode( SwHTMLWriter& rHWrt, USHORT nMode, BOOL bStartFirst=TRUE, + const String *pSelector=0 ) : + rWrt( rHWrt ), + nOldMode( rHWrt.nCSS1OutMode ) + { + rWrt.nCSS1OutMode = nMode; + if( bStartFirst ) + rWrt.bFirstCSS1Property = TRUE; + if( pSelector ) + rWrt.aCSS1Selector = *pSelector; + } + + ~SwCSS1OutMode() + { + rWrt.nCSS1OutMode = nOldMode; + } +}; + + + +void SwHTMLWriter::OutCSS1_Property( const sal_Char *pProp, + const sal_Char *pVal, + const String *pSVal ) +{ + ByteString sOut; + + if( bFirstCSS1Rule && (nCSS1OutMode & CSS1_OUTMODE_RULE_ON)!=0 ) + { + bFirstCSS1Rule = FALSE; + OutNewLine(); + HTMLOutFuncs::Out_AsciiTag( Strm(), sHTML_style ); + OutNewLine(); + Strm() << '<' << sHTML_comment; + + IncIndentLevel(); + } + + if( bFirstCSS1Property ) + { + switch( nCSS1OutMode & CSS1_OUTMODE_ANY_ON ) + { + case CSS1_OUTMODE_SPAN_TAG_ON: + case CSS1_OUTMODE_SPAN_TAG1_ON: + if( bTagOn ) + { + ((((sOut += '<') += sHTML_span) += ' ') += sHTML_O_style) += "=\""; + } + else + { + HTMLOutFuncs::Out_AsciiTag( Strm(), sHTML_span, FALSE ); + return; + } + break; + + case CSS1_OUTMODE_RULE_ON: + { + ByteString sTmp( aCSS1Selector, eDestEnc ); + OutNewLine(); + (sOut = sTmp) += " { "; + } + break; + + case CSS1_OUTMODE_STYLE_OPT_ON: + ((sOut = ' ') += sHTML_O_style) += "=\""; + break; + } + bFirstCSS1Property = FALSE; + } + else + { + sOut += "; "; + } + + + (sOut += pProp) += ": "; + if( nCSS1OutMode & CSS1_OUTMODE_ENCODE ) + { + // In STYLE-Optionen den String codieren + Strm() << sOut.GetBuffer(); + sOut.Erase(); + if( pVal ) + HTMLOutFuncs::Out_String( Strm(), String::CreateFromAscii(pVal), + eDestEnc ); + else if( pSVal ) + HTMLOutFuncs::Out_String( Strm(), *pSVal, eDestEnc ); + } + else + { + // Im STYLE-Tag des String direct ausgeben + if( pVal ) + sOut += pVal; + else if( pVal ) + { + ByteString sTmp( *pSVal, eDestEnc ); + sOut += sTmp; + } + } + + if( sOut.Len() ) + Strm() << sOut.GetBuffer(); +} + +static void AddUnitPropertyValue( long nVal, FieldUnit eUnit, ByteString& rOut ) +{ + if( nVal < 0 ) + { + // Vorzeichen extra behandeln + nVal = -nVal; + rOut += '-'; + } + + // Die umgerechnete Einheit ergibt sich aus (x * nMul)/(nDiv*nFac*10) + long nMul = 1000; + long nDiv = 1; + long nFac = 100; + const sal_Char *pUnit; + switch( eUnit ) + { + case FUNIT_100TH_MM: + ASSERT( FUNIT_MM == eUnit, "Masseinheit wird nicht unterstuetzt" ); + case FUNIT_MM: + // 0.01mm = 0.57twip + nMul = 25400; // 25.4 * 1000 + nDiv = 1440; // 72 * 20; + nFac = 100; + pUnit = sCSS1_UNIT_mm; + break; + + case FUNIT_M: + case FUNIT_KM: + ASSERT( FUNIT_CM == eUnit, "Masseinheit wird nicht unterstuetzt" ); + case FUNIT_CM: +#ifdef EXACT_VALUES + // 0.001cm = 0.57twip + nMul = 25400; // 2.54 * 10000 + nDiv = 1440; // 72 * 20; + nFac = 1000; +#else + // 0.01cm = 5.7twip (ist zwar ungenau, aber die UI ist auch ungenau) + nMul = 2540; // 2.54 * 1000 + nDiv = 1440; // 72 * 20; + nFac = 100; +#endif + pUnit = sCSS1_UNIT_cm; + break; + + case FUNIT_TWIP: + ASSERT( FUNIT_POINT == eUnit, "Masseinheit wird nicht unterstuetzt" ); + case FUNIT_POINT: +#ifdef EXACT_VALUES + // 0.01pt = 0.2twip + nMul = 1000; + nDiv = 20; + nFac = 100; +#else + // 0.1pt = 2.0twip (ist zwar ungenau, aber die UI ist auch ungenau) + nMul = 100; + nDiv = 20; + nFac = 10; +#endif + pUnit = sCSS1_UNIT_pt; + break; + + case FUNIT_PICA: +#ifdef EXACT_VALUES + // 0.001pc = 0.24twip + nMul = 10000; + nDiv = 12 * 20; + nFac = 1000; +#else + // 0.01pc = 2.40twip (ist zwar ungenau, aber die UI ist auch ungenau) + nMul = 1000; + nDiv = 240; // 12 * 20; + nFac = 100; +#endif + pUnit = sCSS1_UNIT_pc; + break; + + case FUNIT_NONE: + case FUNIT_FOOT: + case FUNIT_MILE: + case FUNIT_CUSTOM: + case FUNIT_PERCENT: + case FUNIT_INCH: + default: + ASSERT( FUNIT_INCH == eUnit, "Masseinheit wird nicht unterstuetzt" ); +#ifdef EXACT_VALUES + // 0.0001in = 0.144twip + nMul = 100000; + nDiv = 1440; // 72 * 20; + nFac = 10000; +#else + // 0.01in = 14.4twip (ist zwar ungenau, aber die UI ist auch ungenau) + nMul = 1000; + nDiv = 1440; // 72 * 20; + nFac = 100; +#endif + pUnit = sCSS1_UNIT_inch; + break; + } + + long nLongVal; + BOOL bOutLongVal = TRUE; + if( nVal > LONG_MAX / nMul ) + { + // Zum Unrechnen der Einheit wird ein BigInt benoetigt +#ifdef SAL_INT64_IS_STRUCT + BigInt nBigVal( nVal ); + nBigVal *= nMul; + nBigVal /= nDiv; + nBigVal += 5; + nBigVal /= 10; + + if( nBigVal.IsLong() ) + { + // Zum Ausgeben des Wertes reicht ein long. + nLongVal = (long)nBigVal; + } + else + { + BigInt nBigFac( nFac ); + BigInt nBig10( 10 ); + rOut += (long)(nBigVal / nBigFac); + if( !(nBigVal % nBigFac).IsZero() ) + { + rOut += '.'; + while( nFac > 1 && !(nBigVal % nBigFac).IsZero() ) + { + nFac /= 10; + nBigFac = nFac; + rOut += (int)((nBigVal / nBigFac) % nBig10 ); + } + } + bOutLongVal = FALSE; + } +#else + sal_Int64 nBigVal( nVal ); + nBigVal *= nMul; + nBigVal /= nDiv; + nBigVal += 5; + nBigVal /= 10; + + if( nBigVal <= LONG_MAX ) + { + // Zum Ausgeben des Wertes reicht ein long. + nLongVal = (long)nBigVal; + } + else + { + rOut += ByteString::CreateFromInt64( nBigVal / (sal_Int64)nFac ); + if( (nBigVal % (sal_Int64)nFac) != 0 ) + { + rOut += '.'; + while( nFac > 1 && (nBigVal % (sal_Int64)nFac) != 0 ) + { + nFac /= 10; + rOut += ByteString::CreateFromInt64( + (nBigVal / (sal_Int64)nFac) % (sal_Int64)10 ); + } + } + bOutLongVal = FALSE; + } +#endif + } + else + { + nLongVal = nVal * nMul; + nLongVal /= nDiv; + nLongVal += 5; + nLongVal /= 10; + } + + if( bOutLongVal ) + { + rOut += ByteString::CreateFromInt32( nLongVal/nFac ); + if( (nLongVal % nFac) != 0 ) + { + rOut += '.'; + while( nFac > 1 && (nLongVal % nFac) != 0 ) + { + nFac /= 10; + rOut += ByteString::CreateFromInt32( (nLongVal / nFac) % 10 ); + } + } + } + + rOut.Append( pUnit ); +} + +void SwHTMLWriter::OutCSS1_UnitProperty( const sal_Char *pProp, long nVal ) +{ + ByteString sOut; + AddUnitPropertyValue( nVal, eCSS1Unit, sOut ); + OutCSS1_PropertyAscii( pProp, sOut ); +} + +void SwHTMLWriter::OutCSS1_PixelProperty( const sal_Char *pProp, long nVal, + BOOL bVert ) +{ + if( nVal && Application::GetDefaultDevice() ) + { + Size aSz( bVert ? 0 : nVal, bVert ? nVal : 0 ); + aSz = Application::GetDefaultDevice()->LogicToPixel( aSz, MapMode( MAP_TWIP) ); + nVal = bVert ? aSz.Height() : aSz.Width(); + if( !nVal ) + nVal = 1; + } + + ByteString sOut( ByteString::CreateFromInt32( nVal ) ); + sOut.Append( sCSS1_UNIT_px ); + OutCSS1_PropertyAscii( pProp, sOut ); +} + +void SwHTMLWriter::OutCSS1_SfxItemSet( const SfxItemSet& rItemSet, + BOOL bDeep ) +{ + // den ItemSet ausgeben, und zwar inklusive aller Attribute + Out_SfxItemSet( aCSS1AttrFnTab, *this, rItemSet, bDeep ); + + // ein par Attribute benoetigen eine Spezial-Behandlung + const SfxPoolItem *pItem = 0; + + // Underline, CrossedOut und Blink bilden zusammen eine CSS1-Property + // (geht natuerlich nicht bei Hints) + if( !IsCSS1Source(CSS1_OUTMODE_HINT) ) + { + const SvxUnderlineItem *pUnderlineItem = 0; + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_CHRATR_UNDERLINE, bDeep, &pItem )) + pUnderlineItem = (const SvxUnderlineItem *)pItem; + + const SvxCrossedOutItem *pCrossedOutItem = 0; + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_CHRATR_CROSSEDOUT, bDeep, &pItem )) + pCrossedOutItem = (const SvxCrossedOutItem *)pItem; + + const SvxBlinkItem *pBlinkItem = 0; + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_CHRATR_BLINK, bDeep, &pItem )) + pBlinkItem = (const SvxBlinkItem *)pItem; + + if( pUnderlineItem || pCrossedOutItem || pBlinkItem ) + OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( *this, pUnderlineItem, + pCrossedOutItem, + pBlinkItem ); + + OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( *this, rItemSet, bDeep ); + } + + if( !bFirstCSS1Property ) + { + // wenn eine Property als Bestandteil einer Style-Option + // ausgegeben wurde, muss die Optiomn noch beendet werden + ByteString sOut; + switch( nCSS1OutMode & CSS1_OUTMODE_ANY_OFF ) + { + case CSS1_OUTMODE_SPAN_TAG_OFF: + sOut = sCSS1_span_tag_end; + break; + + case CSS1_OUTMODE_STYLE_OPT_OFF: + sOut = cCSS1_style_opt_end; + break; + + case CSS1_OUTMODE_RULE_OFF: + sOut = sCSS1_rule_end; + break; + } + if( sOut.Len() ) + Strm() << sOut.GetBuffer(); + } +} + +#if USED +void SwHTMLWriter::OutCSS1_SfxItem( USHORT nMode, + const SfxPoolItem *pItem1, + const SfxPoolItem *pItem2 ) +{ + // den ItemSet ausgeben, und zwar inklusive aller Attribute + nSaveMode = nCSS1OutMode; + nCSS1OutMode = nMode; + bFirstCSS1Property = TRUE; + + Out( aCSS1AttrFnTab, *pItem1, *this ); + if( pItem2 ) + Out( aCSS1AttrFnTab, *pItem2, *this ); + + + if( !bFirstCSS1Property ) + { + // wenn eine Property als Bestandteil einer Style-Option + // ausgegeben wurde, muss die Optiomn noch beendet werden + ByteString sOut; + switch( nCSS1OutMode & CSS1_OUTMODE_ANY_OFF ) + { + case CSS1_OUTMODE_SPAN_TAG_OFF: + sOut = sCSS1_span_tag_end; + break; + + case CSS1_OUTMODE_STYLE_OPT_OFF: + sOut = cCSS1_style_opt_end; + break; + + case CSS1_OUTMODE_RULE: + sOut = sCSS1_rule_end; + break; + } + if( sOut.Len() ) + rStrm << sOut.GetBuffer(); + } + + nCSS1OutMode = nSaveMode; +} +#endif + +void SwHTMLWriter::OutStyleSheet( const SwPageDesc& rPageDesc, BOOL bUsed ) +{ + bFirstCSS1Rule = TRUE; + +// Feature: PrintExt + if( IsHTMLMode(HTMLMODE_PRINT_EXT) ) + { + const SwPageDesc *pFirstPageDesc = 0; + USHORT nFirstRefPoolId = RES_POOLPAGE_HTML; + bCSS1IgnoreFirstPageDesc = TRUE; + + // Erstmal versuchen wir zu erraten, wie das Dokument so augebaut ist. + // Erlaubt sind nur die Vorlagen HTML, erste Seite, linke Seite und + // rechte Seite. + // Eine erste Seite wird nur exportiert, wenn die erste Seite auch + // wirklich die Vorlage "erste Seite" ist. + // Linke und rechte Seiten werden nur exportiert, wenn diese beiden + // Vorlagen untereinander verkettet werden. + // Wenn andere Vorlagen verwendet werden, wird nur in sehr einfachen + // Faellen etwas exportiert. + const SwPageDesc *pPageDesc = &rPageDesc; + const SwPageDesc *pFollow = rPageDesc.GetFollow(); + if( RES_POOLPAGE_FIRST == pPageDesc->GetPoolFmtId() && + pFollow != pPageDesc && + !IsPoolUserFmt( pFollow->GetPoolFmtId() ) ) + { + // Das Dokument hat eine erste Seite + pFirstPageDesc = pPageDesc; + pPageDesc = pFollow; + pFollow = pPageDesc->GetFollow(); + } + if( pPageDesc == pFollow ) + { + // Das Dokument ist einseitig. Egal welche Seite verwendet wird, + // es wird kein zweiseitiges Dokument daraus gemacht. + // Die Attributierung wird relativ zur HTML-Seitenvorlage + // aus der HTML-Vorlage exportiert. + OutCSS1_SwPageDesc( *this, *pPageDesc, pDoc, pTemplate, + RES_POOLPAGE_HTML, TRUE, FALSE ); + nFirstRefPoolId = pFollow->GetPoolFmtId(); + } + else if( (RES_POOLPAGE_LEFT == pPageDesc->GetPoolFmtId() && + RES_POOLPAGE_RIGHT == pFollow->GetPoolFmtId()) || + (RES_POOLPAGE_RIGHT == pPageDesc->GetPoolFmtId() && + RES_POOLPAGE_LEFT == pFollow->GetPoolFmtId()) ) + { + // Das Dokument ist zweiseitig + OutCSS1_SwPageDesc( *this, *pPageDesc, pDoc, pTemplate, + RES_POOLPAGE_HTML, TRUE ); + OutCSS1_SwPageDesc( *this, *pFollow, pDoc, pTemplate, + RES_POOLPAGE_HTML, TRUE ); + nFirstRefPoolId = RES_POOLPAGE_RIGHT; + bCSS1IgnoreFirstPageDesc = FALSE; + } + // Alles andere bekommen wir nicht hin. + + if( pFirstPageDesc ) + OutCSS1_SwPageDesc( *this, *pFirstPageDesc, pDoc, pTemplate, + nFirstRefPoolId, FALSE ); + } +// /Feature: PrintExt + + + // das Default-TextStyle wir nicht mit ausgegeben !! + // das 0-Style ist das Default, wird nie ausgegeben !! + USHORT nArrLen = pDoc->GetTxtFmtColls()->Count(); + for( USHORT i=1; iGetTxtFmtColls())[i]; + if( !bUsed || pDoc->IsUsed( *pColl ) ) + OutCSS1_SwFmt( *this, *pColl, pDoc, pTemplate ); + } + + // das Default-TextStyle wir nicht mit ausgegeben !! + nArrLen = pDoc->GetCharFmts()->Count(); + for( i=1; iGetCharFmts())[i]; + USHORT nPoolId = pCFmt->GetPoolFmtId(); + if( !bUsed || nPoolId == RES_POOLCHR_INET_NORMAL || + nPoolId == RES_POOLCHR_INET_VISIT || + pDoc->IsUsed( *pCFmt ) ) + OutCSS1_SwFmt( *this, *pCFmt, pDoc, pTemplate ); + } + + const SwFtnIdxs& rIdxs = pDoc->GetFtnIdxs(); + nArrLen = rIdxs.Count(); + USHORT nEnd = 0, nFtn = 0; + for( i=0; i < nArrLen; i++ ) + { + if( rIdxs[i]->GetFtn().IsEndNote() ) + nEnd++; + else + nFtn++; + } + OutCSS1_SwFtnInfo( *this, pDoc->GetFtnInfo(), pDoc, nFtn, FALSE ); + OutCSS1_SwFtnInfo( *this, pDoc->GetEndNoteInfo(), pDoc, nEnd, TRUE ); + + if( !bFirstCSS1Rule ) + { + DecIndentLevel(); + OutNewLine(); + Strm() << "-->"; + + OutNewLine(); + HTMLOutFuncs::Out_AsciiTag( Strm(), sHTML_style, FALSE ); + } + else + { + bFirstCSS1Rule = FALSE; + } + + nDfltTopMargin = 0; + nDfltBottomMargin = 0; +} + +#ifdef OLD_MS_IE + +BOOL SwHTMLWriter::IsDfltLRSpace( const SvxLRSpaceItem& rLRItem ) const +{ + // Einen linken Rand kann es durch eine Liste bereits in der + // Umgebung geben + USHORT nLeft = rLRItem.GetTxtLeft() - nLeftMargin; + + // Der Erstzeilen-Einzug kann den Platz fuer eine Numerierung + // enthalten + short nIndent = rLRItem.GetTxtFirstLineOfst() - nFirstLineIndent; + + // Wenn Spacer exportiert werden, wird ein psositiver Erstzeilen-Einzug + // als Spacer exportiert. + return nDfltLeftMargin == nLeft && + nDfltRightMargin == rLRItem.GetRight() && + ( (bCfgSpacer && nIndent > 0) || + nDfltFirstLineIndent == nIndent ); +} + +BOOL SwHTMLWriter::IsDfltULSpace( const SvxULSpaceItem& rULItem ) const +{ + return nDfltTopMargin == rULItem.GetUpper() && + nDfltBottomMargin == rULItem.GetLower(); +} + +#endif + +//----------------------------------------------------------------------- + +// wenn pPseudo gesetzt ist werden Styles-Sheets ausgegeben, +// sonst wird nur nach Token und Class fuer ein Format gesucht +USHORT SwHTMLWriter::GetCSS1Selector( const SwFmt *pFmt, ByteString& rToken, + String& rClass, USHORT& rRefPoolId, + String *pPseudo ) +{ + USHORT nDeep = 0; + rToken.Erase(); rClass.Erase(); + rRefPoolId = 0; + if( pPseudo ) + pPseudo->Erase(); + + BOOL bChrFmt = RES_CHRFMT==pFmt->Which(); + + // Nach oben die Formate abklappern, bis man auf eine Standard- + // oder eine HTML-Tag-Vorlage trifft + const SwFmt *pPFmt = pFmt; + while( pPFmt && !pPFmt->IsDefault() ) + { + BOOL bStop = FALSE; + USHORT nPoolId = pPFmt->GetPoolFmtId(); + if( USER_FMT & nPoolId ) + { + // Benutzer-Vorlagen + const String& rNm = pPFmt->GetName(); + switch( rNm.GetChar(0) ) + { + // nicht mehr unterstuetzt: + // sHTML_author + // sHTML_acronym + // sHTML_abbreviation + // sHTML_deletedtext + // sHTML_insertedtext + // sHTML_language + // sHTML_person + case 'B': if( !bChrFmt && rNm.EqualsAscii(sHTML_blockquote) ) + { + rRefPoolId = RES_POOLCOLL_HTML_BLOCKQUOTE; + rToken.Assign( sHTML_blockquote ); + } + break; + case 'C': if( bChrFmt ) + { + if( rNm.EqualsAscii(sHTML_citiation) ) + { + rRefPoolId = RES_POOLCHR_HTML_CITIATION; + rToken.Assign( sHTML_citiation ); + } + else if( rNm.EqualsAscii(sHTML_code) ) + { + rRefPoolId = RES_POOLCHR_HTML_CODE; + rToken.Assign( sHTML_code ); + } + } + break; + case 'D': if( bChrFmt && rNm.EqualsAscii(sHTML_definstance) ) + { + rRefPoolId = RES_POOLCHR_HTML_DEFINSTANCE; + rToken.Assign( sHTML_definstance); + } + else if( !bChrFmt ) + { + USHORT nDefListLvl = GetDefListLvl( rNm, nPoolId ); + // Die Vorlagen DD 1/DT 1 werden ausgegeben, + // aber keine von ihnen abgeleiteten Vorlagen, + // auch nicht DD 2/DT 2 etc. + if( nDefListLvl ) + { + if( pPseudo && + (nDeep || (nDefListLvl & 0x0fff) > 1) ) + { + bStop = TRUE; + } + else if( nDefListLvl & HTML_DLCOLL_DD ) + { + rRefPoolId = RES_POOLCOLL_HTML_DD; + rToken.Assign( sHTML_dd ); + } + else + { + rRefPoolId = RES_POOLCOLL_HTML_DT; + rToken.Assign( sHTML_dt ); + } + } + } + break; + case 'E': if( bChrFmt && rNm.EqualsAscii( sHTML_emphasis ) ) + { + rRefPoolId = RES_POOLCHR_HTML_EMPHASIS; + rToken.Assign( sHTML_emphasis ); + } + break; + case 'H': if( !bChrFmt && rNm.EqualsAscii( sHTML_horzrule ) ) + // HR nicht ausgeben! + bStop = (nDeep==0); + break; + case 'K': if( bChrFmt && rNm.EqualsAscii( sHTML_keyboard ) ) + { + rRefPoolId = RES_POOLCHR_HTML_KEYBOARD; + rToken.Assign( sHTML_keyboard ); + } + break; + case 'L': if( !bChrFmt && rNm.EqualsAscii( sHTML_listing ) ) + { + // Listing als PRE exportieren bzw. von + // PRE abgeleitete Vorlage exportieren + rToken.Assign( sHTML_preformtxt ); + rRefPoolId = RES_POOLCOLL_HTML_PRE; + nDeep = CSS1_FMT_CMPREF; + } + break; + case 'P': if( !bChrFmt && rNm.EqualsAscii( sHTML_preformtxt ) ) + { + rRefPoolId = RES_POOLCOLL_HTML_PRE; + rToken.Assign( sHTML_preformtxt ); + } + break; + case 'S': if( bChrFmt ) + { + if( rNm.EqualsAscii( sHTML_sample ) ) + { + rRefPoolId = RES_POOLCHR_HTML_SAMPLE; + rToken.Assign( sHTML_sample ); + } + else if( rNm.EqualsAscii( sHTML_strong ) ) + { + rRefPoolId = RES_POOLCHR_HTML_STRONG; + rToken.Assign( sHTML_strong ); + } + } + break; + case 'T': if( bChrFmt && rNm.EqualsAscii( sHTML_teletype ) ) + { + rRefPoolId = RES_POOLCHR_HTML_TELETYPE; + rToken.Assign( sHTML_teletype ); + } + break; + case 'V': if( bChrFmt && rNm.EqualsAscii( sHTML_variable ) ) + { + rRefPoolId = RES_POOLCHR_HTML_VARIABLE; + rToken.Assign( sHTML_variable ); + } + break; + case 'X': if( !bChrFmt && rNm.EqualsAscii( sHTML_xmp ) ) + { + // XMP als PRE exportieren (aber nicht die + // Vorlage als Style) + rToken.Assign( sHTML_preformtxt ); + rRefPoolId = RES_POOLCOLL_HTML_PRE; + nDeep = CSS1_FMT_CMPREF; + } + break; + } + + // Wenn eine PoolId gesetzt ist, entspricht der Name der + // Vorlage dem szugehoerigen Token + ASSERT( rRefPoolId != 0 == rToken.Len() > 0, + "Token missing" ); + } + else + { + // Pool-Vorlagen + switch( nPoolId ) + { + // Absatz-Vorlagen + case RES_POOLCOLL_HEADLINE_BASE: + case RES_POOLCOLL_STANDARD: + // diese Vorlagen nicht ausgeben + bStop = (nDeep==0); + break; + case RES_POOLCOLL_TEXT: + rToken.Assign( sHTML_parabreak ); + break; + case RES_POOLCOLL_HEADLINE1: + rToken.Assign( sHTML_head1 ); + break; + case RES_POOLCOLL_HEADLINE2: + rToken.Assign( sHTML_head2 ); + break; + case RES_POOLCOLL_HEADLINE3: + rToken.Assign( sHTML_head3 ); + break; + case RES_POOLCOLL_HEADLINE4: + rToken.Assign( sHTML_head4 ); + break; + case RES_POOLCOLL_HEADLINE5: + rToken.Assign( sHTML_head5 ); + break; + case RES_POOLCOLL_HEADLINE6: + rToken.Assign( sHTML_head6 ); + break; + case RES_POOLCOLL_SENDADRESS: + rToken.Assign( sHTML_address ); + break; + case RES_POOLCOLL_HTML_BLOCKQUOTE: + rToken.Assign( sHTML_blockquote ); + break; + case RES_POOLCOLL_HTML_PRE: + rToken.Assign( sHTML_preformtxt ); + break; + + case RES_POOLCOLL_HTML_DD: + rToken.Assign( sHTML_dd ); + break; + case RES_POOLCOLL_HTML_DT: + rToken.Assign( sHTML_dt ); + break; + + case RES_POOLCOLL_TABLE: + if( pPseudo ) + { + rToken.Assign( sHTML_tabledata ); + rToken.Append( ' ' ); + rToken.Assign( sHTML_parabreak ); + } + else + rToken.Assign( sHTML_parabreak ); + break; + case RES_POOLCOLL_TABLE_HDLN: + if( pPseudo ) + { + rToken.Assign( sHTML_tableheader ); + rToken.Assign( ' ' ); + rToken.Assign( sHTML_parabreak ); + } + else + rToken.Assign( sHTML_parabreak ); + break; + case RES_POOLCOLL_HTML_HR: + // HR nicht ausgeben! + bStop = (nDeep==0); + break; + case RES_POOLCOLL_FOOTNOTE: + if( !nDeep ) + { + rToken.Assign( sHTML_parabreak ); + rClass.AssignAscii( sHTML_sdfootnote ); + rRefPoolId = RES_POOLCOLL_TEXT; + nDeep = CSS1_FMT_CMPREF; + } + break; + case RES_POOLCOLL_ENDNOTE: + if( !nDeep ) + { + rToken.Assign( sHTML_parabreak ); + rClass.AssignAscii( sHTML_sdendnote ); + rRefPoolId = RES_POOLCOLL_TEXT; + nDeep = CSS1_FMT_CMPREF; + } + break; + + // Zeichen-Vorlagen + case RES_POOLCHR_HTML_EMPHASIS: + rToken.Assign( sHTML_emphasis ); + break; + case RES_POOLCHR_HTML_CITIATION: + rToken.Assign( sHTML_citiation ); + break; + case RES_POOLCHR_HTML_STRONG: + rToken.Assign( sHTML_strong ); + break; + case RES_POOLCHR_HTML_CODE: + rToken.Assign( sHTML_code ); + break; + case RES_POOLCHR_HTML_SAMPLE: + rToken.Assign( sHTML_sample ); + break; + case RES_POOLCHR_HTML_KEYBOARD: + rToken.Assign( sHTML_keyboard ); + break; + case RES_POOLCHR_HTML_VARIABLE: + rToken.Assign( sHTML_variable ); + break; + case RES_POOLCHR_HTML_DEFINSTANCE: + rToken.Assign( sHTML_definstance ); + break; + case RES_POOLCHR_HTML_TELETYPE: + rToken.Assign( sHTML_teletype ); + break; + + case RES_POOLCHR_INET_NORMAL: + if( pPseudo ) + { + rToken.Assign( sHTML_anchor ); + pPseudo->AssignAscii( sCSS1_link ); + } + break; + case RES_POOLCHR_INET_VISIT: + if( pPseudo ) + { + rToken.Assign( sHTML_anchor ); + pPseudo->AssignAscii( sCSS1_visited ); + } + break; + } + + // Wenn ein Token gesetzt ist, enthaelt nPoolId die dazugehoerige + // Vorlage + if( rToken.Len() && !rRefPoolId ) + rRefPoolId = nPoolId; + } + + if( rToken.Len() || bStop ) + { + // Anhalten wenn eine HTML-Tag-Vorlage gefunden wurde + break; + } + else + { + // sonst weitersuchen + nDeep++; + pPFmt = pPFmt->DerivedFrom(); + } + } + + if( rToken.Len() ) + { + // Es ist eine HTML-Tag-Vorlage + if( !nDeep ) + nDeep = CSS1_FMT_ISTAG; + } + else + { + // Es ist keine HTML-Tag-Vorlage und auch keine davon abgeleitete + nDeep = 0; + } + if( nDeep > 0 && nDeep < CSS1_FMT_SPECIAL ) + { + // Wenn die Vorlage von einer HTML-Vorlage abgeleitet ist, + // wird sie als . exportiert, sonst als .. + // ergibt sich aus dem Namen der Vorlage durch entfernen + // aller Zeichen vor und inklusive dem ersten '.' + rClass = pFmt->GetName(); + xub_StrLen nPos = rClass.Search( '.' ); + if( nPos != STRING_NOTFOUND && rClass.Len() > nPos+1 ) + { + rClass.Erase( 0, nPos+1 ); + } + + GetAppCharClass().toLower( rClass ); + while( STRING_NOTFOUND != rClass.SearchAndReplace( '.', '-' ) ) + ; + while( STRING_NOTFOUND != rClass.SearchAndReplace( ' ', '-' ) ) + ; + while( STRING_NOTFOUND != rClass.SearchAndReplace( '_', '-' ) ) + ; + } + + return nDeep; +} + +static USHORT GetCSS1Selector( const SwFmt *pFmt, String& rSelector, + USHORT& rRefPoolId ) +{ + ByteString aToken; + String aClass; + String aPseudo; + + USHORT nDeep = SwHTMLWriter::GetCSS1Selector( pFmt, aToken, aClass, + rRefPoolId, &aPseudo ); + if( nDeep ) + { + if( aToken.Len() ) + rSelector = String( aToken, RTL_TEXTENCODING_ASCII_US ); + else + rSelector.Erase(); + + if( aClass.Len() ) + (rSelector += '.') += aClass; + if( aPseudo.Len() ) + (rSelector += ':') += aPseudo; + } + + return nDeep; +} + +const SwFmt *SwHTMLWriter::GetTemplateFmt( USHORT nPoolFmtId, + SwDoc *pTemplate ) +{ + const SwFmt *pRefFmt = 0; + + if( pTemplate ) + { + ASSERT( !(USER_FMT & nPoolFmtId), + "In der Dok-Vorlage gibt es keine Benutzer-Vorlagen" ); + if( POOLGRP_NOCOLLID & nPoolFmtId ) + pRefFmt = pTemplate->GetCharFmtFromPool( nPoolFmtId ); + else + pRefFmt = pTemplate->GetTxtCollFromPool( nPoolFmtId ); + } + + return pRefFmt; +} + +const SwFmt *SwHTMLWriter::GetParentFmt( const SwFmt& rFmt, USHORT nDeep ) +{ + ASSERT( nDeep != USHRT_MAX, "GetParent fuer HTML-Vorlage aufgerufen!" ); + const SwFmt *pRefFmt = 0; + + if( nDeep > 0 ) + { + // hier wird die HTML-Tag-Vorlage, von der die Vorlage abgeleitet + // ist als Referenz geholt + pRefFmt = &rFmt; + for( USHORT i=nDeep; i>0; i-- ) + pRefFmt = pRefFmt->DerivedFrom(); + + if( pRefFmt && pRefFmt->IsDefault() ) + pRefFmt = 0; + } + + return pRefFmt; +} + +BOOL lcl_css1atr_equalFontItems( const SfxPoolItem& r1, const SfxPoolItem& r2 ) +{ + return ((const SvxFontItem &)r1).GetFamilyName() == + ((const SvxFontItem &)r2).GetFamilyName() && + ((const SvxFontItem &)r1).GetFamily() == + ((const SvxFontItem &)r2).GetFamily() && + ((const SvxFontItem &)r1).GetPitch() == + ((const SvxFontItem &)r2).GetPitch(); +} + +void SwHTMLWriter::SubtractItemSet( SfxItemSet& rItemSet, + const SfxItemSet& rRefItemSet, + BOOL bSetDefaults, + BOOL bClearSame ) +{ + ASSERT( bSetDefaults || bClearSame, + "SwHTMLWriter::SubtractItemSet: Bei diesen Flags passiert nix" ); + SfxItemSet aRefItemSet( *rRefItemSet.GetPool(), rRefItemSet.GetRanges() ); + aRefItemSet.Set( rRefItemSet ); + + // und mit dem Attr-Set der Vorlage vergleichen + SfxWhichIter aIter( rItemSet ); + USHORT nWhich = aIter.FirstWhich(); + while( nWhich ) + { + const SfxPoolItem *pRefItem, *pItem; + BOOL bItemSet = ( SFX_ITEM_SET == + rItemSet.GetItemState( nWhich, FALSE, &pItem) ); + BOOL bRefItemSet = ( SFX_ITEM_SET == + aRefItemSet.GetItemState( nWhich, FALSE, &pRefItem) ); + if( bItemSet ) + { + if( bClearSame && bRefItemSet && + ( *pItem == *pRefItem || + (RES_CHRATR_FONT == nWhich && + lcl_css1atr_equalFontItems( *pItem, *pRefItem )) ) ) + { + // das Attribut ist mit dem gleichen Wert in beiden + // Vorlagen vorhanden und muss nicht ausgegeben werden + rItemSet.ClearItem( nWhich ); + } + } + else + { + if( bSetDefaults && bRefItemSet ) + { + // das Attribut ist nur in der Referenz vorhanden. Das + // Default muss ggf. ausgegeben werden + rItemSet.Put( rItemSet.GetPool()->GetDefaultItem(nWhich) ); + } + } + + nWhich = aIter.NextWhich(); + } +} + +void SwHTMLWriter::PrepareFontList( const SvxFontItem& rFontItem, + String& rNames, + sal_Unicode cQuote, BOOL bGeneric ) +{ + rNames = aEmptyStr; + const String& rName = rFontItem.GetFamilyName(); + BOOL bContainsKeyword = FALSE; + if( rName.Len() ) + { + xub_StrLen nStrPos = 0; + while( nStrPos != STRING_NOTFOUND ) + { + String aName = rName.GetToken( 0, ';', nStrPos ); + aName.EraseTrailingChars().EraseLeadingChars(); + if( !aName.Len() ) + continue; + + BOOL bIsKeyword = FALSE; + switch( aName.GetChar( 0 ) ) + { + case 'c': + case 'C': + bIsKeyword = aName.EqualsIgnoreCaseAscii( sCSS1_PV_cursive ); + break; + + case 'f': + case 'F': + bIsKeyword = aName.EqualsIgnoreCaseAscii( sCSS1_PV_fantasy ); + break; + + case 'm': + case 'M': + bIsKeyword = aName.EqualsIgnoreCaseAscii( sCSS1_PV_monospace ); + break; + + case 's': + case 'S': + bIsKeyword = + aName.EqualsIgnoreCaseAscii( sCSS1_PV_serif ) || + aName.EqualsIgnoreCaseAscii( sCSS1_PV_sans_serif ); + break; + } + + bContainsKeyword |= bIsKeyword; + + if( rNames.Len() ) + rNames.AppendAscii( ", " ); + if( cQuote && !bIsKeyword ) + rNames += cQuote; + rNames += aName; + if( cQuote && !bIsKeyword ) + rNames += cQuote; + } + } + + if( !bContainsKeyword && bGeneric ) + { + const sal_Char *pStr = 0; + switch( rFontItem.GetFamily() ) + { + case FAMILY_ROMAN: pStr = sCSS1_PV_serif; break; + case FAMILY_SWISS: pStr = sCSS1_PV_sans_serif; break; + case FAMILY_SCRIPT: pStr = sCSS1_PV_cursive; break; + case FAMILY_DECORATIVE: pStr = sCSS1_PV_fantasy; break; + case FAMILY_MODERN: pStr = sCSS1_PV_monospace; break; + } + + if( pStr ) + { + if( rNames.Len() ) + rNames.AppendAscii( ", " ); + rNames.AppendAscii( pStr ); + } + } +} + +static Writer& OutCSS1_SwFmt( Writer& rWrt, const SwFmt& rFmt, + SwDoc *pDoc, SwDoc *pTemplate ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + BOOL bCharFmt = FALSE; + switch( rFmt.Which() ) + { + case RES_CHRFMT: + bCharFmt = TRUE; + break; + + case RES_TXTFMTCOLL: + case RES_CONDTXTFMTCOLL: + // diese Vorlagen-Typen koennen exportiert werden + break; + + default: + // und diese nicht + return rWrt; + } + + // den Selector und die auszugebende Attr-Set-Tiefe ermitteln + String aSelector; + USHORT nRefPoolId = 0; + USHORT nDeep = GetCSS1Selector( &rFmt, aSelector, nRefPoolId ); + if( !nDeep ) + return rWrt; // von keiner HTML-Vorlage abgeleitet + + USHORT nPoolFmtId = rFmt.GetPoolFmtId(); + + // Den auszugebenden Attr-Set bestimmen. Hier muessen 3 Faelle + // unterschieden werden: + // - HTML-Tag-Vorlagen (nDeep==USHRT_MAX): + // Es werden die Attrs ausgegeben + // - die in der Vorlage gesetzt sind, aber nicht im Original aus + // der HTML-Vorlage + // - die Default-Attrs fuer die Attrs, die im Original aus der + // HTML-Vorlage gesetzt sind, aber nicht in der vorliegeden Vorlage. + // - direkt von HTML-Vorlagen abgeleitete Vorlagen (nDeep==1): + // Es weren nur die Attribute des Vorlagen-Item-Set ohne seine + // Parents ausgegeben. + // - indirekt von HTML-Tag-Vorlagen abgeleitete Vorlagen (nDeep>1) + // Es werden die Attribute des Vorlagen-Item-Sets inkl. seiner Parents, + // aber ohne die Attribute, die in der HTML-Tag-Vorlage gesetzt sind, + // ausgegeben. + + // einen Item-Set mit allen Attributen aus der Vorlage anlegen + // (ausser fuer nDeep==1) + const SfxItemSet& rFmtItemSet = rFmt.GetAttrSet(); + SfxItemSet aItemSet( *rFmtItemSet.GetPool(), rFmtItemSet.GetRanges() ); + aItemSet.Set( rFmtItemSet, nDeep!=1 ); + + BOOL bSetDefaults = TRUE, bClearSame = TRUE; + const SwFmt *pRefFmt = 0; + switch( nDeep ) + { + case CSS1_FMT_ISTAG: + pRefFmt = SwHTMLWriter::GetTemplateFmt( nRefPoolId, pTemplate ); + break; + case CSS1_FMT_CMPREF: + pRefFmt = SwHTMLWriter::GetTemplateFmt( nRefPoolId, pDoc ); + bClearSame = FALSE; + break; + default: + pRefFmt = SwHTMLWriter::GetParentFmt( rFmt, nDeep ); + bSetDefaults = FALSE; + break; + } + + if( pRefFmt ) + { + // Den Item-Set der Referenz-Vorlage (inkl. seiner Parents) vom + // ItemSet abziehen + SwHTMLWriter::SubtractItemSet( aItemSet, pRefFmt->GetAttrSet(), + bSetDefaults, bClearSame ); + if( !bCharFmt ) + { + const SvxULSpaceItem& rULItem = pRefFmt->GetULSpace(); + rHTMLWrt.nDfltTopMargin = rULItem.GetUpper(); + rHTMLWrt.nDfltBottomMargin = rULItem.GetLower(); + } + } + else if( CSS1_FMT_ISTAG==nDeep && !bCharFmt ) + { + // die Default-Abstaende nach oben und unten setzen (fuer den + // Fall, dass es keine Vorlage als Referenz gibt) + rHTMLWrt.nDfltTopMargin = 0; + rHTMLWrt.nDfltBottomMargin = HTML_PARSPACE; + if( USER_FMT & nPoolFmtId ) + { + // Benutzer-Vorlagen + const String& rNm = rFmt.GetName(); + switch( rNm.GetChar(0) ) + { + case 'D': if( rNm.EqualsAscii("DD 1") || rNm.EqualsAscii("DT 1") ) + rHTMLWrt.nDfltBottomMargin = 0; + break; + case 'L': if(rNm.EqualsAscii(sHTML_listing) ) + rHTMLWrt.nDfltBottomMargin = 0; + break; + case 'P': if( rNm.EqualsAscii(sHTML_preformtxt) ) + rHTMLWrt.nDfltBottomMargin = 0; + break; + case 'X': if( rNm.EqualsAscii(sHTML_xmp) ) + rHTMLWrt.nDfltBottomMargin = 0; + break; + } + } + else + { + // Pool-Vorlagen + switch( nPoolFmtId ) + { + case RES_POOLCOLL_HEADLINE1: + case RES_POOLCOLL_HEADLINE2: + case RES_POOLCOLL_HEADLINE3: + case RES_POOLCOLL_HEADLINE4: + case RES_POOLCOLL_HEADLINE5: + case RES_POOLCOLL_HEADLINE6: + rHTMLWrt.nDfltTopMargin = HTML_HEADSPACE; + break; + case RES_POOLCOLL_SENDADRESS: + case RES_POOLCOLL_HTML_DT: + case RES_POOLCOLL_HTML_DD: + case RES_POOLCOLL_HTML_PRE: + rHTMLWrt.nDfltBottomMargin = 0; + break; + } + } + } + + // wo nicht auszugeben ist ... + if( !aItemSet.Count() ) + return rWrt; + + // jetzt die Attribute (inkl. Selektor) ausgeben + { + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_RULE|CSS1_OUTMODE_TEMPLATE, + TRUE, &aSelector ); + rHTMLWrt.OutCSS1_SfxItemSet( aItemSet, FALSE ); + + if( nPoolFmtId==RES_POOLCOLL_TEXT && !rHTMLWrt.bFirstCSS1Property ) + rHTMLWrt.bPoolCollTextModified = TRUE; + } + + // Drop-Caps ausgeben + const SfxPoolItem *pItem; + if( rHTMLWrt.IsHTMLMode(HTMLMODE_DROPCAPS) && + SFX_ITEM_SET==aItemSet.GetItemState( RES_PARATR_DROP, FALSE, &pItem )) + { + String sOut( aSelector ); + sOut.Append( ':'); + sOut.AppendAscii( sCSS1_first_letter ); + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_RULE|CSS1_OUTMODE_DROPCAP, + TRUE, &sOut ); + + const SwFmtDrop *pDrop = (const SwFmtDrop *)pItem; + + OutCSS1_SwFmtDropAttrs( rHTMLWrt, *pDrop ); + } + + return rWrt; +} + +static Writer& OutCSS1_SwPageDesc( Writer& rWrt, const SwPageDesc& rPageDesc, + SwDoc *pDoc, SwDoc *pTemplate, + USHORT nRefPoolId, BOOL bExtRef, + BOOL bPseudo ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const SwPageDesc* pRefPageDesc = 0; + if( !bExtRef ) + pRefPageDesc = pDoc->GetPageDescFromPool( nRefPoolId ); + else if( pTemplate ) + pRefPageDesc = pTemplate->GetPageDescFromPool( nRefPoolId ); + + String aSelector( '@' ); + aSelector.AppendAscii( sCSS1_page ); + + if( bPseudo ) + { + const sal_Char *pPseudo = 0; + switch( rPageDesc.GetPoolFmtId() ) + { + case RES_POOLPAGE_FIRST: pPseudo = sCSS1_first; break; + case RES_POOLPAGE_LEFT: pPseudo = sCSS1_left; break; + case RES_POOLPAGE_RIGHT: pPseudo = sCSS1_right; break; + } + if( pPseudo ) + { + aSelector.Append( ':' ); + aSelector.AppendAscii( pPseudo ); + } + } + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_RULE_ON|CSS1_OUTMODE_TEMPLATE, + TRUE, &aSelector ); + + // Die Groesse: Wenn sie sich nur durch das Landscape-Flag unterscheidet, + // wird nur Portrait oder Landscape exportiert. Sonst wird die Groesse + // exportiert. + BOOL bRefLandscape = pRefPageDesc ? pRefPageDesc->GetLandscape() : FALSE; + Size aRefSz; + const Size& rSz = rPageDesc.GetMaster().GetFrmSize().GetSize(); + if( pRefPageDesc ) + { + aRefSz = pRefPageDesc->GetMaster().GetFrmSize().GetSize(); + if( bRefLandscape != rPageDesc.GetLandscape() ) + { + long nTmp = aRefSz.Height(); + aRefSz.Height() = aRefSz.Width(); + aRefSz.Width() = nTmp; + } + } + + // Boeser uebler Hack: Auf der Seiten-Tabpage gibt es leichte + // Rundungsfehler bei der Seitengroesse. Unter anderem wegen bug + // 25535 wird dummerweise auch noch immer Size-Item vom Dialog geputtet, + // auch wenn man gar nichts geaendert hat. Folge: Sobald man einmal im + // Seiten-Dialog war und ihn mit OK verlassen hat, bekommt man eine + // neue Seitengroesse, die dann hier exportiert wuerde. Um das + // vermeiden erlauben wir hier kleine Abweichungen. + if( Abs( rSz.Width() - aRefSz.Width() ) <= 2 && + Abs( rSz.Height() - aRefSz.Height() ) <= 2 ) + { + if( bRefLandscape != rPageDesc.GetLandscape() ) + { + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_size, + rPageDesc.GetLandscape() ? sCSS1_PV_landscape + : sCSS1_PV_portrait ); + } + } + else + { + ByteString sVal; + AddUnitPropertyValue( rSz.Width(), rHTMLWrt.GetCSS1Unit(), sVal ); + sVal += ' '; + AddUnitPropertyValue( rSz.Height(), rHTMLWrt.GetCSS1Unit(), sVal ); + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_size, sVal ); + } + + // Die Abstand-Attribute koennen auf gwohnte Weise exportiert werden + const SwFrmFmt &rMaster = rPageDesc.GetMaster(); + SfxItemSet aItemSet( *rMaster.GetAttrSet().GetPool(), + RES_LR_SPACE, RES_UL_SPACE ); + aItemSet.Set( rMaster.GetAttrSet(), TRUE ); + + if( pRefPageDesc ) + { + SwHTMLWriter::SubtractItemSet( aItemSet, + pRefPageDesc->GetMaster().GetAttrSet(), + TRUE ); + } + + OutCSS1_SvxULSpace_SvxLRSpace( rWrt, aItemSet, FALSE ); + + // Wenn fuer einen Pseudo-Selektor keine Property ausgegeben wurde, muessen + // wir trotzdem etwas ausgeben, damit beim Import die entsprechende + // Vorlage angelegt wird. + if( rHTMLWrt.bFirstCSS1Property && bPseudo ) + { + rHTMLWrt.OutNewLine(); + ByteString sTmp( aSelector, rHTMLWrt.eDestEnc ); + rWrt.Strm() << sTmp.GetBuffer() << " {"; + rHTMLWrt.bFirstCSS1Property = FALSE; + } + + if( !rHTMLWrt.bFirstCSS1Property ) + rWrt.Strm() << sCSS1_rule_end; + + return rWrt; +} + +static Writer& OutCSS1_SwFtnInfo( Writer& rWrt, const SwEndNoteInfo& rInfo, + SwDoc *pDoc, USHORT nNotes, BOOL bEndNote ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + String aSelector; + + if( nNotes > 0 ) + { + aSelector.AssignAscii( sHTML_anchor ); + aSelector.Append( '.'); + aSelector.AppendAscii( bEndNote ? sHTML_sdendnote_anc + : sHTML_sdfootnote_anc ); + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_RULE|CSS1_OUTMODE_TEMPLATE, + TRUE, &aSelector ); + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_font_size, + sHTML_FTN_fontheight ); + rHTMLWrt.Strm() << sCSS1_rule_end; + } + + const SwCharFmt *pSymCharFmt = rInfo.GetCharFmt( *pDoc ); + if( pSymCharFmt ) + { + const SfxItemSet& rFmtItemSet = pSymCharFmt->GetAttrSet(); + SfxItemSet aItemSet( *rFmtItemSet.GetPool(), rFmtItemSet.GetRanges() ); + aItemSet.Set( rFmtItemSet, TRUE ); + + USHORT nPoolFmtId = pSymCharFmt->GetPoolFmtId(); + // Wenn es Fuss- bzw. Endnoten gibt, dann muessen alles Attribute + // ausgegeben werden, damit Netscape das Dokument richtig anzeigt. + // Anderenfalls genuegt es, die Unterschiede zur Fuss-/Endnoten + // Vorlage rauszuschreiben. + if( nNotes == 0 && rHTMLWrt.pTemplate ) + { + SwFmt *pRefFmt = rHTMLWrt.pTemplate->GetCharFmtFromPool( + bEndNote ? RES_POOLCHR_ENDNOTE : RES_POOLCHR_FOOTNOTE ); + if( pRefFmt ) + SwHTMLWriter::SubtractItemSet( aItemSet, pRefFmt->GetAttrSet(), + TRUE ); + } + if( aItemSet.Count() ) + { + aSelector.AssignAscii( sHTML_anchor ); + aSelector.Append( '.'); + aSelector.AppendAscii( bEndNote ? sHTML_sdendnote_sym + : sHTML_sdfootnote_sym ); + SwCSS1OutMode aMode( rHTMLWrt, + CSS1_OUTMODE_RULE|CSS1_OUTMODE_TEMPLATE, + TRUE, &aSelector ); + rHTMLWrt.OutCSS1_SfxItemSet( aItemSet, FALSE ); + } + } + + return rWrt; +} + +Writer& OutCSS1_BodyTagStyleOpt( Writer& rWrt, const SfxItemSet& rItemSet, + String aEmbBGGrfName ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_BODY ); + + + // Es werden nur die Attribute der Seiten-Vorlage ausgegeben. + // Die Attribute der Standard-Absatz-Vorlage werden schon beim + // Export der Absatz-Vorlagen beruecksichtigt. + + const SfxPoolItem *pItem; + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_BACKGROUND, FALSE, + &pItem ) ) + { + OutCSS1_SvxBrush( rWrt, *pItem, CSS1_BACKGROUND_PAGE, + &aEmbBGGrfName ); + } + + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_BOX, FALSE, + &pItem )) + { + OutCSS1_SvxBox( rWrt, *pItem ); + } + + if( !rHTMLWrt.bFirstCSS1Property ) + { + // wenn eine Property als Bestandteil einer Style-Option + // ausgegeben wurde, muss die Optiomn noch beendet werden + rWrt.Strm() << '\"'; + } + + return rWrt; +} + +Writer& OutCSS1_ParaTagStyleOpt( Writer& rWrt, const SfxItemSet& rItemSet ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_STYLE_OPT | + CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_PARA ); + rHTMLWrt.OutCSS1_SfxItemSet( rItemSet, FALSE ); + + return rWrt; +} + +Writer& OutCSS1_HintSpanTag( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_SPAN_TAG | + CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_HINT ); + + Out( aCSS1AttrFnTab, rHt, rWrt ); + + if( !rHTMLWrt.bFirstCSS1Property && rHTMLWrt.bTagOn ) + rWrt.Strm() << sCSS1_span_tag_end; + + return rWrt; +} + +Writer& OutCSS1_HintStyleOpt( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_HINT ); + + Out( aCSS1AttrFnTab, rHt, rWrt ); + + if( !rHTMLWrt.bFirstCSS1Property ) + rWrt.Strm() << '\"'; + + return rWrt; +} + +// Wrapper fuer die Ausgabe von Tabellen-Hintergruenden +Writer& OutCSS1_TableBGStyleOpt( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_TABLEBOX ); + OutCSS1_SvxBrush( rWrt, rHt, CSS1_BACKGROUND_TABLE, 0 ); + + if( !rHTMLWrt.bFirstCSS1Property ) + rWrt.Strm() << '\"'; + + return rWrt; +} + + +Writer& OutCSS1_NumBulListStyleOpt( Writer& rWrt, const SwNumRule& rNumRule, + BYTE nLevel ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + SwCSS1OutMode aMode( rHTMLWrt, CSS1_OUTMODE_STYLE_OPT | + CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_PARA ); + + const SwNumFmt& rNumFmt = rNumRule.Get( nLevel ); + + long nLSpace = rNumFmt.GetAbsLSpace(); + long nFirstLineOffset = rNumFmt.GetFirstLineOffset(); + long nDfltFirstLineOffset = HTML_NUMBUL_INDENT; + if( nLevel > 0 ) + { + const SwNumFmt& rPrevNumFmt = rNumRule.Get( nLevel-1 ); + nLSpace -= rPrevNumFmt.GetAbsLSpace(); + nDfltFirstLineOffset = rPrevNumFmt.GetFirstLineOffset(); + } + + if( rHTMLWrt.IsHTMLMode(HTMLMODE_LSPACE_IN_NUMBUL) && + nLSpace != HTML_NUMBUL_MARGINLEFT ) + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin_left, nLSpace ); + + if( rHTMLWrt.IsHTMLMode(HTMLMODE_FRSTLINE_IN_NUMBUL) && + nFirstLineOffset != nDfltFirstLineOffset ) + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_text_indent, nFirstLineOffset ); + + if( !rHTMLWrt.bFirstCSS1Property ) + rWrt.Strm() << '\"'; + + return rWrt; +} + +//----------------------------------------------------------------------- + +void SwHTMLWriter::OutCSS1_FrmFmtOptions( const SwFrmFmt& rFrmFmt, + ULONG nFrmOpts, + const SdrObject *pSdrObj, + const SfxItemSet *pItemSet ) +{ + SwCSS1OutMode aMode( *this, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_FRAME ); + + const SwFmtHoriOrient& rHoriOri = rFrmFmt.GetHoriOrient(); + SvxLRSpaceItem aLRItem( rFrmFmt.GetLRSpace() ); + SvxULSpaceItem aULItem( rFrmFmt.GetULSpace() ); + if( nFrmOpts & HTML_FRMOPT_S_ALIGN ) + { + const SwFmtAnchor& rAnchor = rFrmFmt.GetAnchor(); + switch( rAnchor.GetAnchorId() ) + { + case FLY_AT_CNTNT: + case FLY_AUTO_CNTNT: + if( FRAME == rHoriOri.GetRelationOrient() || + PRTAREA == rHoriOri.GetRelationOrient() ) + { + if( !(nFrmOpts & HTML_FRMOPT_ALIGN) ) + { + // float + const sal_Char *pStr = HORI_RIGHT==rHoriOri.GetHoriOrient() + ? sCSS1_PV_right + : sCSS1_PV_left; + OutCSS1_PropertyAscii( sCSS1_P_float, pStr ); + } + break; + } + + case FLY_PAGE: + case FLY_AT_FLY: + { + // position + OutCSS1_PropertyAscii( sCSS1_P_position, sCSS1_PV_absolute ); + + // Fuer top/left muessen die Abstaende des Rahmens von + // der Position abgezogen werden, da sie in CSS1 noch + // zur Position addiert werden. + // Das funktioniert auch fuer automatisch ausgerichtete + // Rahmen, obwohl der Abstand da ja auch im Writer noch + // addiert wird. Denn auch in diesem Fall enthalten + // die Orient-Attribute die korrekte Position + + // top + long nXPos=0, nYPos=0; + BOOL bOutXPos = FALSE, bOutYPos = FALSE; + if( RES_DRAWFRMFMT == rFrmFmt.Which() ) + { + ASSERT( pSdrObj, "Kein SdrObject uebergeben. Ineffizient" ); + if( !pSdrObj ) + pSdrObj = rFrmFmt.FindSdrObject(); + ASSERT( pSdrObj, "Wo ist das SdrObject" ); + if( pSdrObj ) + { + Point aPos( pSdrObj->GetRelativePos() ); + nXPos = aPos.A(); + nYPos = aPos.B(); + } + bOutXPos = bOutYPos = TRUE; + } + else + { + bOutXPos = REL_CHAR != rHoriOri.GetRelationOrient(); + nXPos = HORI_NONE == rHoriOri.GetHoriOrient() + ? rHoriOri.GetPos() : 0; + + const SwFmtVertOrient& rVertOri = rFrmFmt.GetVertOrient(); + bOutYPos = REL_CHAR != rVertOri.GetRelationOrient(); + nYPos = VERT_NONE == rVertOri.GetVertOrient() + ? rVertOri.GetPos() : 0; + } + + if( bOutYPos ) + { + if( IsHTMLMode( HTMLMODE_FLY_MARGINS) ) + { + nYPos -= aULItem.GetUpper(); + if( nYPos < 0 ) + { + aULItem.SetUpper( (USHORT)(aULItem.GetUpper() + nYPos) ); + nYPos = 0; + } + } + + OutCSS1_UnitProperty( sCSS1_P_top, nYPos ); + } + + if( bOutXPos ) + { + // left + if( IsHTMLMode( HTMLMODE_FLY_MARGINS) ) + { + nXPos -= aLRItem.GetLeft(); + if( nXPos < 0 ) + { + aLRItem.SetLeft( (USHORT)(aLRItem.GetLeft() + nXPos) ); + nXPos = 0; + } + } + + OutCSS1_UnitProperty( sCSS1_P_left, nXPos ); + } + } + break; + } + } + + // width/height + if( nFrmOpts & HTML_FRMOPT_S_SIZE ) + { + if( RES_DRAWFRMFMT == rFrmFmt.Which() ) + { + ASSERT( pSdrObj, "Kein SdrObject uebergeben. Ineffizient" ); + if( !pSdrObj ) + pSdrObj = rFrmFmt.FindSdrObject(); + ASSERT( pSdrObj, "Wo ist das SdrObject" ); + if( pSdrObj ) + { + Size aTwipSz( pSdrObj->GetLogicRect().GetSize() ); + if( nFrmOpts & HTML_FRMOPT_S_WIDTH ) + { + if( nFrmOpts & HTML_FRMOPT_S_PIXSIZE ) + OutCSS1_PixelProperty( sCSS1_P_width, aTwipSz.Width(), + FALSE ); + else + OutCSS1_UnitProperty( sCSS1_P_width, aTwipSz.Width() ); + } + if( nFrmOpts & HTML_FRMOPT_S_HEIGHT ) + { + if( nFrmOpts & HTML_FRMOPT_S_PIXSIZE ) + OutCSS1_PixelProperty( sCSS1_P_height, aTwipSz.Height(), + TRUE ); + else + OutCSS1_UnitProperty( sCSS1_P_height, aTwipSz.Height() ); + } + } + } + else + { + ASSERT( HTML_FRMOPT_ABSSIZE & nFrmOpts, + "Absolute Groesse wird exportiert" ); + ASSERT( HTML_FRMOPT_ANYSIZE & nFrmOpts, + "Jede Groesse wird exportiert" ); + USHORT nMode = 0; + if( nFrmOpts & HTML_FRMOPT_S_WIDTH ) + nMode |= CSS1_FRMSIZE_WIDTH; + if( nFrmOpts & HTML_FRMOPT_S_HEIGHT ) + nMode |= (CSS1_FRMSIZE_MINHEIGHT|CSS1_FRMSIZE_FIXHEIGHT); + if( nFrmOpts & HTML_FRMOPT_S_PIXSIZE ) + nMode |= CSS1_FRMSIZE_PIXEL; + + OutCSS1_SwFmtFrmSize( *this, rFrmFmt.GetFrmSize(), nMode ); + } + } + + const SfxItemSet& rItemSet = rFrmFmt.GetAttrSet(); + // margin-* + if( (nFrmOpts & HTML_FRMOPT_S_SPACE) && + IsHTMLMode( HTMLMODE_FLY_MARGINS) ) + { + const SvxLRSpaceItem *pLRItem = 0; + const SvxULSpaceItem *pULItem = 0; + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_LR_SPACE, TRUE ) ) + pLRItem = &aLRItem; + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_UL_SPACE, TRUE ) ) + pULItem = &aULItem; + if( pLRItem || pULItem ) + OutCSS1_SvxULSpace_SvxLRSpace( *this, pULItem, pLRItem ); + } + + // border + if( nFrmOpts & HTML_FRMOPT_S_BORDER ) + { + const SfxPoolItem* pItem; + if( nFrmOpts & HTML_FRMOPT_S_NOBORDER ) + OutCSS1_SvxBox( *this, rFrmFmt.GetBox() ); + else if( SFX_ITEM_SET==rItemSet.GetItemState( RES_BOX, TRUE, &pItem ) ) + OutCSS1_SvxBox( *this, *pItem ); + } + + // background (wenn, dann muss auch eine Farbe ausgegeben werden) + if( nFrmOpts & HTML_FRMOPT_S_BACKGROUND ) + OutCSS1_FrmFmtBackground( rFrmFmt ); + + if( pItemSet ) + OutCSS1_SfxItemSet( *pItemSet, FALSE ); + + if( !bFirstCSS1Property ) + Strm() << '\"'; +} + +void SwHTMLWriter::OutCSS1_TableFrmFmtOptions( const SwFrmFmt& rFrmFmt ) +{ + SwCSS1OutMode aMode( *this, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_TABLE ); + + const SfxPoolItem *pItem; + const SfxItemSet& rItemSet = rFrmFmt.GetAttrSet(); + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_BACKGROUND, FALSE, &pItem ) ) + OutCSS1_SvxBrush( *this, *pItem, CSS1_BACKGROUND_TABLE, 0 ); + + if( IsHTMLMode( HTMLMODE_PRINT_EXT ) ) + OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( *this, rItemSet, FALSE ); + + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_LAYOUT_SPLIT, FALSE, &pItem ) ) + OutCSS1_SwFmtLayoutSplit( *this, *pItem ); + + if( !bFirstCSS1Property ) + Strm() << '\"'; +} + +void SwHTMLWriter::OutCSS1_SectionFmtOptions( const SwFrmFmt& rFrmFmt ) +{ + SwCSS1OutMode aMode( *this, CSS1_OUTMODE_STYLE_OPT_ON | + CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_SECTION ); + + const SfxPoolItem *pItem; + const SfxItemSet& rItemSet = rFrmFmt.GetAttrSet(); + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_BACKGROUND, FALSE, &pItem ) ) + OutCSS1_SvxBrush( *this, *pItem, CSS1_BACKGROUND_SECTION, 0 ); + + if( !bFirstCSS1Property ) + Strm() << '\"'; +} + +static BOOL OutCSS1_FrmFmtBrush( SwHTMLWriter& rWrt, + const SvxBrushItem& rBrushItem ) +{ + BOOL bWritten = FALSE; + if( rBrushItem.GetColor().GetTransparency() || + 0 != rBrushItem.GetGraphicLink() || + 0 != rBrushItem.GetGraphicPos() ) + { + OutCSS1_SvxBrush( rWrt, rBrushItem, CSS1_BACKGROUND_FLY, 0 ); + bWritten = TRUE; + } + return bWritten; +} + +void SwHTMLWriter::OutCSS1_FrmFmtBackground( const SwFrmFmt& rFrmFmt ) +{ + // Wenn der Rahmen selbst einen Hintergrund hat, wird der ausgegeben. + if( OutCSS1_FrmFmtBrush( *this, rFrmFmt.GetBackground() ) ) + return; + + // Wenn der Rahmen nicht seitengebunden ist, wird sonst muss der + // Hintergrund vom Anker betrachtet + const SwFmtAnchor& rAnchor = rFrmFmt.GetAnchor(); + RndStdIds eAnchorId = rAnchor.GetAnchorId(); + const SwPosition *pAnchorPos = rAnchor.GetCntntAnchor(); + if( FLY_PAGE != eAnchorId && pAnchorPos ) + { + const SwNode& rNode = pAnchorPos->nNode.GetNode(); + if( rNode.IsCntntNode() ) + { + // Wenn der Rahmen in einem Content-Node verankert ist, + // wird der Hintergrund von Content-Node ausgegeben, wenn + // der einen hat. + if( OutCSS1_FrmFmtBrush( *this, + rNode.GetCntntNode()->GetSwAttrSet().GetBackground()) ) + return; + + // Sonst koennen wir evtl. auch in einer Tabelle stehen + const SwTableNode *pTableNd = rNode.FindTableNode(); + if( pTableNd ) + { + const SwStartNode *pBoxSttNd = rNode.FindTableBoxStartNode(); + const SwTableBox *pBox = + pTableNd->GetTable().GetTblBox( pBoxSttNd->GetIndex() ); + + // Wenn die Box einen Hintergrund hat, nehmen wir den. + if( OutCSS1_FrmFmtBrush( *this, + pBox->GetFrmFmt()->GetBackground() ) ) + return; + + // Sonst betrachten wir den der Lines + const SwTableLine *pLine = pBox->GetUpper(); + while( pLine ) + { + if( OutCSS1_FrmFmtBrush( *this, + pLine->GetFrmFmt()->GetBackground() ) ) + return; + pBox = pLine->GetUpper(); + pLine = pBox ? pBox->GetUpper() : 0; + } + + // Wenn da auch nichts war den der Tabelle. + if( OutCSS1_FrmFmtBrush( *this, + pTableNd->GetTable().GetFrmFmt()->GetBackground() ) ) + return; + } + + } + + // Wenn der Anker wieder in einem Fly-Frame steht, dann + // wird der Hintergrund des Fly-Frames ausgegeben. + const SwFrmFmt *pFrmFmt = rNode.GetFlyFmt(); + if( pFrmFmt ) + { + OutCSS1_FrmFmtBackground( *pFrmFmt ); + return; + } + } + + // Schliesslich bleibt noch der Hintergrund der Seite uebrig und als + // letzte Rettung das Item der Config. + ASSERT( pCurrPageDesc, "Keine Seiten-Vorlage gemerkt" ); + if( !OutCSS1_FrmFmtBrush( *this, + pCurrPageDesc->GetMaster().GetBackground() ) ) + { + Color aColor( COL_WHITE ); + + // Die Hintergrund-Farbe wird normalerweise nur in Browse-Mode + // benutzt. Wir benutzen si bei einem HTML-Dokument immer und + // bei einem Text-Dokument nur, wenn es im Browse-Mode angezeigt + // wird. + if( pDoc->IsHTMLMode() || pDoc->IsBrowseMode() ) + { + ViewShell *pVSh = 0; + pDoc->GetEditShell( &pVSh ); + if ( pVSh && + COL_TRANSPARENT != pVSh->GetViewOptions()->GetRetoucheColor().GetColor()) + aColor = pVSh->GetViewOptions()->GetRetoucheColor().GetColor(); + } + + ByteString sOut; + GetCSS1Color( aColor, sOut ); + OutCSS1_PropertyAscii( sCSS1_P_background, sOut ); + } +} + +//----------------------------------------------------------------------- + +static Writer& OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( Writer& rWrt, + const SvxUnderlineItem *pUItem, + const SvxCrossedOutItem *pCOItem, + const SvxBlinkItem *pBItem ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + const sal_Char *pUStr = 0; + if( pUItem ) + { + switch( pUItem->GetUnderline() ) + { + case UNDERLINE_NONE: + pUStr = sCSS1_PV_none; + break; + case UNDERLINE_DONTKNOW: + break; + default: + if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + { + // das geht auch in HTML und muss nicht als STYLE-Option + // und darf nicht als Hint geschrieben werden + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Underline als Hint schreiben?" ); + pUStr = sCSS1_PV_underline; + } + break; + } + } + + const sal_Char *pCOStr = 0; + if( pCOItem ) + { + switch( pCOItem->GetStrikeout() ) + { + case STRIKEOUT_DONTKNOW: + break; + case STRIKEOUT_NONE: + if( !pUStr ) + pUStr = sCSS1_PV_none; + break; + default: + if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + { + // das geht auch in HTML und muss nicht als STYLE-Option + // und darf nicht als Hint geschrieben werden + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "CrossedOut als Hint schreiben?" ); + pCOStr = sCSS1_PV_line_through; + if( pUStr && sCSS1_PV_none == pUStr ) + pUStr = 0; + } + break; + } + } + + const sal_Char *pBStr = 0; + if( pBItem && rHTMLWrt.IsHTMLMode(HTMLMODE_BLINK) ) + { + if( !pBItem->GetValue() ) + { + if( !pUStr && !pCOStr ) + pBStr = sCSS1_PV_none; + } + else if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + { + // das geht auch in HTML und muss nicht als STYLE-Option + // und darf nicht als Hint geschrieben werden + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Blink als Hint schreiben?" ); + pBStr = sCSS1_PV_blink; + if( pUStr && sCSS1_PV_none == pUStr ) + pUStr = 0; + if( pCOStr && sCSS1_PV_none == pCOStr ) + pCOStr = 0; + } + } + + ByteString sOut; + if( pUStr ) + sOut.Append( pUStr ); + + if( pCOStr ) + { + if( sOut.Len() ) + sOut += ' '; + + sOut.Append( pCOStr ); + } + + if( pBStr ) + { + if( sOut.Len() ) + sOut += ' '; + + sOut.Append( pBStr ); + } + + if( sOut.Len() ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_text_decoration, sOut ); + + return rWrt; +} + + +static Writer& OutCSS1_SvxCaseMap( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + if( !rHTMLWrt.IsHTMLMode(HTMLMODE_SMALL_CAPS) ) + return rWrt; + + const sal_Char *pStr = 0; + switch( ((const SvxCaseMapItem&)rHt).GetCaseMap() ) + { + case SVX_CASEMAP_NOT_MAPPED: pStr = sCSS1_PV_normal; break; + case SVX_CASEMAP_KAPITAELCHEN: pStr = sCSS1_PV_small_caps; break; + } + + if( pStr ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_font_variant, pStr ); + + return rWrt; +} + + +static Writer& OutCSS1_SvxColor( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Farben muessen nicht in der Style-Option ausgegeben werden. + if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) && + !rHTMLWrt.bCfgPreferStyles ) + return rWrt; + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Farbe wirklich als Hint ausgeben?" ); + + const Color& rColor = ((const SvxColorItem&)rHt).GetValue(); + + ByteString sOut; + GetCSS1Color( rColor, sOut ); + + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_color, sOut ); + + return rWrt; +} + + +static Writer& OutCSS1_SvxCrossedOut( Writer& rWrt, const SfxPoolItem& rHt ) +{ + // Mit dieser Methode werden nur Hints ausgegeben! + // Sonst wird OutCSS1_SvxUnderl_SvxCrOut_SvxBlink() direkt aufgerufen. + + if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) ) + OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( rWrt, 0, + (const SvxCrossedOutItem *)&rHt, 0 ); + + return rWrt; +} + +static Writer& OutCSS1_SvxFont( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Fonts muessen nicht in der Style-Option ausgegeben werden. + if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + return rWrt; + + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Font wirklich als Hint ausgeben?" ); + + String sOut; + // MS IE3b1 hat mit einfachen Haekchen Probleme + USHORT nMode = rHTMLWrt.nCSS1OutMode & CSS1_OUTMODE_ANY_ON; + sal_Unicode cQuote = nMode == CSS1_OUTMODE_RULE_ON ? '\"' : '\''; + SwHTMLWriter::PrepareFontList( ((const SvxFontItem&)rHt), sOut, cQuote, + TRUE ); + + rHTMLWrt.OutCSS1_Property( sCSS1_P_font_family, sOut ); + + return rWrt; +} + +static Writer& OutCSS1_SvxFontHeight( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Font-Hoehen muessen nicht in der Style-Option ausgegeben werden. + // Fuer Drop-Caps wird ein andewres font-size ausgegeben + if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) || + rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_DROPCAP ) ) + return rWrt; + + UINT32 nHeight = ((const SvxFontHeightItem&)rHt).GetHeight(); + if( rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT) ) + { + // einen Hint nur dann ausgeben wenn es auch was bringt + USHORT nSize = rHTMLWrt.GetHTMLFontSize( nHeight ); + if( rHTMLWrt.aFontHeights[nSize-1] == nHeight ) + return rWrt; + } + ByteString sHeight( ByteString::CreateFromInt32( + (sal_Int32)(nHeight/20) ) ); + sHeight.Append( sCSS1_UNIT_pt ); + + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_font_size, sHeight ); + + return rWrt; +} + +static Writer& OutCSS1_SvxPosture( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + const sal_Char *pStr = 0; + switch( ((const SvxPostureItem&)rHt).GetPosture() ) + { + case ITALIC_NONE: pStr = sCSS1_PV_normal; break; + case ITALIC_OBLIQUE: pStr = sCSS1_PV_oblique; break; + case ITALIC_NORMAL: + if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + { + // das geht auch in HTML und muss nicht als STYLE-Option + // und darf nicht als Hint geschrieben werden + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Italic als Hint schreiben?" ); + pStr = sCSS1_PV_italic; + } + break; + } + + if( pStr ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_font_style, pStr ); + + return rWrt; +} + +static Writer& OutCSS1_SvxKerning( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Kerning-Item nur ausgeben, wenn volle Style-Unterst�tzung da ist + if( !rHTMLWrt.IsHTMLMode(HTMLMODE_FULL_STYLES) ) + return rWrt; + + INT16 nValue = ((const SvxKerningItem&)rHt).GetValue(); + if( nValue ) + { + ByteString sOut; + if( nValue < 0 ) + { + sOut = '-'; + nValue = -nValue; + } + + // Breite als n.n pt + nValue = (nValue + 1) / 2; // 1/10pt + sOut.Append( ByteString::CreateFromInt32( (sal_Int32)(nValue / 10) ) ); + sOut.Append( '.' ); + sOut.Append( ByteString::CreateFromInt32( (sal_Int32)(nValue % 10) ) ); + sOut.Append( sCSS1_UNIT_pt ); + + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_letter_spacing, sOut ); + } + else + { + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_letter_spacing, + sCSS1_PV_normal ); + } + + return rWrt; +} + +static Writer& OutCSS1_SvxUnderline( Writer& rWrt, const SfxPoolItem& rHt ) +{ + // Mit dieser Methode werden nur Hints ausgegeben! + // Sonst wird OutCSS1_SvxUnderl_SvxCrOut_SvxBlink() direkt aufgerufen. + + if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) ) + OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( rWrt, + (const SvxUnderlineItem *)&rHt, 0, 0 ); + + return rWrt; +} + + +static Writer& OutCSS1_SvxFontWeight( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + const sal_Char *pStr = 0; + switch( ((const SvxWeightItem&)rHt).GetWeight() ) + { + case WEIGHT_ULTRALIGHT: pStr = sCSS1_PV_extra_light; break; + case WEIGHT_LIGHT: pStr = sCSS1_PV_light; break; + case WEIGHT_SEMILIGHT: pStr = sCSS1_PV_demi_light; break; + case WEIGHT_NORMAL: pStr = sCSS1_PV_medium; break; + case WEIGHT_SEMIBOLD: pStr = sCSS1_PV_demi_bold; break; + case WEIGHT_BOLD: + if( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + { + // das geht auch in HTML und muss nicht als STYLE-Option + // und darf nicht als Hint geschrieben werden + ASSERT( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT), + "Fett als Hint schreiben?" ); + pStr = sCSS1_PV_bold; + } + break; + case WEIGHT_ULTRABOLD: pStr = sCSS1_PV_extra_bold; break; + } + + if( pStr ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_font_weight, pStr ); + + return rWrt; +} + +static Writer& OutCSS1_SvxBlink( Writer& rWrt, const SfxPoolItem& rHt ) +{ + // Mit dieser Methode werden nur Hints ausgegeben! + // Sonst wird OutCSS1_SvxUnderl_SvxCrOut_SvxBlink() direkt aufgerufen. + + if( ((SwHTMLWriter&)rWrt).IsCSS1Source(CSS1_OUTMODE_HINT) ) + OutCSS1_SvxUnderl_SvxCrOut_SvxBlink( rWrt, + 0, 0, (const SvxBlinkItem *)&rHt ); + + return rWrt; +} + +static Writer& OutCSS1_SvxLineSpacing( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // #60393#: Netscape4 hat massive Probleme mit den Zellenhoehen + // wenn der Zeilenabstand innerhalb einer Tabelle geaendert wird + // und die Breite der Tabelle nicht automatisch berechnet wird + // (also wenn eine WIDTH-Option vorhanden ist). + if( rHTMLWrt.bOutTable && rHTMLWrt.bCfgNetscape4 ) + return rWrt; + + const SvxLineSpacingItem& rLSItem = (const SvxLineSpacingItem&)rHt; + + USHORT nHeight = 0; + USHORT nPrcHeight = 0; + SvxLineSpace eLineSpace = rLSItem.GetLineSpaceRule(); + switch( rLSItem.GetInterLineSpaceRule() ) + { + case SVX_INTER_LINE_SPACE_OFF: + case SVX_INTER_LINE_SPACE_FIX: + { + switch( eLineSpace ) + { + case SVX_LINE_SPACE_MIN: + case SVX_LINE_SPACE_FIX: + nHeight = rLSItem.GetLineHeight(); + break; + case SVX_LINE_SPACE_AUTO: + nPrcHeight = 100; + break; + } + } + break; + case SVX_INTER_LINE_SPACE_PROP: + nPrcHeight = rLSItem.GetPropLineSpace(); + break; + } + + if( nHeight ) + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_line_height, (long)nHeight ); + else if( nPrcHeight ) + { + ByteString sHeight( + ByteString::CreateFromInt32( (sal_Int32)nPrcHeight ) ); + sHeight += '%'; + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_line_height, sHeight ); + } + + return rWrt; + +} + +static Writer& OutCSS1_SvxAdjust( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Alignment in Style-Option nur ausgeben, wenn das Tag kein + // ALIGN=xxx zulaesst + if( rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) && + !rHTMLWrt.bNoAlign) + return rWrt; + + const sal_Char* pStr = 0; + switch( ((const SvxAdjustItem&)rHt).GetAdjust() ) + { + case SVX_ADJUST_LEFT: pStr = sCSS1_PV_left; break; + case SVX_ADJUST_RIGHT: pStr = sCSS1_PV_right; break; + case SVX_ADJUST_BLOCK: pStr = sCSS1_PV_justify; break; + case SVX_ADJUST_CENTER: pStr = sCSS1_PV_center; break; + } + + if( pStr ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_text_align, pStr ); + + return rWrt; +} + +static Writer& OutCSS1_SvxFmtSplit( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const sal_Char *pStr = ((const SvxFmtSplitItem&)rHt).GetValue() + ? sCSS1_PV_auto + : sCSS1_PV_avoid; + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_page_break_inside, pStr ); + + return rWrt; +} + +static Writer& OutCSS1_SwFmtLayoutSplit( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const sal_Char *pStr = ((const SwFmtLayoutSplit&)rHt).GetValue() + ? sCSS1_PV_auto + : sCSS1_PV_avoid; + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_page_break_inside, pStr ); + + return rWrt; +} + +static Writer& OutCSS1_SvxWidows( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + ByteString aStr( + ByteString::CreateFromInt32( ((const SvxWidowsItem&)rHt).GetValue() ) ); + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_widows, aStr ); + + return rWrt; +} + +static Writer& OutCSS1_SvxOrphans( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + ByteString aStr( + ByteString::CreateFromInt32( ((const SvxOrphansItem&)rHt).GetValue() ) ); + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_orphans, aStr ); + + return rWrt; +} + +static void OutCSS1_SwFmtDropAttrs( SwHTMLWriter& rHWrt, + const SwFmtDrop& rDrop ) +{ + // Text fliesst rechts drumrum + rHWrt.OutCSS1_PropertyAscii( sCSS1_P_float, sCSS1_PV_left ); + + // Anzahl der Zeilen -> %-Angabe fuer Font-Hoehe! + ByteString sOut( ByteString::CreateFromInt32( rDrop.GetLines()*100 ) ); + sOut += '%'; + rHWrt.OutCSS1_PropertyAscii( sCSS1_P_font_size, sOut ); + + // Abstand zum Text = rechter Rand + USHORT nDistance = rDrop.GetDistance(); + if( nDistance > 0 ) + rHWrt.OutCSS1_UnitProperty( sCSS1_P_margin_right, nDistance ); + + const SwCharFmt *pDCCharFmt = rDrop.GetCharFmt(); + if( pDCCharFmt ) + rHWrt.OutCSS1_SfxItemSet( pDCCharFmt->GetAttrSet() ); +} + +static Writer& OutCSS1_SwFmtDrop( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + // nie als Option eines Absatzes ausgeben, sondern nur als Hints + if( !rHTMLWrt.IsCSS1Source(CSS1_OUTMODE_HINT) ) + return rWrt; + + if( rHTMLWrt.bTagOn ) + { + SwCSS1OutMode aMode( rHTMLWrt, + CSS1_OUTMODE_SPAN_TAG1_ON|CSS1_OUTMODE_ENCODE| + CSS1_OUTMODE_DROPCAP ); + + OutCSS1_SwFmtDropAttrs( rHTMLWrt, (const SwFmtDrop&)rHt ); + // Ein "> wird schon vom aufrufenden OutCSS1_HintAsSpanTag geschrieben. + } + else + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_span, FALSE ); + } + + return rWrt; +} + +static Writer& OutCSS1_SwFmtFrmSize( Writer& rWrt, const SfxPoolItem& rHt, + USHORT nMode ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + ByteString sOut; + const SwFmtFrmSize& rFSItem = (const SwFmtFrmSize&)rHt; + + if( nMode & CSS1_FRMSIZE_WIDTH ) + { + BYTE nPrcWidth = rFSItem.GetWidthPercent(); + if( nPrcWidth ) + { + (sOut = ByteString::CreateFromInt32( nPrcWidth) ) += '%'; + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_width, sOut ); + } + else if( nMode & CSS1_FRMSIZE_PIXEL ) + { + rHTMLWrt.OutCSS1_PixelProperty( sCSS1_P_width, + rFSItem.GetSize().Width(), FALSE ); + } + else + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_width, + rFSItem.GetSize().Width() ); + } + } + + if( nMode & CSS1_FRMSIZE_ANYHEIGHT ) + { + BOOL bOutHeight = FALSE; + switch( rFSItem.GetSizeType() ) + { + case ATT_FIX_SIZE: + bOutHeight = (nMode & CSS1_FRMSIZE_FIXHEIGHT) != 0; + break; + case ATT_MIN_SIZE: + bOutHeight = (nMode & CSS1_FRMSIZE_MINHEIGHT) != 0; + break; + case ATT_VAR_SIZE: + bOutHeight = (nMode & CSS1_FRMSIZE_VARHEIGHT) != 0; + break; + default: + ASSERT( bOutHeight, "Hoehe wird nicht exportiert" ); + break; + } + + if( bOutHeight ) + { + BYTE nPrcHeight = rFSItem.GetHeightPercent(); + if( nPrcHeight ) + { + (sOut = ByteString::CreateFromInt32( nPrcHeight ) ) += '%'; + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_height, sOut ); + } + else if( nMode & CSS1_FRMSIZE_PIXEL ) + { + rHTMLWrt.OutCSS1_PixelProperty( sCSS1_P_height, + rFSItem.GetSize().Width(), + TRUE ); + } + else + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_height, + rFSItem.GetSize().Height() ); + } + } + } + + return rWrt; +} + +static Writer& OutCSS1_SvxLRSpace( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const SvxLRSpaceItem& rLRItem = (const SvxLRSpaceItem&)rHt; + + // Der Export der harten Attributierung ist unnoetig, wenn die + // neuen Werte denen der aktuellen Vorlage entsprechen + + // Einen linken Rand kann es durch eine Liste bereits in der + // Umgebung geben + long nLeftMargin = (long)rLRItem.GetTxtLeft() - rHTMLWrt.nLeftMargin; + if( rHTMLWrt.nDfltLeftMargin != nLeftMargin ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin_left, nLeftMargin ); + } + + if( rHTMLWrt.nDfltRightMargin != rLRItem.GetRight() ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin_right, + (long)rLRItem.GetRight() ); + } + + // Der Erstzeilen-Einzug kann den Platz fuer eine Numerierung + // enthalten + long nFirstLineIndent = (long)rLRItem.GetTxtFirstLineOfst() - + rHTMLWrt.nFirstLineIndent; + if( rHTMLWrt.nDfltFirstLineIndent != nFirstLineIndent ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_text_indent, + nFirstLineIndent ); + } + + return rWrt; +} + +static Writer& OutCSS1_SvxULSpace( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const SvxULSpaceItem& rULItem = (const SvxULSpaceItem&)rHt; + + if( rHTMLWrt.nDfltTopMargin != rULItem.GetUpper() ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin_top, + (long)rULItem.GetUpper() ); + } + + if( rHTMLWrt.nDfltBottomMargin != rULItem.GetLower() ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin_bottom, + (long)rULItem.GetLower() ); + } + + return rWrt; +} + +static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt, + const SvxULSpaceItem *pULItem, + const SvxLRSpaceItem *pLRItem ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + if( pLRItem && pULItem && + pLRItem->GetLeft() == pLRItem->GetRight() && + pLRItem->GetLeft() == pULItem->GetUpper() && + pLRItem->GetLeft() == pULItem->GetLower() && + pLRItem->GetLeft() != rHTMLWrt.nDfltLeftMargin && + pLRItem->GetRight() != rHTMLWrt.nDfltRightMargin && + pULItem->GetUpper() != rHTMLWrt.nDfltTopMargin && + pULItem->GetLower() != rHTMLWrt.nDfltBottomMargin ) + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_margin, (long)pLRItem->GetLeft() ); + } + else + { + if( pLRItem ) + OutCSS1_SvxLRSpace( rWrt, *pLRItem ); + if( pULItem ) + OutCSS1_SvxULSpace( rWrt, *pULItem ); + } + + return rWrt; +} + +static Writer& OutCSS1_SvxULSpace_SvxLRSpace( Writer& rWrt, + const SfxItemSet& rItemSet, + BOOL bDeep ) +{ + const SvxULSpaceItem *pULSpace = 0; + const SvxLRSpaceItem *pLRSpace = 0; + const SfxPoolItem *pItem; + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_LR_SPACE, bDeep, &pItem ) ) + pLRSpace = (const SvxLRSpaceItem *)pItem; + + if( SFX_ITEM_SET == rItemSet.GetItemState( RES_UL_SPACE, bDeep, &pItem ) ) + pULSpace = (const SvxULSpaceItem *)pItem; + + if( pLRSpace || pULSpace ) + OutCSS1_SvxULSpace_SvxLRSpace( rWrt, pULSpace, pLRSpace ); + + return rWrt; +} + +static Writer& OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( Writer& rWrt, + const SvxFmtBreakItem *pBreakItem, + const SwFmtPageDesc *pPDescItem, + const SvxFmtKeepItem *pKeepItem ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + if( !rHTMLWrt.IsHTMLMode(HTMLMODE_PRINT_EXT) ) + return rWrt; + + const sal_Char *pBreakBefore = 0; + const sal_Char *pBreakAfter = 0; + + if( pKeepItem ) + { + pBreakAfter = pKeepItem->GetValue() ? sCSS1_PV_avoid : sCSS1_PV_auto; + } + if( pBreakItem ) + { + switch( pBreakItem->GetBreak() ) + { + case SVX_BREAK_NONE: + pBreakBefore = sCSS1_PV_auto; + if( !pBreakAfter ) + pBreakAfter = sCSS1_PV_auto; + break; + + case SVX_BREAK_PAGE_BEFORE: + pBreakBefore = sCSS1_PV_always; + break; + + case SVX_BREAK_PAGE_AFTER: + pBreakAfter= sCSS1_PV_always; + break; + } + } + if( pPDescItem ) + { + const SwPageDesc *pPDesc = pPDescItem->GetPageDesc(); + if( pPDesc ) + { + switch( pPDesc->GetPoolFmtId() ) + { + case RES_POOLPAGE_LEFT: pBreakBefore = sCSS1_PV_left; break; + case RES_POOLPAGE_RIGHT: pBreakBefore = sCSS1_PV_right; break; + default: pBreakBefore = sCSS1_PV_always; break; + } + } + else if( !pBreakBefore ) + { + pBreakBefore = sCSS1_PV_auto; + } + } + + if( pBreakBefore ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_page_break_before, + pBreakBefore ); + if( pBreakAfter ) + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_page_break_after, + pBreakAfter ); + + return rWrt; +} + +static Writer& OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( Writer& rWrt, + const SfxItemSet& rItemSet, + BOOL bDeep ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + const SfxPoolItem *pItem; + const SvxFmtBreakItem *pBreakItem = 0; + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_BREAK, bDeep, &pItem )) + pBreakItem = (const SvxFmtBreakItem *)pItem; + + const SwFmtPageDesc *pPDescItem = 0; + if( ( !rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) || + !rHTMLWrt.bCSS1IgnoreFirstPageDesc || + rHTMLWrt.pStartNdIdx->GetIndex() != + rHTMLWrt.pCurPam->GetPoint()->nNode.GetIndex() ) && + SFX_ITEM_SET==rItemSet.GetItemState( RES_PAGEDESC, bDeep, &pItem )) + pPDescItem = (const SwFmtPageDesc*)pItem; + + const SvxFmtKeepItem *pKeepItem = 0; + if( SFX_ITEM_SET==rItemSet.GetItemState( RES_KEEP, bDeep, &pItem )) + pKeepItem = (const SvxFmtKeepItem *)pItem; + + if( pBreakItem || pPDescItem || pKeepItem ) + OutCSS1_SvxFmtBreak_SwFmtPDesc_SvxFmtKeep( rWrt, pBreakItem, + pPDescItem, pKeepItem ); + + return rWrt; +} + +// Wrapper fuer OutCSS1_SfxItemSet etc. +static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Absatz-Hintergruende werden nur fuer den SW ausgegeben + if( rHt.Which() < RES_CHRATR_END || + rHTMLWrt.IsHTMLMode(HTMLMODE_FULL_STYLES) ) + OutCSS1_SvxBrush( rWrt, rHt, CSS1_BACKGROUND_ATTR, 0 ); + + return rWrt; +} + + +static Writer& OutCSS1_SvxBrush( Writer& rWrt, const SfxPoolItem& rHt, + USHORT nMode, const String *pGrfName ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Das Zeichen-Attribut wird nicht ausgegeben, wenn gerade + // Optionen ausgegeben werden + if( rHt.Which() < RES_CHRATR_END && + rHTMLWrt.IsCSS1Source( CSS1_OUTMODE_PARA ) ) + return rWrt; + + // Erstmal ein par Werte holen +// const Brush &rBrush = ((const SvxBrushItem &)rHt).GetBrush(); + const Color & rColor = ((const SvxBrushItem &)rHt).GetColor(); + const String *pLink = pGrfName ? pGrfName + : ((const SvxBrushItem &)rHt).GetGraphicLink(); + SvxGraphicPosition ePos = ((const SvxBrushItem &)rHt).GetGraphicPos(); + + if( CSS1_BACKGROUND_PAGE==nMode ) + { + // Fuer Seitenvorlagen wurde der Grafik-Name uebergeben. Es wird + // nur ein Attribut ausgegeben, wenn die Grafik nicht gekachelt ist. + ASSERT( pLink, "Wo ist der Grafik-Name der Seitenvorlage?" ); + if( !pLink || !pLink->Len() || GPOS_TILED==ePos ) + return rWrt; + } + + // Erstmal die Farbe holen + BOOL bColor = FALSE; + BOOL bTransparent = rColor.GetTransparency() > 0; + Color aColor; + if( !bTransparent ) + { + aColor = rColor; + bColor = TRUE; + } + + // und jetzt eine Grafik + String sGrfNm; + + if( !pLink ) + { + // embeddete Grafik -> WriteEmbedded schreiben + const Graphic* pGrf = ((const SvxBrushItem &)rHt).GetGraphic(); + if( pGrf ) + { + // Grafik als (JPG-)File speichern + const String* pTempFileName = rHTMLWrt.GetOrigFileName(); + if(pTempFileName) + sGrfNm = *pTempFileName; + USHORT nErr = XOutBitmap::WriteGraphic( *pGrf, sGrfNm, + String::CreateFromAscii("JPG") ); + if( !nErr ) // fehlerhaft, da ist nichts auszugeben + { + sGrfNm = URIHelper::SmartRelToAbs( sGrfNm ); + if( rHTMLWrt.HasCId() ) + rHTMLWrt.MakeCIdURL( sGrfNm ); + pLink = &sGrfNm; + } + else + { + rHTMLWrt.nWarn = WARN_SWG_POOR_LOAD | WARN_SW_WRITE_BASE; + } + } + } + else if( !pGrfName && (rHTMLWrt.bCfgCpyLinkedGrfs || rHTMLWrt.HasCId()) ) + { + sGrfNm = *pLink; + rWrt.CopyLocalFileToINet( sGrfNm, rHTMLWrt.HasCId() ); + if( rHTMLWrt.HasCId() ) + rHTMLWrt.MakeCIdURL( sGrfNm ); + pLink = &sGrfNm; + } + + // In Tabellen wird nur dann etwas exportiert, wenn eine Grafik + // existiert. + if( CSS1_BACKGROUND_TABLE==nMode && !pLink ) + return rWrt; + + // ggf. noch die Ausrichtung der Grafik + const sal_Char *pRepeat = 0, *pHori = 0, *pVert = 0; + if( pLink ) + { + if( GPOS_TILED==ePos ) + { + pRepeat = sCSS1_PV_repeat; + } + else + { + switch( ePos ) + { + case GPOS_LT: + case GPOS_MT: + case GPOS_RT: + pHori = sCSS1_PV_top; + break; + + case GPOS_LM: + case GPOS_MM: + case GPOS_RM: + pHori = sCSS1_PV_middle; + break; + + case GPOS_LB: + case GPOS_MB: + case GPOS_RB: + pHori = sCSS1_PV_bottom; + break; + } + + switch( ePos ) + { + case GPOS_LT: + case GPOS_LM: + case GPOS_LB: + pVert = sCSS1_PV_left; + break; + + case GPOS_MT: + case GPOS_MM: + case GPOS_MB: + pVert = sCSS1_PV_center; + break; + + case GPOS_RT: + case GPOS_RM: + case GPOS_RB: + pVert = sCSS1_PV_right; + break; + } + + if( pHori || pVert ) + pRepeat = sCSS1_PV_no_repeat; + } + } + + // jetzt den String zusammen bauen + String sOut; + if( !pLink && !bColor ) + { + // keine Farbe und kein Link, aber ein transparenter Brush + if( bTransparent && CSS1_BACKGROUND_FLY != nMode ) + sOut.AssignAscii( sCSS1_PV_transparent ); + } + else + { + if( bColor ) + { + ByteString sTmp; + GetCSS1Color( aColor, sTmp ); + sOut += String( sTmp, RTL_TEXTENCODING_ASCII_US ); + } + + if( pLink ) + { + if( bColor ) + sOut += ' '; + + sOut.AppendAscii( sCSS1_url ); + sOut.Append( '(' ); + sOut.Append( INetURLObject::AbsToRel( *pLink, + INetURLObject::WAS_ENCODED, + INetURLObject::DECODE_WITH_CHARSET )); + sOut.Append( ')' ); + + if( pRepeat ) + { + sOut.Append( ' ' ); + sOut.AppendAscii( pRepeat ); + } + + if( pHori ) + { + sOut.Append( ' ' ); + sOut.AppendAscii( pHori ); + } + if( pVert ) + { + sOut.Append( ' ' ); + sOut.AppendAscii( pVert ); + } + + sOut.Append( ' ' ); + sOut.AppendAscii( sCSS1_PV_scroll ); + } + } + + if( sOut.Len() ) + rHTMLWrt.OutCSS1_Property( sCSS1_P_background, sOut ); + + return rWrt; +} + +static void OutCSS1_SvxBorderLine( SwHTMLWriter& rHTMLWrt, + const sal_Char *pProperty, + const SvxBorderLine *pLine ) +{ + if( !pLine ) + { + rHTMLWrt.OutCSS1_PropertyAscii( pProperty, sCSS1_PV_none ); + return; + } + + BOOL bDouble = FALSE; + USHORT nWidth = pLine->GetOutWidth(); + if( pLine->GetInWidth() ) + { + nWidth += pLine->GetDistance(); + nWidth += pLine->GetInWidth(); + bDouble = TRUE; + } + + ByteString sOut; + if( Application::GetDefaultDevice() && + nWidth <= Application::GetDefaultDevice()->PixelToLogic( + Size( 1, 1 ), MapMode( MAP_TWIP) ).Width() ) + { + // Wenn die Breite kleiner ist als ein Pixel, dann als 1px + // ausgeben, damit Netscape und IE die Linie auch darstellen. + sOut += "1px"; + } + else + { +#ifdef USE_MAPMODE_MM100 + nWidth = (USHORT)((double)nWidth * (25.4/72)); // 1/100pt +#else + nWidth *= 5; // 1/100pt +#endif + + // Breite als n.nn pt + sOut += ByteString::CreateFromInt32( nWidth / 100 ); + (((sOut += '.') + += ByteString::CreateFromInt32((nWidth/10) % 10)) + += ByteString::CreateFromInt32(nWidth % 10)) += sCSS1_UNIT_pt; + } + + // Linien-Stil: solid oder double + ((sOut += ' ') + += (bDouble ? sCSS1_PV_double : sCSS1_PV_solid)) += ' '; + + // und noch die Farbe + GetCSS1Color( pLine->GetColor(), sOut ); + + rHTMLWrt.OutCSS1_PropertyAscii( pProperty, sOut ); +} + +static Writer& OutCSS1_SvxBox( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + // Das Zeichen-Attribut wird nicht ausgegeben, wenn gerade + // Optionen ausgegeben werden + if( !rHTMLWrt.IsHTMLMode(HTMLMODE_PARA_BORDER)) + return rWrt; + + const SvxBoxItem& rBoxItem = (const SvxBoxItem&)rHt; + const SvxBorderLine *pTop = rBoxItem.GetTop(); + const SvxBorderLine *pBottom = rBoxItem.GetBottom(); + const SvxBorderLine *pLeft = rBoxItem.GetLeft(); + const SvxBorderLine *pRight = rBoxItem.GetRight(); + + if( (pTop && pBottom && pLeft && pRight && + *pTop == *pBottom && *pTop == *pLeft && *pTop == *pRight) || + (!pTop && !pBottom && !pLeft && !pRight) ) + { + // alle Linien gesetzt und gleich oder alle Linien nicht gesetzt + // => border : ... + OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border, pTop ); + } + else + { + // sonst alle Linien individuell ausgeben + OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_top, pTop ); + OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_bottom, pBottom ); + OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_left, pLeft ); + OutCSS1_SvxBorderLine( rHTMLWrt, sCSS1_P_border_right, pRight ); + } + + long nTopDist = pTop ? rBoxItem.GetDistance( BOX_LINE_TOP ) : 0; + long nBottomDist = pBottom ? rBoxItem.GetDistance( BOX_LINE_BOTTOM ) : 0; + long nLeftDist = pLeft ? rBoxItem.GetDistance( BOX_LINE_LEFT ) : 0; + long nRightDist = pRight ? rBoxItem.GetDistance( BOX_LINE_RIGHT ) : 0; + + if( nTopDist == nBottomDist && nLeftDist == nRightDist ) + { + ByteString sVal; + AddUnitPropertyValue( nTopDist, rHTMLWrt.GetCSS1Unit(), sVal ); + if( nTopDist != nLeftDist ) + { + sVal += ' '; + AddUnitPropertyValue( nLeftDist, rHTMLWrt.GetCSS1Unit(), sVal ); + } + rHTMLWrt.OutCSS1_PropertyAscii( sCSS1_P_padding, sVal ); + } + else + { + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_padding_top, nTopDist ); + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_padding_bottom, nBottomDist ); + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_padding_left, nLeftDist ); + rHTMLWrt.OutCSS1_UnitProperty( sCSS1_P_padding_right, nRightDist ); + } + + return rWrt; +} + +/* + * lege hier die Tabellen fuer die HTML-Funktions-Pointer auf + * die Ausgabe-Funktionen an. + * Es sind lokale Strukturen, die nur innerhalb der HTML-DLL + * bekannt sein muessen. + */ + + +SwAttrFnTab aCSS1AttrFnTab = { +/* RES_CHRATR_CASEMAP */ OutCSS1_SvxCaseMap, +/* RES_CHRATR_CHARSETCOLOR */ 0, +/* RES_CHRATR_COLOR */ OutCSS1_SvxColor, +/* RES_CHRATR_CONTOUR */ 0, +/* RES_CHRATR_CROSSEDOUT */ OutCSS1_SvxCrossedOut, +/* RES_CHRATR_ESCAPEMENT */ 0, +/* RES_CHRATR_FONT */ OutCSS1_SvxFont, +/* RES_CHRATR_FONTSIZE */ OutCSS1_SvxFontHeight, +/* RES_CHRATR_KERNING */ OutCSS1_SvxKerning, +/* RES_CHRATR_LANGUAGE */ 0, +/* RES_CHRATR_POSTURE */ OutCSS1_SvxPosture, +/* RES_CHRATR_PROPORTIONALFONTSIZE*/0, +/* RES_CHRATR_SHADOWED */ 0, +/* RES_CHRATR_UNDERLINE */ OutCSS1_SvxUnderline, +/* RES_CHRATR_WEIGHT */ OutCSS1_SvxFontWeight, +/* RES_CHRATR_WORDLINEMODE */ 0, +/* RES_CHRATR_AUTOKERN */ 0, +/* RES_CHRATR_BLINK */ OutCSS1_SvxBlink, +/* RES_CHRATR_NOHYPHEN */ 0, // Neu: nicht trennen +/* RES_CHRATR_NOLINEBREAK */ 0, // Neu: nicht umbrechen +/* RES_CHRATR_BACKGROUND */ OutCSS1_SvxBrush, // Neu: Zeichenhintergrund +/* RES_CHRATR_CJK_FONT */ 0, +/* RES_CHRATR_CJK_FONTSIZE */ 0, +/* RES_CHRATR_CJK_LANGUAGE */ 0, +/* RES_CHRATR_CJK_POSTURE */ 0, +/* RES_CHRATR_CJK_WEIGHT */ 0, +/* RES_CHRATR_CTL_FONT */ 0, +/* RES_CHRATR_CTL_FONTSIZE */ 0, +/* RES_CHRATR_CTL_LANGUAGE */ 0, +/* RES_CHRATR_CTL_POSTURE */ 0, +/* RES_CHRATR_CTL_WEIGHT */ 0, +/* RES_CHRATR_WRITING_DIRECTION */ 0, +/* RES_CHRATR_DUMMY2 */ 0, +/* RES_CHRATR_DUMMY3 */ 0, +/* RES_CHRATR_DUMMY4 */ 0, +/* RES_CHRATR_DUMMY5 */ 0, +/* RES_CHRATR_DUMMY1 */ 0, // Dummy: + +/* RES_TXTATR_NOLINEBREAK */ 0, +/* RES_TXTATR_NOHYPHEN */ 0, +/* RES_TXTATR_REFMARK*/ 0, +/* RES_TXTATR_TOXMARK */ 0, +/* RES_TXTATR_CHARFMT */ 0, +/* RES_TXTATR_TWO_LINES */ 0, +/* RES_TXTATR_CJK_RUBY */ 0, +/* RES_TXTATR_UNKNOWN_CONTAINER */ 0, +/* RES_TXTATR_DUMMY5 */ 0, +/* RES_TXTATR_DUMMY6 */ 0, + +/* RES_TXTATR_FIELD */ 0, +/* RES_TXTATR_FLYCNT */ 0, +/* RES_TXTATR_FTN */ 0, +/* RES_TXTATR_SOFTHYPH */ 0, +/* RES_TXTATR_HARDBLANK*/ 0, +/* RES_TXTATR_DUMMY1 */ 0, // Dummy: +/* RES_TXTATR_DUMMY2 */ 0, // Dummy: + +/* RES_PARATR_LINESPACING */ OutCSS1_SvxLineSpacing, +/* RES_PARATR_ADJUST */ OutCSS1_SvxAdjust, +/* RES_PARATR_SPLIT */ OutCSS1_SvxFmtSplit, +/* RES_PARATR_WIDOWS */ OutCSS1_SvxWidows, +/* RES_PARATR_ORPHANS */ OutCSS1_SvxOrphans, +/* RES_PARATR_TABSTOP */ 0, +/* RES_PARATR_HYPHENZONE*/ 0, +/* RES_PARATR_DROP */ OutCSS1_SwFmtDrop, +/* RES_PARATR_REGISTER */ 0, // neu: Registerhaltigkeit +/* RES_PARATR_DUMMY1 */ 0, // Dummy: +/* RES_PARATR_DUMMY2 */ 0, // Dummy: + +/* RES_FILL_ORDER */ 0, +/* RES_FRM_SIZE */ 0, +/* RES_PAPER_BIN */ 0, +/* RES_LR_SPACE */ OutCSS1_SvxLRSpace, +/* RES_UL_SPACE */ OutCSS1_SvxULSpace, +/* RES_PAGEDESC */ 0, +/* RES_BREAK */ 0, +/* RES_CNTNT */ 0, +/* RES_HEADER */ 0, +/* RES_FOOTER */ 0, +/* RES_PRINT */ 0, +/* RES_OPAQUE */ 0, +/* RES_PROTECT */ 0, +/* RES_SURROUND */ 0, +/* RES_VERT_ORIENT */ 0, +/* RES_HORI_ORIENT */ 0, +/* RES_ANCHOR */ 0, +/* RES_BACKGROUND */ OutCSS1_SvxBrush, +/* RES_BOX */ OutCSS1_SvxBox, +/* RES_SHADOW */ 0, +/* RES_FRMMACRO */ 0, +/* RES_COL */ 0, +/* RES_KEEP */ 0, +/* RES_URL */ 0, +/* RES_EDIT_IN_READONLY */ 0, +/* RES_LAYOUT_SPLIT */ 0, +/* RES_FRMATR_DUMMY1 */ 0, // Dummy: +/* RES_FRMATR_DUMMY2 */ 0, // Dummy: +/* RES_FRMATR_DUMMY3 */ 0, // Dummy: +/* RES_FRMATR_DUMMY4 */ 0, // Dummy: +/* RES_FRMATR_DUMMY5 */ 0, // Dummy: +/* RES_FRMATR_DUMMY6 */ 0, // Dummy: +/* RES_FRMATR_DUMMY7 */ 0, // Dummy: +/* RES_FRMATR_DUMMY8 */ 0, // Dummy: +/* RES_FRMATR_DUMMY9 */ 0, // Dummy: + +/* RES_GRFATR_MIRRORGRF */ 0, +/* RES_GRFATR_CROPGRF */ 0, +/* RES_GRFATR_ROTATION */ 0, +/* RES_GRFATR_LUMINANCE */ 0, +/* RES_GRFATR_CONTRAST */ 0, +/* RES_GRFATR_CHANNELR */ 0, +/* RES_GRFATR_CHANNELG */ 0, +/* RES_GRFATR_CHANNELB */ 0, +/* RES_GRFATR_GAMMA */ 0, +/* RES_GRFATR_INVERT */ 0, +/* RES_GRFATR_TRANSPARENCY */ 0, +/* RES_GRFATR_DRWAMODE */ 0, +/* RES_GRFATR_DUMMY1 */ 0, +/* RES_GRFATR_DUMMY2 */ 0, +/* RES_GRFATR_DUMMY3 */ 0, +/* RES_GRFATR_DUMMY4 */ 0, +/* RES_GRFATR_DUMMY5 */ 0, + +/* RES_BOXATR_FORMAT */ 0, +/* RES_BOXATR_FORMULA */ 0, +/* RES_BOXATR_VALUE */ 0 +}; + + +/************************************************************************* + + $Log: not supported by cvs2svn $ + Revision 1.110 2000/09/18 16:04:42 willem.vandorp + OpenOffice header added. + + Revision 1.109 2000/08/30 16:46:22 jp + use CharClass instead of international + + Revision 1.108 2000/08/18 13:03:06 jp + don't export escaped URLs + + Revision 1.107 2000/07/31 19:24:15 jp + new attributes for CJK/CTL and graphic + + Revision 1.106 2000/06/26 12:55:05 os + INetURLObject::SmartRelToAbs removed + + Revision 1.105 2000/06/26 09:51:49 jp + must change: GetAppWindow->GetDefaultDevice + + Revision 1.104 2000/05/15 10:06:56 os + Chg: GetOrigFileName() + + Revision 1.103 2000/04/28 14:29:10 mib + unicode + + Revision 1.102 2000/04/10 12:20:54 mib + unicode + + Revision 1.101 2000/03/03 15:21:00 os + StarView remainders removed + + Revision 1.100 2000/02/11 14:36:48 hr + #70473# changes for unicode ( patched by automated patchtool ) + + Revision 1.99 1999/09/21 09:48:39 mib + multiple text encodings + + Revision 1.98 1999/09/20 13:16:17 mib + COL_WINDOWWORKSPACE->COL-WHITE + + Revision 1.97 1999/07/23 13:34:28 MIB + #67578#: Export multicolumned sections as , section backgrounds + + +*************************************************************************/ + diff --git a/sw/source/filter/html/css1kywd.cxx b/sw/source/filter/html/css1kywd.cxx new file mode 100644 index 000000000000..7a115b661ee3 --- /dev/null +++ b/sw/source/filter/html/css1kywd.cxx @@ -0,0 +1,400 @@ +/************************************************************************* + * + * $RCSfile: css1kywd.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:55 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ +#ifdef PRECOMPILED +#include "filt_pch.hxx" +#endif + +#pragma hdrstop + +#include "css1kywd.hxx" + +/* */ + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS_mimetype, "text/css" ); + +/* */ + +// ein par allgemeine Strings + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_import, "import" ); + +// Feature: PrintExt +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_page, "page" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_media, "media" ); +// /Feature: PrintExt + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_important, "important" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_link, "link" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_visited, "visited" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_first_letter, "first-letter" ); + +// Feature: PrintExt +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_left, "left" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_right, "right" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_first, "first" ); +// /Feature: PrintExt + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_url, "url" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_rgb, "rgb" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_pt, "pt" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_mm, "mm" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_cm, "cm" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_pc, "pc" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_inch, "in" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_px, "px" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_em, "em" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_UNIT_ex, "ex" ); + +/* */ + +// Strings fuer Font-Properties + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font_family, "font-family" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_serif, "serif" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_sans_serif, "sans-serif" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_cursive, "cursive" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_fantasy, "fantasy" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_monospace, "monospace" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font_style, "font-style" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_normal, "normal" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_italic, "italic" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_oblique, "oblique" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font_variant, "font-variant" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_normal, "normal" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_small_caps, "small-caps" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font_weight, "font-weight" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_extra_light, "extra-light" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_light, "light" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_demi_light, "demi-light" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_medium, "medium" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_demi_bold, "demi-bold" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_bold, "bold" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_extra_bold, "extra-bold" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_lighter, "lighter" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_bolder, "bolder" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font_size, "font-size" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_xx_small, "xx-small" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_x_small, "x-small" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_small, "small" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_medium, "medium" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_large, "large" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_x_large, "x-large" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_xx_large, "xx-large" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_larger, "larger" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_smaller, "smaller" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_font, "font" ); + + + +/* */ + +// Strings fuer Farb- und Hintergrund-Properties + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_color, "color" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_background, "background" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_background_color, "background-color" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_transparent, "transparent" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_repeat, "repeat" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_repeat_x, "repeat-x" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_repeat_y, "repeat-y" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_no_repeat, "no-repeat" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_top, "top" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_middle, "middle" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_bottom, "bottom" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_scroll, "scroll" ); + + +/* */ + +// Strings fuer Text-Properties + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_letter_spacing, "letter-spacing" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_text_decoration, "text-decoration" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_none, "none" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_underline, "underline" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_line_through, "line-through" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_blink, "blink" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_text_align, "text-align" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_left, "left" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_center, "center" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_right, "right" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_justify, "justify" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_text_indent, "text-indent" ); + + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_line_height, "line-height" ); + + +/* */ + +// Strings fuer Box-Properties + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_margin_left, "margin-left" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_margin_right, "margin-right" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_margin_top, "margin-top" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_margin_bottom, "margin-bottom" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_margin, "margin" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_padding_top, "padding-top" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_padding_bottom, "padding-bottom" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_padding_left, "padding-left" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_padding_right, "padding-right" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_padding, "padding" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_auto, "auto" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_left_width, "border-left-width" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_right_width, "border-right-width" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_top_width, "border-top-width" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_bottom_width, "border-bottom-width" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_width, "border-width" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_color, "border-color" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_style, "border-style" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_left, "border-left" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_right, "border-right" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_top, "border-top" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border_bottom, "border-bottom" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_border, "border" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_thin, "thin" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_medium, "medium" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_thick, "thick" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_none, "none" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_dotted, "dotted" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_dashed, "dashed" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_solid, "solid" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_double, "double" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_groove, "groove" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_ridge, "ridge" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_inset, "inset" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_outset, "outset" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_width, "width" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_height, "height" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_float, "float" ); + +/* */ + +// Strings fuer Positioning + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_position, "position" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_absolute, "absolute" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_relative, "relative" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_static, "static" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_left, "left" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_top, "top" ); + +/* */ + +// Feature: PrintExt + +// Strings fuer Printing Extensions + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_page_break_before, "page-break-before" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_page_break_after, "page-break-after" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_page_break_inside, "page-break-inside" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_size, "size" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_widows, "widows" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_orphans, "orphans" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_P_marks, "marks" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_always, "always" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_avoid, "avoid" ); + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_portrait, "portrait" ); +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_landscape, "landscape" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_crop, "crop" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_PV_cross, "cross" ); + +// /Feature: PrintExt + +sal_Char __FAR_DATA CSS1_CONSTASCII_DEF( sCSS1_class_abs_pos, "sd-abs-pos" ); + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/html/css1kywd.cxx,v 1.1.1.1 2000-09-18 17:14:55 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.25 2000/09/18 16:04:43 willem.vandorp + OpenOffice header added. + + Revision 1.24 2000/04/10 12:20:55 mib + unicode + + Revision 1.23 1999/06/11 14:44:00 MIB + Individuelle Umrandungs-Abstaende + + + Rev 1.22 11 Jun 1999 16:44:00 MIB + Individuelle Umrandungs-Abstaende + + Rev 1.21 15 Apr 1999 13:44:52 MIB + background-color + + Rev 1.20 15 Apr 1998 14:40:44 MIB + Zwei-seitige Printing-Extensions + + Rev 1.19 03 Apr 1998 15:11:32 MIB + CSS1-Padding + + Rev 1.18 26 Nov 1997 19:09:04 MA + includes + + Rev 1.17 10 Oct 1997 10:14:22 MIB + CSS1-Printing-Ext: @page,page-break-before/after (noch kein left/right) + + Rev 1.16 30 Jul 1997 12:27:18 MIB + absolute positioning + + Rev 1.15 02 Jul 1997 17:11:28 MIB + neue CSS1-Border-Properties + + Rev 1.14 21 May 1997 11:11:42 MIB + zum Enbinden von externen Style-Sheets + + Rev 1.13 22 Oct 1996 10:28:38 MIB + Umstellung von CSS1 auf Klein-Buchstaben (u.a. wegen Amaya) + + Rev 1.12 15 Oct 1996 13:35:40 MIB + letter-spacing/Laufweite imp./exp. + + Rev 1.11 14 Oct 1996 16:42:24 MIB + Import CSS1-Umrandung (border) + + Rev 1.10 13 Oct 1996 12:12:40 MIB + first-letter-Pseudo-Element/DropCaps + + Rev 1.9 11 Oct 1996 16:48:00 MIB + font-variant + + Rev 1.8 24 Sep 1996 12:47:42 MIB + bug fix: Einheit fuer Inch ist in nicht inch + + Rev 1.7 19 Aug 1996 18:04:56 MIB + Anpassungen an Draft vom 26.Juli 96 + + Rev 1.6 12 Aug 1996 10:29:56 MIB + Anpassungen an draft vom 26.7.96, Background-Property + + Rev 1.5 07 Aug 1996 13:21:30 MIB + Import von color und text-decoration + + Rev 1.4 10 Jul 1996 15:41:36 MIB + Includes fuer precompiled header gerichtet + + Rev 1.3 03 Jul 1996 16:51:48 MIB + visited und link + + Rev 1.2 18 Jun 1996 12:19:28 MIB + margin[-[left|right|top|bottom]]?, text-indent + + Rev 1.1 17 Jun 1996 15:57:26 MIB + restliche Keywords fuer Font-Properties + + Rev 1.0 16 Jun 1996 14:32:30 MIB + Initial revision. + +*************************************************************************/ + + diff --git a/sw/source/filter/html/css1kywd.hxx b/sw/source/filter/html/css1kywd.hxx new file mode 100644 index 000000000000..3c884a56604d --- /dev/null +++ b/sw/source/filter/html/css1kywd.hxx @@ -0,0 +1,320 @@ +/************************************************************************* + * + * $RCSfile: css1kywd.hxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:55 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + +#ifndef _CSS1KYWD_HXX +#define _CSS1KYWD_HXX + +#ifndef _STRING_HXX //autogen +#include +#endif + +#ifndef CSS1_CONSTASCII_DECL +#define CSS1_CONSTASCII_DECL( n, s ) n[sizeof(s)] +#endif +#ifndef CSS1_CONSTASCII_DEF +#define CSS1_CONSTASCII_DEF( n, s ) n[sizeof(s)] = s +#endif + +/* */ + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS_mimetype, "text/css" ); + +/* */ + +// ein par allgemeine Strings + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_import, "import" ); + +// Feature: PrintExt +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_page, "page" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_media, "media" ); +// /Feature: PrintExt + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_important, "important" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_link, "link" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_visited, "visited" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_first_letter, "first-letter" ); + +// Feature: PrintExt +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_left, "left" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_right, "right" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_first, "first" ); +// /Feature: PrintExt + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_url, "url" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_rgb, "rgb" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_pt, "pt" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_mm, "mm" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_cm, "cm" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_pc, "pc" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_inch, "in" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_px, "px" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_em, "em" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_UNIT_ex, "ex" ); + +/* */ + +// Strings fuer Font-Properties + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font_family, "font-family" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_serif, "serif" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_sans_serif, "sans-serif" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_cursive, "cursive" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_fantasy, "fantasy" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_monospace, "monospace" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font_style, "font-style" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_normal, "normal" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_italic, "italic" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_oblique, "oblique" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font_variant, "font-variant" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_normal, "normal" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_small_caps, "small-caps" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font_weight, "font-weight" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_extra_light, "extra-light" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_light, "light" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_demi_light, "demi-light" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_medium, "medium" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_demi_bold, "demi-bold" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_bold, "bold" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_extra_bold, "extra-bold" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_lighter, "lighter" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_bolder, "bolder" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font_size, "font-size" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_xx_small, "xx-small" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_x_small, "x-small" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_small, "small" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_medium, "medium" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_large, "large" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_x_large, "x-large" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_xx_large, "xx-large" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_larger, "larger" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_smaller, "smaller" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_font, "font" ); + + + +/* */ + +// Strings fuer Farb- und Hintergrund-Properties + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_color, "color" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_background, "background" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_background_color, "background-color" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_transparent, "transparent" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_repeat, "repeat" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_repeat_x, "repeat-x" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_repeat_y, "repeat-y" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_no_repeat, "no-repeat" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_top, "top" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_middle, "middle" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_bottom, "bottom" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_scroll, "scroll" ); + + +/* */ + +// Strings fuer Text-Properties + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_letter_spacing, "letter-spacing" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_text_decoration, "text-decoration" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_none, "none" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_underline, "underline" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_line_through, "line-through" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_blink, "blink" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_text_align, "text-align" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_left, "left" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_center, "center" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_right, "right" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_justify, "justify" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_text_indent, "text-indent" ); + + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_line_height, "line-height" ); + + +/* */ + +// Strings fuer Box-Properties + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_margin_left, "margin-left" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_margin_right, "margin-right" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_margin_top, "margin-top" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_margin_bottom, "margin-bottom" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_margin, "margin" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_padding_top, "padding-top" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_padding_bottom, "padding-bottom" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_padding_left, "padding-left" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_padding_right, "padding-right" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_padding, "padding" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_auto, "auto" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_left_width, "border-left-width" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_right_width, "border-right-width" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_top_width, "border-top-width" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_bottom_width, "border-bottom-width" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_width, "border-width" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_color, "border-color" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_style, "border-style" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_left, "border-left" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_right, "border-right" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_top, "border-top" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border_bottom, "border-bottom" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_border, "border" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_thin, "thin" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_medium, "medium" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_thick, "thick" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_none, "none" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_dotted, "dotted" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_dashed, "dashed" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_solid, "solid" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_double, "double" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_groove, "groove" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_ridge, "ridge" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_inset, "inset" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_outset, "outset" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_width, "width" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_height, "height" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_float, "float" ); + +/* */ + +// Strings fuer Positioning + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_position, "position" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_absolute, "absolute" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_relative, "relative" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_static, "static" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_left, "left" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_top, "top" ); + +/* */ + +// Feature: PrintExt + +// Strings fuer Printing Extensions + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_page_break_before, "page-break-before" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_page_break_after, "page-break-after" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_page_break_inside, "page-break-inside" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_size, "size" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_widows, "widows" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_orphans, "orphans" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_P_marks, "marks" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_always, "always" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_avoid, "avoid" ); + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_portrait, "portrait" ); +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_landscape, "landscape" ); + +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_crop, "crop" ); +//sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_PV_cross, "cross" ); + +// /Feature: PrintExt + +extern sal_Char __FAR_DATA CSS1_CONSTASCII_DECL( sCSS1_class_abs_pos, "sd-abs-pos" ); + + +#endif + + diff --git a/sw/source/filter/html/htmlatr.cxx b/sw/source/filter/html/htmlatr.cxx new file mode 100644 index 000000000000..1d270c8ca988 --- /dev/null +++ b/sw/source/filter/html/htmlatr.cxx @@ -0,0 +1,3165 @@ +/************************************************************************* + * + * $RCSfile: htmlatr.cxx,v $ + * + * $Revision: 1.1.1.1 $ + * + * last change: $Author: hr $ $Date: 2000-09-18 17:14:55 $ + * + * The Contents of this file are made available subject to the terms of + * either of the following licenses + * + * - GNU Lesser General Public License Version 2.1 + * - Sun Industry Standards Source License Version 1.1 + * + * Sun Microsystems Inc., October, 2000 + * + * GNU Lesser General Public License Version 2.1 + * ============================================= + * Copyright 2000 by Sun Microsystems, Inc. + * 901 San Antonio Road, Palo Alto, CA 94303, USA + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License version 2.1, as published by the Free Software Foundation. + * + * This library 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 for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * + * Sun Industry Standards Source License Version 1.1 + * ================================================= + * The contents of this file are subject to the Sun Industry Standards + * Source License Version 1.1 (the "License"); You may not use this file + * except in compliance with the License. You may obtain a copy of the + * License at http://www.openoffice.org/license.html. + * + * Software provided under this License is provided on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, + * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, + * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. + * See the License for the specific provisions governing your rights and + * obligations concerning the Software. + * + * The Initial Developer of the Original Code is: Sun Microsystems, Inc. + * + * Copyright: 2000 by Sun Microsystems, Inc. + * + * All Rights Reserved. + * + * Contributor(s): _______________________________________ + * + * + ************************************************************************/ + + +#ifdef PRECOMPILED +#include "filt_pch.hxx" +#endif + +#pragma hdrstop + +#define ITEMID_BOXINFO SID_ATTR_BORDER_INNER +#ifndef _HINTIDS_HXX +#include +#endif + +#ifndef _SV_SVAPP_HXX //autogen +#include +#endif +#ifndef _WRKWIN_HXX //autogen +#include +#endif +#ifndef _URLOBJ_HXX //autogen +#include +#endif + +#ifndef _HTMLOUT_HXX //autogen +#include +#endif +#ifndef _HTMLKYWD_HXX +#include +#endif +#ifndef _HTMLTOKN_H +#include +#endif +#ifndef _SFX_WHITER_HXX //autogen +#include +#endif +#ifndef _SFXMACITEM_HXX //autogen +#include +#endif + +#ifndef _SVX_HTMLMODE_HXX +#include +#endif +#ifndef _SVX_ESCPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BRKITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BOXITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ULSPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_UDLNITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CRSDITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BLNKITEM_HXX //autogen +#include +#endif +#ifndef _SVX_CMAPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_COLRITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FONTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_FHGTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_POSTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_KERNITEM_HXX //autogen +#include +#endif +#ifndef _SVX_WGHTITEM_HXX //autogen +#include +#endif +#ifndef _SVX_LSPCITEM_HXX //autogen +#include +#endif +#ifndef _SVX_ADJITEM_HXX //autogen +#include +#endif +#ifndef _SVX_LRSPITEM_HXX //autogen +#include +#endif +#ifndef _SVX_BRSHITEM_HXX //autogen +#include +#endif + + +#ifndef _FCHRFMT_HXX //autogen +#include +#endif +#ifndef _FMTFSIZE_HXX //autogen +#include +#endif +#ifndef _FMTCLDS_HXX //autogen +#include +#endif +#ifndef _FMTPDSC_HXX //autogen +#include +#endif +#ifndef _FMTFLCNT_HXX //autogen +#include +#endif +#ifndef _FMTINFMT_HXX //autogen +#include +#endif +#ifndef _FMTFTN_HXX //autogen +#include +#endif +#ifndef _TXATBASE_HXX //autogen +#include +#endif +#ifndef _FRMATR_HXX +#include +#endif +#ifndef _CHARFMT_HXX //autogen +#include +#endif +#ifndef _FMTHBSH_HXX //autogen +#include +#endif + +#ifndef _DOC_HXX +#include +#endif +#ifndef _PAM_HXX +#include +#endif +#ifndef _NDTXT_HXX +#include +#endif +#ifndef _SWERROR_H +#include +#endif +#ifndef _PARATR_HXX +#include +#endif + +#ifndef _FMTCOL_HXX +#include +#endif +#ifndef _POOLFMT_HXX +#include +#endif +#ifndef _PAGEDESC_HXX +#include +#endif +#ifndef _SWTABLE_HXX +#include +#endif + +#ifndef _WRTTXATR_HXX +#include +#endif +#ifndef _HTMLNUM_HXX +#include +#endif +#ifndef _WRTHTML_HXX +#include +#endif +#ifndef _HTMLFLY_HXX +#include +#endif + + +/* + * um nicht immer wieder nach einem Update festzustellen, das irgendwelche + * Hint-Ids dazugekommen sind, wird hier definiert, die Groesse der Tabelle + * definiert und mit der akt. verglichen. Bei unterschieden wird der + * Compiler schon meckern. + * + * diese Section und die dazugeherigen Tabellen muessen in folgenden Files + * gepflegt werden: rtf\rtfatr.cxx, sw6\sw6atr.cxx, w4w\w4watr.cxx + */ +#if !defined(UNX) && !defined(MSC) && !defined(PPC) && !defined(CSET) && !defined(__MWERKS__) && !defined(WTC) + +#define ATTRFNTAB_SIZE 121 +#if ATTRFNTAB_SIZE != POOLATTR_END - POOLATTR_BEGIN +#error Attribut-Tabelle ist ungueltigt. Wurden neue Hint-IDs zugefuegt ?? +#endif + +#ifdef FORMAT_TABELLE +// da sie nicht benutzt wird! +#define FORMATTAB_SIZE 7 +#if FORMATTAB_SIZE != RES_FMT_END - RES_FMT_BEGIN +#error Format-Tabelle ist ungueltigt. Wurden neue Hint-IDs zugefuegt ?? +#endif +#endif + +#define NODETAB_SIZE 3 +#if NODETAB_SIZE != RES_NODE_END - RES_NODE_BEGIN +#error Node-Tabelle ist ungueltigt. Wurden neue Hint-IDs zugefuegt ?? +#endif + +#endif + +#define HTML_BULLETCHAR_DISC 34 +#define HTML_BULLETCHAR_CIRCLE 38 +#define HTML_BULLETCHAR_SQUARE 36 + +#define COLFUZZY 20 + +//----------------------------------------------------------------------- + +HTMLOutEvent __FAR_DATA aAnchorEventTable[] = +{ + { sHTML_O_SDonclick, sHTML_O_onclick, SFX_EVENT_MOUSECLICK_OBJECT }, + { sHTML_O_SDonmouseover, sHTML_O_onmouseover, SFX_EVENT_MOUSEOVER_OBJECT }, + { sHTML_O_SDonmouseout, sHTML_O_onmouseout, SFX_EVENT_MOUSEOUT_OBJECT }, + { 0, 0, 0 } +}; + +static Writer& OutHTML_SvxAdjust( Writer& rWrt, const SfxPoolItem& rHt ); + +static Writer& OutHTML_HoriSpacer( Writer& rWrt, INT16 nSize ) +{ + ASSERT( nSize>0, "horizontaler SPACER mit negativem Wert?" ) + if( nSize <= 0 ) + return rWrt; + + if( Application::GetDefaultDevice() ) + { + nSize = (INT16)Application::GetDefaultDevice() + ->LogicToPixel( Size(nSize,0), MapMode(MAP_TWIP) ).Width(); + } + + ByteString sOut( '<' ); + (((((((((sOut += sHTML_spacer) + += ' ') += sHTML_O_type) += '=') += sHTML_SPTYPE_horizontal) + += ' ') += sHTML_O_size) += '=') + +=ByteString::CreateFromInt32(nSize)) += '>'; + + rWrt.Strm() << sOut.GetBuffer(); + + return rWrt; +} + +USHORT SwHTMLWriter::GetDefListLvl( const String& rNm, USHORT nPoolId ) +{ + if( nPoolId == RES_POOLCOLL_HTML_DD ) + { + return 1 | HTML_DLCOLL_DD; + } + else if( nPoolId == RES_POOLCOLL_HTML_DT ) + { + return 1 | HTML_DLCOLL_DT; + } + + String sDTDD( String::CreateFromAscii(sHTML_dt) ); + sDTDD += ' '; + if( COMPARE_EQUAL == sDTDD.CompareTo( rNm, sDTDD.Len() ) ) + // DefinitionList - term + return (USHORT)rNm.Copy( sDTDD.Len() ).ToInt32() | HTML_DLCOLL_DT; + + sDTDD.AssignAscii( sHTML_dd ); + sDTDD += ' '; + if( COMPARE_EQUAL == sDTDD.CompareTo( rNm, sDTDD.Len() ) ) + // DefinitionList - definition + return (USHORT)rNm.Copy( sDTDD.Len() ).ToInt32() | HTML_DLCOLL_DD; + + return 0; +} + +void SwHTMLWriter::OutAndSetDefList( USHORT nNewLvl ) +{ + // eventuell muss erst mal eine Liste aufgemacht werden + if( nDefListLvl < nNewLvl ) + { + // entsprechend dem Level-Unterschied schreiben! + for( USHORT i=nDefListLvl; i nNewLvl ) + { + for( USHORT i=nNewLvl ; i < nDefListLvl; i++ ) + { + DecIndentLevel(); + if( bLFPossible ) + OutNewLine(); + HTMLOutFuncs::Out_AsciiTag( Strm(), sHTML_deflist, FALSE ); + bLFPossible = TRUE; + } + } + + nDefListLvl = nNewLvl; +} + + +void SwHTMLWriter::ChangeParaToken( USHORT nNew ) +{ + if( nNew != nLastParaToken && HTML_PREFORMTXT_ON == nLastParaToken ) + { + HTMLOutFuncs::Out_AsciiTag( Strm(), sHTML_preformtxt, FALSE ); + bLFPossible = TRUE; + } + nLastParaToken = nNew; +} + +// fuer die Formate muesste eine einzige Ausgabe-Funktion genuegen ! +/* + * Formate wie folgt ausgeben: + * - fuer Formate, fuer die es entsprechende HTML-Tags gibt wird das + * Tag ausgegeben + * - fuer alle anderen wird ein Absatz-Tag

ausgegeben und bUserFmt + * gesetzt + * - Wenn eine Absatz-Ausrichtung am uebergebenen Item-Set des Nodes + * oder im Item-Set des Format gesetzt ist, wird ein ALIGN=xxx ausgegeben, + * sofern HTML es zulaesst + * - in jedem Fall wird harte Attributierung als STYLE-Option geschrieben. + * Wenn bUserFmt nicht gesetzt ist, wird nur der uebergebene Item-Set + * betrachtet. Sonst werden auch Attribute des Formats ausgegeben. + */ + +struct SwHTMLTxtCollOutputInfo +{ + ByteString aToken; // auszugendens End-Token + SfxItemSet *pItemSet; // harte Attributierung + + BOOL bInNumBulList; // in einer Aufzaehlungs-Liste; + BOOL bParaPossible; // ein

darf zusaetzlich ausgegeben werden + BOOL bOutPara; // ein

soll ausgegeben werden + BOOL bOutDiv; // write a + + SwHTMLTxtCollOutputInfo() : + pItemSet( 0 ), + bInNumBulList( FALSE ), + bParaPossible( FALSE ), + bOutPara( FALSE ), + bOutDiv( FALSE ) + {} + + ~SwHTMLTxtCollOutputInfo(); + + BOOL HasParaToken() const { return aToken.Len()==1 && aToken.GetChar(0)=='P'; } + BOOL ShouldOutputToken() const { return bOutPara || !HasParaToken(); } +}; + +SwHTMLTxtCollOutputInfo::~SwHTMLTxtCollOutputInfo() +{ + delete pItemSet; +} + +struct SwHTMLFmtInfo +{ + const SwFmt *pFmt; // das Format selbst + const SwFmt *pRefFmt; // das Vergleichs-Format + + ByteString aToken; // das auszugebende Token + String aClass; // die auszugebende Klasse + + SfxItemSet *pItemSet; // der auszugebende Attribut-Set + + USHORT nLeftMargin; // ein par default-Werte fuer + USHORT nRightMargin; // Absatz-Vorlagen + short nFirstLineIndent; + + USHORT nTopMargin; + USHORT nBottomMargin; + + // Konstruktor fuer einen Dummy zum Suchen + SwHTMLFmtInfo( const SwFmt *pF ) : + pFmt( pF ), pItemSet( 0 ) + {} + + + // Konstruktor zum Erstellen der Format-Info + SwHTMLFmtInfo( const SwFmt *pFmt, SwDoc *pDoc, SwDoc *pTemlate, + BOOL bOutStyles, BOOL bHardDrop=FALSE ); + ~SwHTMLFmtInfo(); + + friend BOOL operator==( const SwHTMLFmtInfo& rInfo1, + const SwHTMLFmtInfo& rInfo2 ) + { + return (long)rInfo1.pFmt == (long)rInfo2.pFmt; + } + + friend BOOL operator<( const SwHTMLFmtInfo& rInfo1, + const SwHTMLFmtInfo& rInfo2 ) + { + return (long)rInfo1.pFmt < (long)rInfo2.pFmt; + } + +}; + +SV_IMPL_OP_PTRARR_SORT( SwHTMLFmtInfos, SwHTMLFmtInfo* ) + +SwHTMLFmtInfo::SwHTMLFmtInfo( const SwFmt *pF, SwDoc *pDoc, SwDoc *pTemplate, + BOOL bOutStyles, BOOL bHardDrop ) : + pFmt( pF ), pItemSet( 0 ) +{ + USHORT nRefPoolId = 0; + // Den Selektor des Formats holen + USHORT nDeep = SwHTMLWriter::GetCSS1Selector( pFmt, aToken, aClass, + nRefPoolId ); + ASSERT( nDeep ? aToken.Len()>0 : aToken.Len()==0, + "Hier stimmt doch was mit dem Token nicht!" ); + ASSERT( nDeep ? nRefPoolId : !nRefPoolId, + "Hier stimmt doch was mit der Vergleichs-Vorlage nicht!" ); + + BOOL bTxtColl = pFmt->Which() == RES_TXTFMTCOLL || + pFmt->Which() == RES_CONDTXTFMTCOLL; + + const SwFmt *pRefFmt = 0; // Vergleichs-Format + if( nDeep != 0 ) + { + // Es ist eine HTML-Tag-Vorlage oder die Vorlage ist von einer + // solchen abgeleitet + if( !bOutStyles ) + { + // wenn keine Styles exportiert werden, muss evtl. zusaetlich + // harte Attributierung geschrieben werden + switch( nDeep ) + { + case CSS1_FMT_ISTAG: + case CSS1_FMT_CMPREF: + // fuer HTML-Tag-Vorlagen die Unterscheide zum Original + // (sofern verfuegbar) + if( pTemplate ) + pRefFmt = SwHTMLWriter::GetTemplateFmt( nRefPoolId, + pTemplate ); + break; + + default: + // sonst die zur HTML-Tag-Vorlage des Originals oder des + // aktuellen Doks, wenn die nicht verfuegbar ist + if( pTemplate ) + pRefFmt = SwHTMLWriter::GetTemplateFmt( nRefPoolId, + pTemplate ); + else + pRefFmt = SwHTMLWriter::GetParentFmt( *pFmt, nDeep ); + break; + } + } + } + else if( bTxtColl ) + { + // Nicht von einer HTML-Tag-Vorlage abgeleitete Absatz-Vorlagen + // muessen als harte Attributierung relativ zur Textkoerper-Volage + // exportiert werden. Fuer Nicht-Styles-Export sollte die der + // HTML-Vorlage als Referenz dienen + if( !bOutStyles && pTemplate ) + pRefFmt = pTemplate->GetTxtCollFromPool( RES_POOLCOLL_TEXT ); + else + pRefFmt = pDoc->GetTxtCollFromPool( RES_POOLCOLL_TEXT ); + } + + if( pRefFmt || nDeep==0 ) + { + // wenn Unterschiede zu einer anderen Vorlage geschrieben werden + // sollen ist harte Attributierung noetig. Fuer Vorlagen, die + // nicht von HTML-Tag-Vorlagen abgeleitet sind, gilt das immer + pItemSet = new SfxItemSet( *pFmt->GetAttrSet().GetPool(), + pFmt->GetAttrSet().GetRanges() ); + + pItemSet->Set( pFmt->GetAttrSet(), TRUE ); + if( pRefFmt ) + SwHTMLWriter::SubtractItemSet( *pItemSet, pRefFmt->GetAttrSet(), TRUE ); + + // einen leeren Item-Set gleich loeschen, das spart speater + // Arbeit + if( !pItemSet->Count() ) + { + delete pItemSet; + pItemSet = 0; + } + } + + if( bTxtColl ) + { + // Ggf. noch ein DropCap-Attribut uebernehmen + if( bOutStyles && bHardDrop && nDeep != 0 ) + { + const SfxPoolItem *pItem; + if( SFX_ITEM_SET==pFmt->GetAttrSet().GetItemState( + RES_PARATR_DROP, TRUE, &pItem ) ) + { + BOOL bPut = TRUE; + if( pTemplate ) + { + pRefFmt = SwHTMLWriter::GetTemplateFmt( nRefPoolId, pTemplate ); + const SfxPoolItem *pRefItem; + BOOL bRefItemSet = + SFX_ITEM_SET==pRefFmt->GetAttrSet().GetItemState( + RES_PARATR_DROP, TRUE, &pRefItem ); + bPut = !bRefItemSet || *pItem!=*pRefItem; + } + if( bPut ) + { + ASSERT( !pItemSet, "Wo kommt der ItemSet her?" ); + pItemSet = new SfxItemSet( *pFmt->GetAttrSet().GetPool(), + pFmt->GetAttrSet().GetRanges() ); + pItemSet->Put( *pItem ); + } + } + } + + + // Die diversen default-Abstaende aus der Vorlage oder der + // Vergleischs-Vorlage merken + const SvxLRSpaceItem &rLRSpace = + (pRefFmt ? pRefFmt : pFmt)->GetLRSpace(); + nLeftMargin = rLRSpace.GetTxtLeft(); + nRightMargin = rLRSpace.GetRight(); + nFirstLineIndent = rLRSpace.GetTxtFirstLineOfst(); + + const SvxULSpaceItem &rULSpace = + (pRefFmt ? pRefFmt : pFmt)->GetULSpace(); + nTopMargin = rULSpace.GetUpper(); + nBottomMargin = rULSpace.GetLower(); + } +} + +SwHTMLFmtInfo::~SwHTMLFmtInfo() +{ + delete pItemSet; +} + +void OutHTML_SwFmt( Writer& rWrt, const SwFmt& rFmt, + const SfxItemSet *pNodeItemSet, + SwHTMLTxtCollOutputInfo& rInfo ) +{ + ASSERT( RES_CONDTXTFMTCOLL==rFmt.Which() || RES_TXTFMTCOLL==rFmt.Which(), + "keine Absatz-Vorlage" ); + + SwHTMLWriter & rHWrt = (SwHTMLWriter&)rWrt; + + // Erstmal ein par Flags ... + USHORT nNewDefListLvl = 0; + USHORT nNumStart = USHRT_MAX; + BOOL bForceDL = FALSE; + BOOL bDT = FALSE; + rInfo.bInNumBulList = FALSE; // Wir sind in einer Liste? + BOOL bNumbered = FALSE; // Der aktuelle Absatz ist numeriert + BOOL bPara = FALSE; // das aktuelle Token ist

+ rInfo.bParaPossible = FALSE; // ein

darf zusaetzlich ausgegeben werden + BOOL bNoEndTag = FALSE; // kein End-Tag ausgeben + + rHWrt.bNoAlign = FALSE; // kein ALIGN=... moeglich + BOOL bNoStyle = FALSE; // kein STYLE=... moeglich + BYTE nBulletGrfLvl = 255; // Die auszugebende Bullet-Grafik + + // Sind wir in einer Aufzaehlungs- oder Numerierungliste? + const SwTxtNode* pTxtNd = rWrt.pCurPam->GetNode()->GetTxtNode(); + ULONG nPos = pTxtNd->GetIndex(); + + SwHTMLNumRuleInfo aNumInfo; + if( rHWrt.GetNextNumInfo() ) + { + aNumInfo = *rHWrt.GetNextNumInfo(); + rHWrt.ClearNextNumInfo(); + } + else + { + aNumInfo.Set( *pTxtNd ); + } + + if( aNumInfo.GetNumRule() ) + { + rInfo.bInNumBulList = TRUE; + nNewDefListLvl = 0; + + // ist der aktuelle Absatz numeriert? + bNumbered = aNumInfo.IsNumbered(); + BYTE nLvl = aNumInfo.GetLevel(); + + const SwNodeNum& rAktNum = *pTxtNd->GetNum(); + ASSERT( GetRealLevel( rAktNum.GetLevel() ) == nLvl, + "Gemerkter Num-Level ist falsch" ); + ASSERT( bNumbered == ((rAktNum.GetLevel() & NO_NUMLEVEL) == 0), + "Gemerkter Numerierungs-Zustand ist falsch" ); + + if( bNumbered ) + { + nBulletGrfLvl = nLvl; // nur veruebergehend!!! + nNumStart = rAktNum.GetSetValue(); + DBG_ASSERT( rHWrt.nLastParaToken == 0, + "

 wurde nicht vor 
  • beendet." ); + } + +#ifndef NUM_RELSPACE + // die Absatz-Abstaende/Einzuege muessen beruecksichtigen, + // dass wir in einer Liste sind + rHWrt.nLeftMargin = (nLvl+1) * HTML_NUMBUL_MARGINLEFT; + + rHWrt.nFirstLineIndent = bNumbered ? HTML_NUMBUL_INDENT : 0; +#endif + } + + // Jetzt holen wir das Token und ggf. die Klasse + SwHTMLFmtInfo aFmtInfo( &rFmt ); + USHORT nArrayPos; + const SwHTMLFmtInfo *pFmtInfo; + if( rHWrt.aTxtCollInfos.Seek_Entry( &aFmtInfo, &nArrayPos ) ) + { + pFmtInfo = rHWrt.aTxtCollInfos[nArrayPos]; + } + else + { + pFmtInfo = new SwHTMLFmtInfo( &rFmt, rWrt.pDoc, rHWrt.pTemplate, + rHWrt.bCfgOutStyles, + !rHWrt.IsHTMLMode(HTMLMODE_DROPCAPS) ); + rHWrt.aTxtCollInfos.C40_PTR_INSERT( SwHTMLFmtInfo, pFmtInfo ); + } + + // Jetzt wird festgelegt, was aufgrund des Tokens so moeglich ist + USHORT nToken = 0; // Token fuer Tag-Wechsel + BOOL bOutNewLine = FALSE; // nur ein LF ausgeben? + if( pFmtInfo->aToken.Len() ) + { + // Es ist eine HTML-Tag-Vorlage oder die Vorlage ist von einer + // solchen abgeleitet + rInfo.aToken = pFmtInfo->aToken; + + // der erste Buchstabe reicht meistens + switch( rInfo.aToken.GetChar( 0 ) ) + { + case 'A': ASSERT( rInfo.aToken.Equals(sHTML_address), + "Doch kein ADDRESS?" ); + rInfo.bParaPossible = TRUE; + rHWrt.bNoAlign = TRUE; + break; + + case 'B': ASSERT( rInfo.aToken.Equals(sHTML_blockquote), + "Doch kein BLOCKQUOTE?" ); + rInfo.bParaPossible = TRUE; + rHWrt.bNoAlign = TRUE; + break; + + case 'P': if( rInfo.aToken.Len() == 1 ) + { + bPara = TRUE; + } + else + { + ASSERT( rInfo.aToken.Equals(sHTML_preformtxt), + "Doch kein PRE?" ); + if( HTML_PREFORMTXT_ON == rHWrt.nLastParaToken ) + { + bOutNewLine = TRUE; + } + else + { + nToken = HTML_PREFORMTXT_ON; + rHWrt.bNoAlign = TRUE; + bNoEndTag = TRUE; + } + } + break; + + case 'D': ASSERT( rInfo.aToken.Equals(sHTML_dt) || + rInfo.aToken.Equals(sHTML_dd), + "Doch kein DD/DT?" ); + bDT = rInfo.aToken.Equals(sHTML_dt); + rInfo.bParaPossible = !bDT; + rHWrt.bNoAlign = TRUE; + bForceDL = TRUE; + break; + } + } + else + { + // alle Vorlagen, die nicht einem HTML-Tag entsprechen oder von + // diesem abgeleitet sind, werden als

    exportiert + + rInfo.aToken = sHTML_parabreak; + bPara = TRUE; + } + + // Falls noetig, die harte Attributierung der Vorlage uebernehmen + if( pFmtInfo->pItemSet ) + { + ASSERT( !rInfo.pItemSet, "Wo kommt der Item-Set her?" ); + rInfo.pItemSet = new SfxItemSet( *pFmtInfo->pItemSet ); + } + + // und noch die harte Attributierung des Absatzes dazunehmen + if( pNodeItemSet ) + { + if( rInfo.pItemSet ) + rInfo.pItemSet->Put( *pNodeItemSet ); + else + rInfo.pItemSet = new SfxItemSet( *pNodeItemSet ); + } + + // den unteren Absatz-Abstand brauchen wir noch + const SvxULSpaceItem& rULSpace = + pNodeItemSet ? ((const SvxULSpaceItem &)pNodeItemSet->Get(RES_UL_SPACE)) + : rFmt.GetULSpace(); + + if( (rHWrt.bOutHeader && + rWrt.pCurPam->GetPoint()->nNode.GetIndex() == + rWrt.pCurPam->GetMark()->nNode.GetIndex()) || + rHWrt.bOutFooter ) + { + if( rHWrt.bCfgOutStyles ) + { + SvxULSpaceItem aULSpaceItem( rULSpace ); + if( rHWrt.bOutHeader ) + aULSpaceItem.SetLower( rHWrt.nHeaderFooterSpace ); + else + aULSpaceItem.SetUpper( rHWrt.nHeaderFooterSpace ); + + if( !rInfo.pItemSet ) + rInfo.pItemSet = new SfxItemSet( + *rFmt.GetAttrSet().GetPool(), + RES_UL_SPACE, RES_UL_SPACE ); + rInfo.pItemSet->Put( aULSpaceItem ); + } + rHWrt.bOutHeader = FALSE; + rHWrt.bOutFooter = FALSE; + } + + if( bOutNewLine ) + { + // nur einen Zeilen-Umbruch (ohne Einrueckung) am Absatz-Anfang + // ausgeben + rInfo.aToken.Erase(); // kein End-Tag ausgeben + rWrt.Strm() << SwHTMLWriter::sNewLine; + + return; + } + + + // soll ein ALIGN=... geschrieben werden? + const SfxPoolItem* pAdjItem = 0; + const SfxPoolItem* pItem; + + if( rInfo.pItemSet && + SFX_ITEM_SET == rInfo.pItemSet->GetItemState( RES_PARATR_ADJUST, + FALSE, &pItem ) ) + { + pAdjItem = pItem; + } + + // Unteren Absatz-Abstand beachten ? (nie im letzen Absatz von + // Tabellen) + BOOL bUseParSpace = !rHWrt.bOutTable || + (rWrt.pCurPam->GetPoint()->nNode.GetIndex() != + rWrt.pCurPam->GetMark()->nNode.GetIndex()); + // Wenn Styles exportiert werden, wird aus eingerueckten Absaetzen + // eine Definitions-Liste + const SvxLRSpaceItem& rLRSpace = + pNodeItemSet ? ((const SvxLRSpaceItem &)pNodeItemSet->Get(RES_LR_SPACE)) + : rFmt.GetLRSpace(); + if( (!rHWrt.bCfgOutStyles || bForceDL) && !rInfo.bInNumBulList ) + { + USHORT nLeftMargin; + if( bForceDL ) + nLeftMargin = rLRSpace.GetTxtLeft(); + else + nLeftMargin = rLRSpace.GetTxtLeft() > pFmtInfo->nLeftMargin + ? rLRSpace.GetTxtLeft() - pFmtInfo->nLeftMargin + : 0; + + nNewDefListLvl = (nLeftMargin + (rHWrt.nDefListMargin/2)) / + rHWrt.nDefListMargin; + + BOOL bIsNextTxtNode = + rWrt.pDoc->GetNodes()[rWrt.pCurPam->GetPoint()->nNode.GetIndex()+1] + ->IsTxtNode(); + + if( bForceDL && bDT ) + { + // Statt eines DD muessen wir hier auch ein DT der Ebene + // darueber nehmen + nNewDefListLvl++; + } + else if( !nNewDefListLvl && !rHWrt.bCfgOutStyles && bPara && + rULSpace.GetLower()==0 && + ((bUseParSpace && bIsNextTxtNode) || rHWrt.nDefListLvl==1) && + (!pAdjItem || SVX_ADJUST_LEFT== + ((const SvxAdjustItem *)pAdjItem)->GetAdjust()) ) + { + // Absaetze ohne unteren Abstand als DT exportieren + nNewDefListLvl = 1; + bDT = TRUE; + rInfo.bParaPossible = FALSE; + rHWrt.bNoAlign = TRUE; + } + } + + if( nNewDefListLvl != rHWrt.nDefListLvl ) + rHWrt.OutAndSetDefList( nNewDefListLvl ); + + // ggf. eine Aufzaehlung- oder Numerierungsliste beginnen + if( rInfo.bInNumBulList ) + { + ASSERT( !rHWrt.nDefListLvl, "DL in OL geht nicht!" ); + OutHTML_NumBulListStart( rHWrt, aNumInfo ); + + if( bNumbered ) + { + if( rHWrt.aBulletGrfs[nBulletGrfLvl].Len() ) + bNumbered = FALSE; + else + nBulletGrfLvl = 255; + } + +#ifndef NUM_RELSPACE + // Wenn der Ziel-Browser mit horizontalen Absatz-Abstaenden in + // Listen nicht zurechtkommt, loeschen wir das Item. + if( !rHWrt.IsHTMLMode( HTMLMODE_LRSPACE_IN_NUMBUL ) && + rInfo.pItemSet ) + { + rInfo.pItemSet->ClearItem( RES_LR_SPACE ); + } +#endif + } + + // Die Defaults aus der Vorlage merken, denn sie muessen nicht + // exportiert werden + rHWrt.nDfltLeftMargin = pFmtInfo->nLeftMargin; + rHWrt.nDfltRightMargin = pFmtInfo->nRightMargin; + rHWrt.nDfltFirstLineIndent = pFmtInfo->nFirstLineIndent; + +#ifdef NUM_RELSPACE + if( rInfo.bInNumBulList ) + { + if( !rHWrt.IsHTMLMode( HTMLMODE_LSPACE_IN_NUMBUL ) ) + rHWrt.nDfltLeftMargin = rLRSpace.GetTxtLeft(); + + // In Numerierungs-Listen keinen Ertzeilen-Einzug ausgeben. + rHWrt.nFirstLineIndent = rLRSpace.GetTxtFirstLineOfst(); + } +#endif + + if( rInfo.bInNumBulList && bNumbered && bPara && !rHWrt.bCfgOutStyles ) + { + // ein einzelnes LI hat keinen Abstand + rHWrt.nDfltTopMargin = 0; + rHWrt.nDfltBottomMargin = 0; + } + else if( rHWrt.nDefListLvl && bPara ) + { + // ein einzelnes DD hat auch keinen Abstand + rHWrt.nDfltTopMargin = 0; + rHWrt.nDfltBottomMargin = 0; + } + else + { + rHWrt.nDfltTopMargin = pFmtInfo->nTopMargin; + // #60393#: Wenn im letzten Absatz einer Tabelle der + // untere Absatz-Abstand veraendert wird, vertut sich + // Netscape total. Deshalb exportieren wir hier erstmal + // nichts, indem wir den Abstand aus dem Absatz als Default + // setzen. + if( rHWrt.bCfgNetscape4 && !bUseParSpace ) + rHWrt.nDfltBottomMargin = rULSpace.GetLower(); + else + rHWrt.nDfltBottomMargin = pFmtInfo->nBottomMargin; + } + + if( rHWrt.nDefListLvl ) + { + rHWrt.nLeftMargin = + (rHWrt.nDefListLvl-1) * rHWrt.nDefListMargin; + } + + if( rHWrt.bLFPossible ) + rHWrt.OutNewLine(); // Absatz-Tag in neue Zeile + rInfo.bOutPara = FALSE; + + // das ist jetzt unser neues Token + rHWrt.ChangeParaToken( nToken ); + + BOOL bHasParSpace = bUseParSpace && rULSpace.GetLower() > 0; + + // ggf ein List-Item aufmachen + if( rInfo.bInNumBulList && bNumbered ) + { + ByteString sOut( '<' ); + sOut += sHTML_li; + if( USHRT_MAX != nNumStart ) + (((sOut += ' ') += sHTML_O_value) += '=') + += ByteString::CreateFromInt32(nNumStart); + sOut += '>'; + rWrt.Strm() << sOut.GetBuffer(); + } + + if( rHWrt.nDefListLvl > 0 && !bForceDL ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), bDT ? sHTML_dt : sHTML_dd ); + } + + if( pAdjItem && + rHWrt.IsHTMLMode( HTMLMODE_NO_CONTROL_CENTERING ) && + rHWrt.HasControls() ) + { + // #64687#: The align=... attribute does behave strange in netscape + // if there are controls in a paragraph, because the control and + // all text behind the control does not recognize this attribute. + ByteString sOut( '<' ); + sOut += sHTML_division; + rWrt.Strm() << sOut.GetBuffer(); + + rHWrt.bTxtAttr = FALSE; + rHWrt.bOutOpts = TRUE; + OutHTML_SvxAdjust( rWrt, *pAdjItem ); + rWrt.Strm() << '>'; + pAdjItem = 0; + rHWrt.bNoAlign = FALSE; + rInfo.bOutDiv = TRUE; + rHWrt.IncIndentLevel(); + rHWrt.bLFPossible = TRUE; + rHWrt.OutNewLine(); + } + + // fuer BLOCKQUOTE, ADDRESS und DD wird noch ein Absatz-Token + // ausgegeben, wenn, + // - keine Styles geschrieben werden, und + // - ein untere Abstand oder eine Absatz-Ausrichtung existiert + ByteString aToken = rInfo.aToken; + if( !rHWrt.bCfgOutStyles && rInfo.bParaPossible && !bPara && + (bHasParSpace || pAdjItem) ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), rInfo.aToken.GetBuffer() ); + aToken = sHTML_parabreak; + bPara = TRUE; + rHWrt.bNoAlign = FALSE; + bNoStyle = FALSE; + } + + // Ein

    wird nur geschrieben, wenn + // - wir in keiner OL/UL/DL sind, oder + // - der Absatz einer OL/UL nicht numeriert ist, oder + // - keine Styles exportiert werden und + // - ein unterer Abstand oder + // - eine Absatz-Ausrichtung existiert, ode + // - Styles exportiert werden und, + // - die Textkoerper-Vorlage geaendert wurde, oder + // - ein Benutzer-Format exportiert wird, oder + // - Absatz-Attribute existieren + if( !bPara || + (!rInfo.bInNumBulList && !rHWrt.nDefListLvl) || + (rInfo.bInNumBulList && !bNumbered) || + (!rHWrt.bCfgOutStyles && (bHasParSpace || pAdjItem)) || + (rHWrt.bCfgOutStyles /*&& rHWrt.bPoolCollTextModified*/) ) + { + // jetzt werden Optionen ausgegeben + rHWrt.bTxtAttr = FALSE; + rHWrt.bOutOpts = TRUE; + + ByteString sOut( '<' ); + sOut += aToken; + + if( rHWrt.bCfgOutStyles && pFmtInfo->aClass.Len() ) + { + ((sOut += ' ') += sHTML_O_class) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_String( rWrt.Strm(), pFmtInfo->aClass, + rHWrt.eDestEnc ); + sOut = '\"'; + } + rWrt.Strm() << sOut.GetBuffer(); + + // ggf. Ausrichtung ausgeben. + if( !rHWrt.bNoAlign && pAdjItem ) + OutHTML_SvxAdjust( rWrt, *pAdjItem ); + + // und nun ggf. noch die STYLE-Option + if( rHWrt.bCfgOutStyles && rInfo.pItemSet && !bNoStyle) + { + OutCSS1_ParaTagStyleOpt( rWrt, *rInfo.pItemSet ); + } + + rWrt.Strm() << '>'; + + // Soll ein

    geschrieben wenrden + rInfo.bOutPara = + bPara && + ( rHWrt.bCfgOutStyles || + (!rHWrt.bCfgOutStyles && bHasParSpace) ); + + // wenn kein End-Tag geschrieben werden soll, es loeschen + if( bNoEndTag ) + rInfo.aToken.Erase(); + } + + // ??? Warum nicht ueber den Hint-Mechanismus ??? + if( rHWrt.IsHTMLMode(HTMLMODE_FIRSTLINE) ) + { + const SvxLRSpaceItem& rLRSpace = + pNodeItemSet ? ((const SvxLRSpaceItem &)pNodeItemSet->Get(RES_LR_SPACE)) + : rFmt.GetLRSpace(); + if( rLRSpace.GetTxtFirstLineOfst() > 0 ) + { + OutHTML_HoriSpacer( rWrt, rLRSpace.GetTxtFirstLineOfst() ); + } + } + + if( nBulletGrfLvl != 255 ) + { + ASSERT( aNumInfo.GetNumRule(), "Wo ist die Numerierung geblieben???" ); + ASSERT( nBulletGrfLvl < MAXLEVEL, "So viele Ebenen gibt's nicht" ); + const SwNumFmt& rNumFmt = aNumInfo.GetNumRule()->Get(nBulletGrfLvl); + + OutHTML_BulletImage( rWrt, sHTML_image, 0, + rHWrt.aBulletGrfs[nBulletGrfLvl], + rNumFmt.GetGrfSize(), rNumFmt.GetGrfOrient() ); + } + + rHWrt.GetNumInfo() = aNumInfo; + + // die Defaults zuruecksetzen + rHWrt.nDfltLeftMargin = 0; + rHWrt.nDfltRightMargin = 0; + rHWrt.nDfltFirstLineIndent = 0; + rHWrt.nDfltTopMargin = 0; + rHWrt.nDfltBottomMargin = 0; + rHWrt.nLeftMargin = 0; + rHWrt.nFirstLineIndent = 0; +} + +void OutHTML_SwFmtOff( Writer& rWrt, const SwHTMLTxtCollOutputInfo& rInfo ) +{ + SwHTMLWriter & rHWrt = (SwHTMLWriter&)rWrt; + + // wenn es kein Token gibt haben wir auch nichts auszugeben + if( !rInfo.aToken.Len() ) + { + rHWrt.FillNextNumInfo(); + const SwHTMLNumRuleInfo& rNextInfo = *rHWrt.GetNextNumInfo(); + // Auch in PRE muss eine Bullet-Liste beendet werden + if( rInfo.bInNumBulList ) + { + + const SwHTMLNumRuleInfo& rInfo = rHWrt.GetNumInfo(); + if( rNextInfo.GetNumRule() != rInfo.GetNumRule() || + rNextInfo.GetDepth() != rInfo.GetDepth() || + rNextInfo.IsNumbered() || rNextInfo.IsRestart() ) + rHWrt.ChangeParaToken( 0 ); + OutHTML_NumBulListEnd( rHWrt, rNextInfo ); + } + else if( rNextInfo.GetNumRule() != 0 ) + rHWrt.ChangeParaToken( 0 ); + + return; + } + + if( rInfo.ShouldOutputToken() ) + { + if( rHWrt.bLFPossible ) + rHWrt.OutNewLine( TRUE ); + + // fuer BLOCKQUOTE, ADDRESS und DD wird ggf noch ein + // Absatz-Token ausgegeben, wenn + // - keine Styles geschrieben werden, und + // - ein untere Abstand existiert + if( rInfo.bParaPossible && rInfo.bOutPara ) + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_parabreak, FALSE ); + + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), rInfo.aToken.GetBuffer(), + FALSE ); + rHWrt.bLFPossible = !rInfo.aToken.Equals( sHTML_dt ) && + !rInfo.aToken.Equals( sHTML_dd ) && + !rInfo.aToken.Equals( sHTML_li ); + } + if( rInfo.bOutDiv ) + { + rHWrt.DecIndentLevel(); + if( rHWrt.bLFPossible ) + rHWrt.OutNewLine(); + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_division, FALSE ); + rHWrt.bLFPossible = TRUE; + } + + // ggf. eine Aufzaehlung- oder Numerierungsliste beenden + if( rInfo.bInNumBulList ) + { + rHWrt.FillNextNumInfo(); + OutHTML_NumBulListEnd( rHWrt, *rHWrt.GetNextNumInfo() ); + } +} + + +class HTMLSttEndPos +{ + xub_StrLen nStart; + xub_StrLen nEnd; + SfxPoolItem* pItem; + +public: + + HTMLSttEndPos( const SfxPoolItem& rItem, xub_StrLen nStt, xub_StrLen nE ); + ~HTMLSttEndPos(); + + const SfxPoolItem *GetItem() const { return pItem; } + + void SetStart( xub_StrLen nStt ) { nStart = nStt; } + xub_StrLen GetStart() const { return nStart; } + + xub_StrLen GetEnd() const { return nEnd; } + void SetEnd( xub_StrLen nE ) { nEnd = nE; } +}; + +HTMLSttEndPos::HTMLSttEndPos( const SfxPoolItem& rItem, xub_StrLen nStt, + xub_StrLen nE ) : + nStart( nStt ), + nEnd( nE ), + pItem( rItem.Clone() ) +{} + +HTMLSttEndPos::~HTMLSttEndPos() +{ + delete pItem; +} + +typedef HTMLSttEndPos *HTMLSttEndPosPtr; +SV_DECL_PTRARR( _HTMLEndLst, HTMLSttEndPosPtr, 5, 5 ) + +enum HTMLOnOffState { HTML_NOT_SUPPORTED, // nicht unterst. Attribut + HTML_REAL_VALUE, // Attribut mit Wert + HTML_ON_VALUE, // Attribut entspricht On-Tag + HTML_OFF_VALUE, // Attribut entspricht Off-Tag + HTML_CHRFMT_VALUE, // Attribut fuer Zeichenvorlage + HTML_COLOR_VALUE, // Attribut fuer Vordergrundfarbe + HTML_STYLE_VALUE, // Attribut muss als Style exp. + HTML_DROPCAP_VALUE }; // DropCap-Attributs + + +class HTMLEndPosLst +{ + _HTMLEndLst aStartLst; // nach Anfangs-Psoitionen sortierte Liste + _HTMLEndLst aEndLst; // nach End-Psotionen sortierte Liste + + SwDoc *pDoc; // das aktuelle Dokument + SwDoc* pTemplate; // die HTML-Vorlage (oder 0) + const Color* pDfltColor;// die Default-Vordergrund-Farbe + + ULONG nHTMLMode; + BOOL bOutStyles : 1; // werden Styles exportiert + + + // die Position eines Items in der Start-/Ende-Liste suchen + USHORT _FindStartPos( const HTMLSttEndPos *pPos ) const; + USHORT _FindEndPos( const HTMLSttEndPos *pPos ) const; + + // Eine SttEndPos in die Start- und Ende-Listen eintragen bzw. aus + // ihnen loeschen, wobei die Ende-Position bekannt ist + void _InsertItem( HTMLSttEndPos *pPos, USHORT nEndPos ); + void _RemoveItem( USHORT nEndPos ); + + // die "Art" es Attributs ermitteln + HTMLOnOffState GetHTMLItemState( const SfxPoolItem& rItem ); + + // Existiert ein bestimmtes On-Tag-Item + BOOL ExistsOnTagItem( USHORT nWhich, xub_StrLen nPos ); + + // Existiert ein Item zum ausschalten eines Attributs, das genauso + // exportiert wird wie das uebergebene Item im gleichen Bereich? + BOOL ExistsOffTagItem( USHORT nWhich, xub_StrLen nStartPos, + xub_StrLen nEndPos ); + + + // das Ende eines gesplitteten Items anpassen + void FixSplittedItem( HTMLSttEndPos *pPos, USHORT nStartPos, + xub_StrLen nNewEnd ); + + // Ein Attribut in die Listen eintragen und ggf. aufteilen + void InsertItem( const SfxPoolItem& rItem, xub_StrLen nStart, + xub_StrLen nEnd ); + + // Ein bereits vorhandenes Attribut aufteilen + void SplitItem( const SfxPoolItem& rItem, xub_StrLen nStart, + xub_StrLen nEnd ); + + +public: + + HTMLEndPosLst( SwDoc *pDoc, SwDoc* pTemplate, const Color* pDfltColor, + BOOL bOutStyles, ULONG nHTMLMode ); + ~HTMLEndPosLst(); + + // Ein Attribut einfuegen + void Insert( const SfxPoolItem& rItem, xub_StrLen nStart, xub_StrLen nEnd, + SwHTMLFmtInfos& rFmtInfos, BOOL bParaAttrs=FALSE ); + void Insert( const SfxItemSet& rItemSet, xub_StrLen nStart, xub_StrLen nEnd, + SwHTMLFmtInfos& rFmtInfos, BOOL bDeep, + BOOL bParaAttrs=FALSE ); + void Insert( const SwDrawFrmFmt& rFmt, xub_StrLen nPos, + SwHTMLFmtInfos& rFmtInfos ); + + void OutStartAttrs( SwHTMLWriter& rHWrt, xub_StrLen nPos ); + void OutEndAttrs( SwHTMLWriter& rHWrt, xub_StrLen nPos ); + + USHORT Count() const { return aEndLst.Count(); } + + BOOL IsHTMLMode( ULONG nMode ) const { return (nHTMLMode & nMode) != 0; } +}; + + +USHORT HTMLEndPosLst::_FindStartPos( const HTMLSttEndPos *pPos ) const +{ + for( USHORT i=0; iGetStart(); + for( USHORT i=0; i < aStartLst.Count() && + aStartLst[i]->GetStart() <= nStart; i++ ) + ; + aStartLst.Insert( pPos, i ); + + // die Position in der Ende-Liste wurde uebergeben + aEndLst.Insert( pPos, nEndPos ); +} + +void HTMLEndPosLst::_RemoveItem( USHORT nEndPos ) +{ + HTMLSttEndPos *pPos = aEndLst[nEndPos]; + + // jetzt Suchen wir es in der Start-Liste + USHORT nStartPos = _FindStartPos( pPos ); + if( nStartPos != USHRT_MAX ) + aStartLst.Remove( nStartPos, 1 ); + + aEndLst.Remove( nEndPos, 1 ); + + delete pPos; +} + +HTMLOnOffState HTMLEndPosLst::GetHTMLItemState( const SfxPoolItem& rItem ) +{ + HTMLOnOffState eState = HTML_NOT_SUPPORTED; + switch( rItem.Which() ) + { + case RES_CHRATR_POSTURE: + switch( ((const SvxPostureItem&)rItem).GetPosture() ) + { + case ITALIC_NORMAL: + eState = HTML_ON_VALUE; + break; + case ITALIC_NONE: + eState = HTML_OFF_VALUE; + break; + default: + if( IsHTMLMode(HTMLMODE_SOME_STYLES) ) + eState = HTML_STYLE_VALUE; + break; + } + break; + + case RES_CHRATR_CROSSEDOUT: + switch( ((const SvxCrossedOutItem&)rItem).GetStrikeout() ) + { + case STRIKEOUT_SINGLE: + case STRIKEOUT_DOUBLE: + eState = HTML_ON_VALUE; + break; + case STRIKEOUT_NONE: + eState = HTML_OFF_VALUE; + break; + } + break; + + case RES_CHRATR_ESCAPEMENT: + switch( (const SvxEscapement) + ((const SvxEscapementItem&)rItem).GetEnumValue() ) + { + case SVX_ESCAPEMENT_SUPERSCRIPT: + case SVX_ESCAPEMENT_SUBSCRIPT: + eState = HTML_ON_VALUE; + break; + case SVX_ESCAPEMENT_OFF: + eState = HTML_OFF_VALUE; + break; + } + break; + + case RES_CHRATR_UNDERLINE: + switch( ((const SvxUnderlineItem&)rItem).GetUnderline() ) + { + case UNDERLINE_SINGLE: + eState = HTML_ON_VALUE; + break; + case UNDERLINE_NONE: + eState = HTML_OFF_VALUE; + break; + default: + if( IsHTMLMode(HTMLMODE_SOME_STYLES) ) + eState = HTML_STYLE_VALUE; + break; + } + break; + + case RES_CHRATR_WEIGHT: + switch( ((const SvxWeightItem&)rItem).GetWeight() ) + { + case WEIGHT_BOLD: + eState = HTML_ON_VALUE; + break; + case WEIGHT_NORMAL: + eState = HTML_OFF_VALUE; + break; + default: + if( IsHTMLMode(HTMLMODE_SOME_STYLES) ) + eState = HTML_STYLE_VALUE; + break; + } + break; + + case RES_CHRATR_BLINK: + if( IsHTMLMode(HTMLMODE_BLINK) ) + eState = ((const SvxBlinkItem&)rItem).GetValue() ? HTML_ON_VALUE + : HTML_OFF_VALUE; + break; + + case RES_CHRATR_COLOR: + eState = HTML_COLOR_VALUE; + break; + + case RES_CHRATR_FONT: + case RES_CHRATR_FONTSIZE: + case RES_TXTATR_INETFMT: + eState = HTML_REAL_VALUE; + break; + + case RES_TXTATR_CHARFMT: + eState = HTML_CHRFMT_VALUE; + break; + + case RES_CHRATR_CASEMAP: + if( IsHTMLMode(HTMLMODE_SMALL_CAPS) ) + eState = HTML_STYLE_VALUE; + + case RES_CHRATR_KERNING: + if( IsHTMLMode(HTMLMODE_FULL_STYLES) ) + eState = HTML_STYLE_VALUE; + break; + + case RES_CHRATR_BACKGROUND: + if( IsHTMLMode(HTMLMODE_SOME_STYLES) ) + eState = HTML_STYLE_VALUE; + break; + + case RES_PARATR_DROP: + eState = HTML_DROPCAP_VALUE; + break; + +// default: +// eState = HTML_NOT_SUPPORTED; +// break; + } + + return eState; +} + +BOOL HTMLEndPosLst::ExistsOnTagItem( USHORT nWhich, xub_StrLen nPos ) +{ + for( USHORT i=0; iGetStart() > nPos ) + { + // dieses uns alle folgenden Attribute beginnen spaeter + break; + } + else if( pTest->GetEnd() > nPos ) + { + // das Attribut beginnt vor oder an der aktuellen Position + // und endet hinter ihr + const SfxPoolItem *pItem = pTest->GetItem(); + if( pItem->Which() == nWhich && + HTML_ON_VALUE == GetHTMLItemState(*pItem) ) + { + // ein On-Tag-Attibut wurde gefunden + return TRUE; + } + } + } + + return FALSE; +} + +BOOL HTMLEndPosLst::ExistsOffTagItem( USHORT nWhich, xub_StrLen nStartPos, + xub_StrLen nEndPos ) +{ + if( nWhich != RES_CHRATR_CROSSEDOUT && + nWhich != RES_CHRATR_UNDERLINE && + nWhich != RES_CHRATR_BLINK ) + { + return FALSE; + } + + for( USHORT i=0; iGetStart() > nStartPos ) + { + // dieses uns alle folgenden Attribute beginnen spaeter + break; + } + else if( pTest->GetStart()==nStartPos && + pTest->GetEnd()==nEndPos ) + { + // das Attribut beginnt vor oder an der aktuellen Position + // und endet hinter ihr + const SfxPoolItem *pItem = pTest->GetItem(); + USHORT nTstWhich = pItem->Which() ; + if( (nTstWhich == RES_CHRATR_CROSSEDOUT || + nTstWhich == RES_CHRATR_UNDERLINE || + nTstWhich == RES_CHRATR_BLINK) && + HTML_OFF_VALUE == GetHTMLItemState(*pItem) ) + { + // Ein Off-Tag-Attibut wurde gefunden, das genauso + // exportiert wird, wie das aktuelle Item + return TRUE; + } + } + } + + return FALSE; +} + +void HTMLEndPosLst::FixSplittedItem( HTMLSttEndPos *pPos, xub_StrLen nNewEnd, + USHORT nStartPos ) +{ + // die End-Position entsprechend fixen + pPos->SetEnd( nNewEnd ); + + // das Item aus der End-Liste entfernen + USHORT nEndPos = _FindEndPos( pPos ); + if( nEndPos != USHRT_MAX ) + aEndLst.Remove( nEndPos, 1 ); + + // es wird von nun an als letztes an der entsprechenden Position + // beendet + for( nEndPos=0; nEndPos < aEndLst.Count() && + aEndLst[nEndPos]->GetEnd() <= nNewEnd; nEndPos++ ) + ; + aEndLst.Insert( pPos, nEndPos ); + + // jetzt noch die spaeter gestarteten Attribute anpassen + for( USHORT i=nStartPos+1; iGetEnd(); + if( pTest->GetStart() >= nNewEnd ) + { + // das Test-Attribut und alle folgenden beginnen, nachdem das + // gesplittete Attribut endet + break; + } + else if( nTestEnd > nNewEnd ) + { + // das Test-Attribut beginnt, bevor das gesplittete Attribut + // endet und endet danach, muss also auch gesplittet werden + + // das neue Ende setzen + pTest->SetEnd( nNewEnd ); + + // das Attribut aus der End-Liste entfernen + USHORT nEPos = _FindEndPos( pTest ); + if( nEPos != USHRT_MAX ) + aEndLst.Remove( nEPos, 1 ); + + // es endet jetzt als erstes Attribut an der entsprechenden + // Position. Diese Position in der Ende-Liste kennen wir schon. + aEndLst.Insert(pTest, nEndPos ); + + // den "Rest" des Attributs neu einfuegen + InsertItem( *pTest->GetItem(), nNewEnd, nTestEnd ); + } + } +} + + +void HTMLEndPosLst::InsertItem( const SfxPoolItem& rItem, xub_StrLen nStart, + xub_StrLen nEnd ) +{ + for( USHORT i=0; iGetEnd(); + if( nTestEnd <= nStart ) + { + // das Test-Attribut endet, bevor das neue beginnt + continue; + } + else if( nTestEnd < nEnd ) + { + // das Test-Attribut endet, bevor das neue endet. Das + // neue Attribut muss deshalb aufgesplittet werden + _InsertItem( new HTMLSttEndPos( rItem, nStart, nTestEnd ), i ); + nStart = nTestEnd; + } + else + { + // das Test-Attribut (und alle folgenden) endet, bevor das neue + // endet + break; + } + } + + // ein Attribut muss noch eingefuegt werden + _InsertItem( new HTMLSttEndPos( rItem, nStart, nEnd ), i ); +} + + + +void HTMLEndPosLst::SplitItem( const SfxPoolItem& rItem, xub_StrLen nStart, + xub_StrLen nEnd ) +{ + USHORT nWhich = rItem.Which(); + + // erstmal muessen wir die alten Items anhand der Startliste suchen + // und die neuen Item-Bereiche festlegen + + for( USHORT i=0; iGetStart(); + xub_StrLen nTestEnd = pTest->GetEnd(); + + if( nTestStart >= nEnd ) + { + // dieses und alle nachfolgenden Attribute beginnen spaeter + break; + } + else if( nTestEnd > nStart ) + { + // das Test Attribut endet im zu loeschenenden Bereich + const SfxPoolItem *pItem = pTest->GetItem(); + + // nur entsprechende On-Tag Attribute muessen beruecksichtigt + // werden + if( pItem->Which() == nWhich && + HTML_ON_VALUE == GetHTMLItemState( *pItem ) ) + { + BOOL bDelete = TRUE; + + if( nTestStart < nStart ) + { + // der Start des neuen Attribut entspricht + // dem neuen Ende des Attribts + FixSplittedItem( pTest, nStart, i ); + bDelete = FALSE; + } + else + { + // das Test-Item beginnt erst hinter dem neuen + // Ende des Attribts und kann deshalb komplett + // geloescht werden + aStartLst.Remove( i, 1 ); + i--; + + USHORT nEndPos = _FindEndPos( pTest ); + if( nEndPos != USHRT_MAX ) + aEndLst.Remove( nEndPos, 1 ); + } + + // ggf den zweiten Teil des gesplitteten Attribts einfuegen + if( nTestEnd > nEnd ) + { + InsertItem( *pTest->GetItem(), nEnd, nTestEnd ); + } + + if( bDelete ) + delete pTest; + } + } + } +} + +HTMLEndPosLst::HTMLEndPosLst( SwDoc *pD, SwDoc* pTempl, + const Color* pDfltCol, BOOL bStyles, + ULONG nMode ): + pDoc( pD ), pTemplate( pTempl ), pDfltColor( pDfltCol ), + bOutStyles( bStyles ), nHTMLMode( nMode ) +{} + +HTMLEndPosLst::~HTMLEndPosLst() +{ + ASSERT( !aStartLst.Count(), "Start-Liste im Destruktor nicht leer" ); + ASSERT( !aEndLst.Count(), "End-Liste im Destruktor nicht leer" ); +} + + + +void HTMLEndPosLst::Insert( const SfxPoolItem& rItem, + xub_StrLen nStart, xub_StrLen nEnd, + SwHTMLFmtInfos& rFmtInfos, BOOL bParaAttrs ) +{ + // kein Bereich ?? dann nicht aufnehmen, wird nie wirksam !! + if( nStart != nEnd ) + { + BOOL bSet = FALSE, bSplit = FALSE; + switch( GetHTMLItemState(rItem) ) + { + case HTML_ON_VALUE: + // das Attribut wird ausgegeben, wenn es nicht sowieso + // schon an ist + if( !ExistsOnTagItem( rItem.Which(), nStart ) ) + bSet = TRUE; + break; + + case HTML_OFF_VALUE: + // wenn das entsprechne Attribut an ist, wird es gesplittet, + // Zusaetlich wird es aber als Style ausgegeben, wenn es nicht + // am ganzen Absatz gesetzt ist, weil es dann ja schon mit dem + // ABsatz-Tag ausgegeben wurde. + if( ExistsOnTagItem( rItem.Which(), nStart ) ) + bSplit = TRUE; + bSet = bOutStyles && !bParaAttrs && + !ExistsOffTagItem( rItem.Which(), nStart, nEnd ); + break; + + case HTML_REAL_VALUE: + // das Attribut kann immer ausgegeben werden + bSet = TRUE; + break; + + case HTML_STYLE_VALUE: + // Das Attribut kann nur als CSS1 ausgegeben werden. Wenn + // es am Absatz gesetzt ist, wurde es schon mit dem + // Absatz-Tag ausgegeben. Einzige Ausnahme ist das + // Zeichen-Hintergrund-Attribut. Es muss immer wie ein + // Hint behandelt werden. + bSet = bOutStyles && + (!bParaAttrs || rItem.Which()==RES_CHRATR_BACKGROUND); + break; + + case HTML_CHRFMT_VALUE: + { + ASSERT( RES_TXTATR_CHARFMT == rItem.Which(), + "Doch keine Zeichen-Vorlage" ); + const SwFmtCharFmt& rChrFmt = (const SwFmtCharFmt&)rItem; + const SwCharFmt* pFmt = rChrFmt.GetCharFmt(); + + const SwHTMLFmtInfo *pFmtInfo; + SwHTMLFmtInfo aFmtInfo( pFmt ); + USHORT nPos; + if( rFmtInfos.Seek_Entry( &aFmtInfo, &nPos ) ) + { + pFmtInfo = rFmtInfos[nPos]; + } + else + { + pFmtInfo = new SwHTMLFmtInfo( pFmt, pDoc, pTemplate, + bOutStyles ); + rFmtInfos.C40_PTR_INSERT( SwHTMLFmtInfo, pFmtInfo ); + } + if( pFmtInfo->aToken.Len() ) + { + // das Zeichenvorlagen-Tag muss vor den harten + // Attributen ausgegeben werden + InsertItem( rItem, nStart, nEnd ); + } + if( pFmtInfo->pItemSet ) + { + Insert( *pFmtInfo->pItemSet, nStart, nEnd, + rFmtInfos, TRUE, bParaAttrs ); + } + } + break; + + case HTML_COLOR_VALUE: + // Eine Vordergrund-Farbe als Absatz-Attribut wird nur + // exportiert, wenn sie nicht der Default-Farbe entspricht. + ASSERT( RES_CHRATR_COLOR == rItem.Which(), + "Doch keine Vordergrund-Farbe" ); + bSet = !bParaAttrs || !pDfltColor || + !pDfltColor->IsRGBEqual( + ((const SvxColorItem&)rItem).GetValue() ); + break; + + case HTML_DROPCAP_VALUE: + { + ASSERT( RES_PARATR_DROP == rItem.Which(), + "Doch kein Drop-Cap" ); + const SwFmtDrop& rDrop = (const SwFmtDrop&)rItem; + nEnd = nStart + rDrop.GetChars(); + if( !bOutStyles ) + { + // Zumindest die Attribute der Zeichenvorlage uebernehmen + const SwCharFmt *pCharFmt = rDrop.GetCharFmt(); + if( pCharFmt ) + { + Insert( pCharFmt->GetAttrSet(), nStart, nEnd, + rFmtInfos, TRUE, bParaAttrs ); + } + } + else + { + bSet = TRUE; + } + } + break; + } + + if( bSet ) + InsertItem( rItem, nStart, nEnd ); + if( bSplit ) + SplitItem( rItem, nStart, nEnd ); + } +} + +void HTMLEndPosLst::Insert( const SfxItemSet& rItemSet, + xub_StrLen nStart, xub_StrLen nEnd, + SwHTMLFmtInfos& rFmtInfos, + BOOL bDeep, BOOL bParaAttrs ) +{ + SfxWhichIter aIter( rItemSet ); + + USHORT nWhich = aIter.FirstWhich(); + while( nWhich ) + { + const SfxPoolItem *pItem; + if( SFX_ITEM_SET == rItemSet.GetItemState( nWhich, bDeep, &pItem ) ) + { + Insert( *pItem, nStart, nEnd, rFmtInfos, bParaAttrs ); + } + + nWhich = aIter.NextWhich(); + } +} + +void HTMLEndPosLst::Insert( const SwDrawFrmFmt& rFmt, xub_StrLen nPos, + SwHTMLFmtInfos& rFmtInfos ) +{ + // der Type-Cast ist nur noetig, um nicht seinetwegen + // svdrwobt.hxx zu includem + const SdrObject* pTextObj = + (const SdrObject *)SwHTMLWriter::GetMarqueeTextObj( rFmt ); + + if( pTextObj ) + { + // die Edit-Engine-Attribute des Objekts als SW-Attribute holen + // und als Hints einsortieren. Wegen der Menge der Hints werden + // Styles hierbei nicht beruecksichtigt! + const SfxItemSet& rFmtItemSet = rFmt.GetAttrSet(); + SfxItemSet aItemSet( *rFmtItemSet.GetPool(), RES_CHRATR_BEGIN, + RES_CHRATR_END ); + SwHTMLWriter::GetEEAttrsFromDrwObj( aItemSet, pTextObj, TRUE ); + BOOL bOutStylesOld = bOutStyles; + bOutStyles = FALSE; + Insert( aItemSet, nPos, nPos+1, rFmtInfos, FALSE, FALSE ); + bOutStyles = bOutStylesOld; + } +} + +void HTMLEndPosLst::OutStartAttrs( SwHTMLWriter& rHWrt, xub_StrLen nPos ) +{ + rHWrt.bTagOn = TRUE; + + // die Attribute in der Start-Liste sind aufsteigend sortiert + for( USHORT i=0; i< aStartLst.Count(); i++ ) + { + HTMLSttEndPos *pPos = aStartLst[i]; + xub_StrLen nStart = pPos->GetStart(); + if( nStart > nPos ) + { + // dieses und alle folgenden Attribute werden erst noch geoeffnet + break; + } + else if( nStart == nPos ) + { + // das Attribut ausgeben + Out( aHTMLAttrFnTab, *pPos->GetItem(), rHWrt ); + } + } +} + +void HTMLEndPosLst::OutEndAttrs( SwHTMLWriter& rHWrt, xub_StrLen nPos ) +{ + rHWrt.bTagOn = FALSE; + + // die Attribute in der End-Liste sind aufsteigend sortiert + USHORT i=0; + while( i < aEndLst.Count() ) + { + HTMLSttEndPos *pPos = aEndLst[i]; + xub_StrLen nEnd = pPos->GetEnd(); + + if( STRING_MAXLEN==nPos || nEnd == nPos ) + { + Out( aHTMLAttrFnTab, *pPos->GetItem(), rHWrt ); + _RemoveItem( i ); + } + else if( nEnd > nPos ) + { + // dieses und alle folgenden Attribute werden erst spaeter beendet + break; + } + else + { + // Das Attribut wird vor der aktuellen Position beendet. Das + // darf nicht sein, aber wie koennen trotzdem damit umgehen + ASSERT( nEnd >= nPos, + "Das Attribut sollte schon laengst beendet sein" ); + i++; + } + } +} + + +/* Ausgabe der Nodes */ +Writer& OutHTML_SwTxtNode( Writer& rWrt, const SwCntntNode& rNode ) +{ + SwTxtNode * pNd = &((SwTxtNode&)rNode); + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + + const String& rStr = pNd->GetTxt(); + xub_StrLen nEnde = rStr.Len(); + + // Besonderheit: leere Node und HR-Vorlage (horizontaler Strich) + // nur ein
    ausgeben + USHORT nPoolId = pNd->GetAnyFmtColl().GetPoolFmtId(); + + if( !nEnde && (RES_POOLCOLL_HTML_HR==nPoolId || + pNd->GetAnyFmtColl().GetName().EqualsAscii( sHTML_horzrule) ) ) + { + // dann die absatz-gebundenen Grafiken/OLE-Objekte im Absatz + // MIB 8.7.97: Ein
     spannen wir um die Linie auf. Dann stimmen
    +        // zwar die Abstaende nicht, aber sonst bekommen wir einen leeren
    +        // Absatz hinter dem 
    und das ist noch unschoener. + rHTMLWrt.ChangeParaToken( 0 ); + + // Alle an dem Node verankerten Rahmen ausgeben + rHTMLWrt.OutFlyFrm( rNode.GetIndex(), 0, HTML_POS_ANY ); + + if( rHTMLWrt.bLFPossible ) + rHTMLWrt.OutNewLine(); // Absatz-Tag in eine neue Zeile + + rHTMLWrt.bLFPossible = TRUE; + + ByteString sOut( '<' ); + sOut += sHTML_horzrule; + + const SfxItemSet* pItemSet = pNd->GetpSwAttrSet(); + if( !pItemSet ) + { + rWrt.Strm() << sOut.GetBuffer() << '>'; + return rHTMLWrt; + } + const SfxPoolItem* pItem; + if( SFX_ITEM_SET == pItemSet->GetItemState( RES_LR_SPACE, FALSE, &pItem )) + { + USHORT nLeft = ((SvxLRSpaceItem*)pItem)->GetLeft(); + USHORT nRight = ((SvxLRSpaceItem*)pItem)->GetRight(); + if( nLeft || nRight ) + { + const SwFrmFmt& rPgFmt = + rHTMLWrt.pDoc->GetPageDescFromPool( RES_POOLPAGE_HTML )->GetMaster(); + + const SwFmtFrmSize& rSz = rPgFmt.GetFrmSize(); + const SvxLRSpaceItem& rLR = rPgFmt.GetLRSpace(); + const SwFmtCol& rCol = rPgFmt.GetCol(); + + long nPageWidth = rSz.GetWidth() - rLR.GetLeft() - rLR.GetRight(); + + if( 1 < rCol.GetNumCols() ) + nPageWidth /= rCol.GetNumCols(); + + const SwTableNode* pTblNd = pNd->FindTableNode(); + if( pTblNd ) + { + const SwTableBox* pBox = pTblNd->GetTable().GetTblBox( + pNd->StartOfSectionIndex() ); + if( pBox ) + nPageWidth = pBox->GetFrmFmt()->GetFrmSize().GetWidth(); + } + + ((sOut += ' ') += sHTML_O_width) += '='; + rWrt.Strm() << sOut.GetBuffer(); + rWrt.OutULong( rHTMLWrt.ToPixel(nPageWidth-nLeft-nRight) ); + + ((sOut = ' ') += sHTML_O_align) += '='; + if( !nLeft ) + sOut += sHTML_AL_left; + else if( !nRight ) + sOut += sHTML_AL_right; + else + sOut += sHTML_AL_center; + } + } + rWrt.Strm() << sOut.GetBuffer(); + if( SFX_ITEM_SET == pItemSet->GetItemState( RES_BOX, FALSE, &pItem )) + { + const SvxBoxItem* pBoxItem = (const SvxBoxItem*)pItem; + const SvxBorderLine* pBorderLine = pBoxItem->GetBottom(); + if( pBorderLine ) + { + USHORT nWidth = pBorderLine->GetOutWidth() + + pBorderLine->GetInWidth() + + pBorderLine->GetDistance(); + ((sOut = ' ') += sHTML_O_size) += '='; + rWrt.Strm() << sOut.GetBuffer(); + rWrt.OutULong( rHTMLWrt.ToPixel(nWidth) ); + + const Color& rBorderColor = pBorderLine->GetColor(); + if( !rBorderColor.IsRGBEqual( Color(COL_GRAY) ) ) + { + ((sOut = ' ') += sHTML_O_color) += '='; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_Color( rWrt.Strm(), rBorderColor, + rHTMLWrt.eDestEnc ); + } + + if( !pBorderLine->GetInWidth() ) + { + (sOut = ' ') += sHTML_O_noshade; + rWrt.Strm() << sOut.GetBuffer(); + } + } + } + rWrt.Strm() << '>'; + return rHTMLWrt; + } + + // Die leeren Nodes mit 2pt Font-Hoehe und der Stand-Vorlage, die + // vor Tabellen und Bereichen eingefuegt werden, nicht exportieren, + // Bookmarks oder absatzgebundene Grafiken aber schon. + // MIB 21.7.97: Ausserdem auch keine leeren Tabellen-Zellen exportieren. + if( !nEnde && (nPoolId == RES_POOLCOLL_STANDARD || + nPoolId == RES_POOLCOLL_TABLE || + nPoolId == RES_POOLCOLL_TABLE_HDLN) ) + { + // Der aktuelle Node ist leer und enthaelt Standard-Vorlage ... + const SfxPoolItem* pItem; + const SfxItemSet *pItemSet = pNd->GetpSwAttrSet(); + if( pItemSet && pItemSet->Count() && + SFX_ITEM_SET == pItemSet->GetItemState( RES_CHRATR_FONTSIZE, FALSE, &pItem ) && + 40 == ((const SvxFontHeightItem *)pItem)->GetHeight() ) + { + // ... ausserdem ist die 2pt Schrift eingestellt ... + ULONG nNdPos = rWrt.pCurPam->GetPoint()->nNode.GetIndex(); + const SwNode *pNextNd = rWrt.pDoc->GetNodes()[nNdPos+1]; + const SwNode *pPrevNd = rWrt.pDoc->GetNodes()[nNdPos-1]; + BOOL bStdColl = nPoolId == RES_POOLCOLL_STANDARD; + if( ( bStdColl && (pNextNd->IsTableNode() || + pNextNd->IsSectionNode()) ) || + ( !bStdColl && pNextNd->IsEndNode() && + pPrevNd->IsStartNode() && + SwTableBoxStartNode== + pPrevNd->GetStartNode()->GetStartNodeType() ) ) + { + // ... und er steht vor einer Tabelle ohne einem Bereich + rHTMLWrt.OutBookmarks(); + rHTMLWrt.bLFPossible = !rHTMLWrt.nLastParaToken; + + // Alle an dem Node verankerten Rahmen ausgeben + rHTMLWrt.OutFlyFrm( rNode.GetIndex(), 0, HTML_POS_ANY ); + rHTMLWrt.bLFPossible = FALSE; + + return rWrt; + } + } + } + + // PagePreaks uns PagDescs abfangen + BOOL bPageBreakBehind = FALSE; + if( rHTMLWrt.bCfgFormFeed && + !(rHTMLWrt.bOutTable || rHTMLWrt.GetFlyFrmFmt()) && + rHTMLWrt.pStartNdIdx->GetIndex() != + rHTMLWrt.pCurPam->GetPoint()->nNode.GetIndex() ) + { + BOOL bPageBreakBefore = FALSE; + const SfxPoolItem* pItem; + const SfxItemSet* pItemSet = pNd->GetpSwAttrSet(); + + if( pItemSet ) + { + if( SFX_ITEM_SET == + pItemSet->GetItemState( RES_PAGEDESC, TRUE, &pItem ) && + ((SwFmtPageDesc *)pItem)->GetPageDesc() ) + bPageBreakBefore = TRUE; + else if( SFX_ITEM_SET == + pItemSet->GetItemState( RES_BREAK, TRUE, &pItem ) ) + { + switch( ((SvxFmtBreakItem *)pItem)->GetBreak() ) + { + case SVX_BREAK_PAGE_BEFORE: + bPageBreakBefore = TRUE; + break; + case SVX_BREAK_PAGE_AFTER: + bPageBreakBehind = TRUE; + break; + case SVX_BREAK_PAGE_BOTH: + bPageBreakBefore = TRUE; + bPageBreakBehind = TRUE; + break; + } + } + } + + if( bPageBreakBefore ) + rWrt.Strm() << '\f'; + } + + // eventuell eine Form oeffnen + rHTMLWrt.OutForm(); + + // An dem Node "verankerte" Seitenegebunde Rahmen ausgeben + BOOL bFlysLeft = rHTMLWrt.OutFlyFrm( rNode.GetIndex(), + 0, HTML_POS_PREFIX ); + // An dem Node verankerte Rahmen ausgeben, die vor dem + // Absatz-Tag geschrieben werden sollen. + if( bFlysLeft ) + bFlysLeft = rHTMLWrt.OutFlyFrm( rNode.GetIndex(), + 0, HTML_POS_BEFORE ); + + if( rHTMLWrt.pCurPam->GetPoint()->nNode == rHTMLWrt.pCurPam->GetMark()->nNode ) + nEnde = rHTMLWrt.pCurPam->GetMark()->nContent.GetIndex(); + + // gibt es harte Attribute, die als Optionen geschrieben werden muessen? + rHTMLWrt.bTagOn = TRUE; + + // jetzt das Tag des Absatzes ausgeben + const SwFmt& rFmt = pNd->GetAnyFmtColl(); + SwHTMLTxtCollOutputInfo aFmtInfo; + BOOL bOldLFPossible = rHTMLWrt.bLFPossible; + OutHTML_SwFmt( rWrt, rFmt, pNd->GetpSwAttrSet(), aFmtInfo ); + + // Wenn vor dem Absatz-Tag keine neue Zeile aufgemacht wurde, dann + // tun wir das jetzt + rHTMLWrt.bLFPossible = !rHTMLWrt.nLastParaToken; + if( !bOldLFPossible && rHTMLWrt.bLFPossible ) + rHTMLWrt.OutNewLine(); + + + // dann die Bookmarks (inkl. End-Tag) + rHTMLWrt.bOutOpts = FALSE; + rHTMLWrt.OutBookmarks(); + + // jetzt ist noch mal eine gute Gelegenheit fuer ein LF, sofern es noch + // erlaubt ist + if( rHTMLWrt.bLFPossible && + rHTMLWrt.GetLineLen() >= rHTMLWrt.nWhishLineLen ) + { + rHTMLWrt.OutNewLine(); + } + rHTMLWrt.bLFPossible = FALSE; + + // Text, der aus einer Outline-Numerierung kommt ermitteln + xub_StrLen nOffset = 0; + String aOutlineTxt; + if( pNd->GetOutlineNum() && !pNd->GetNum() ) + { + aOutlineTxt = pNd->GetNumString(); + nOffset += aOutlineTxt.Len(); + } + if( rHTMLWrt.pFmtFtn ) + nOffset += rHTMLWrt.GetFootEndNoteSymLen( *rHTMLWrt.pFmtFtn ); + + // gibt es harte Attribute, die als Tags geschrieben werden muessen? + HTMLEndPosLst aEndPosLst( rWrt.pDoc, rHTMLWrt.pTemplate, + rHTMLWrt.pDfltColor, rHTMLWrt.bCfgOutStyles, + rHTMLWrt.GetHTMLMode() ); + if( aFmtInfo.pItemSet ) + { + aEndPosLst.Insert( *aFmtInfo.pItemSet, 0, nEnde + nOffset, + rHTMLWrt.aChrFmtInfos, FALSE, TRUE ); + } + + + if( aOutlineTxt.Len() || rHTMLWrt.pFmtFtn ) + { + // Absatz-Attribute ausgeben, damit der Text die Attribute des + // Absatzes bekommt. + aEndPosLst.OutStartAttrs( rHTMLWrt, 0 ); + + // Theoretisch muesste man hier die Zeichen-Vorlage der Numerierung + // beachten. Da man die ueber die UI nicht setzen kann, ignorieren + // wir sie erstmal. + + if( aOutlineTxt.Len() ) + HTMLOutFuncs::Out_String( rWrt.Strm(), aOutlineTxt, + rHTMLWrt.eDestEnc ); + + if( rHTMLWrt.pFmtFtn ) + { + rHTMLWrt.OutFootEndNoteSym( *rHTMLWrt.pFmtFtn ); + rHTMLWrt.pFmtFtn = 0; + } + } + + // erstmal den Start berichtigen. D.h. wird nur ein Teil vom Satz + // ausgegeben, so muessen auch da die Attribute stimmen!! + rHTMLWrt.bTxtAttr = TRUE; + + USHORT nAttrPos = 0; + xub_StrLen nStrPos = rHTMLWrt.pCurPam->GetPoint()->nContent.GetIndex(); + const SwTxtAttr * pHt = 0; + USHORT nCntAttr = pNd->HasHints() ? pNd->GetSwpHints().Count() : 0; + if( nCntAttr && nStrPos > *( pHt = pNd->GetSwpHints()[ 0 ] )->GetStart() ) + { + // Ok, es gibt vorher Attribute, die ausgegeben werden muessen + do { + aEndPosLst.OutEndAttrs( rHTMLWrt, nStrPos + nOffset ); + + nAttrPos++; + if( RES_TXTATR_FIELD == pHt->Which() ) // Felder nicht + continue; // ausgeben + + if( pHt->GetEnd() ) + { + xub_StrLen nHtEnd = *pHt->GetEnd(), + nHtStt = *pHt->GetStart(); + if( !rHTMLWrt.bWriteAll && nHtEnd <= nStrPos ) + continue; + + // leere Hints am Anfang nicht beachten, oder ?? + if( nHtEnd == nHtStt ) + continue; + + // Attribut in die Liste aufnehemen + if( rHTMLWrt.bWriteAll ) + aEndPosLst.Insert( pHt->GetAttr(), nHtStt + nOffset, + nHtEnd + nOffset, + rHTMLWrt.aChrFmtInfos ); + else + { + xub_StrLen nTmpStt = nHtStt < nStrPos ? nStrPos : nHtStt; + xub_StrLen nTmpEnd = nHtEnd < nEnde ? nHtEnd : nEnde; + aEndPosLst.Insert( pHt->GetAttr(), nTmpStt + nOffset, + nTmpEnd + nOffset, + rHTMLWrt.aChrFmtInfos ); + } + continue; + // aber nicht ausgeben, das erfolgt spaeter !! + } + + } while( nAttrPos < nCntAttr && nStrPos > + *( pHt = pNd->GetSwpHints()[ nAttrPos ] )->GetStart() ); + + // dann gebe mal alle gesammelten Attribute von der String-Pos aus + aEndPosLst.OutEndAttrs( rHTMLWrt, nStrPos + nOffset ); + aEndPosLst.OutStartAttrs( rHTMLWrt, nStrPos + nOffset ); + } + + BOOL bWriteBreak = (HTML_PREFORMTXT_ON != rHTMLWrt.nLastParaToken); + if( bWriteBreak && pNd->GetNum() && + NO_NUMBERING != pNd->GetNum()->GetLevel() ) + bWriteBreak = FALSE; + + xub_StrLen nPreSplitPos = 0; + for( ; nStrPos < nEnde; nStrPos++ ) + { + aEndPosLst.OutEndAttrs( rHTMLWrt, nStrPos + nOffset ); + + // Die an der aktuellen Position verankerten Rahmen ausgeben + if( bFlysLeft ) + bFlysLeft = rHTMLWrt.OutFlyFrm( rNode.GetIndex(), + nStrPos, HTML_POS_INSIDE ); + + BOOL bOutChar = TRUE; + const SwTxtAttr * pTxtHt = 0; + if( nAttrPos < nCntAttr && *pHt->GetStart() == nStrPos + && nStrPos != nEnde ) + { + do { + if( pHt->GetEnd() ) + { + if( RES_CHRATR_KERNING == pHt->Which() && + rHTMLWrt.IsHTMLMode(HTMLMODE_FIRSTLINE) && + *pHt->GetEnd() - nStrPos == 1 && + ' ' == rStr.GetChar(nStrPos) && + ((const SvxKerningItem&)pHt->GetAttr()).GetValue() > 0 ) + { + // Wenn erlaubt, wird das Ding als Spacer exportiert + + bOutChar = FALSE; // Space nicht ausgeben + bWriteBreak = FALSE; // der Absatz ist aber auch nicht leer + + OutHTML_HoriSpacer( rWrt, + ((const SvxKerningItem&)pHt->GetAttr()).GetValue() ); + + // Der Hint braucht nun doch nicht weiter + // beruecksichtigt werden. + } + else if( *pHt->GetEnd() != nStrPos ) + { + // Hints mit Ende einsortieren, wenn sie keinen + // leeren Bereich aufspannen (Hints, die keinen + // Bereich aufspannen werden ignoriert + aEndPosLst.Insert( pHt->GetAttr(), nStrPos + nOffset, + *pHt->GetEnd() + nOffset, + rHTMLWrt.aChrFmtInfos ); + } + else + { +#if 0 + // leere Hinst gleich ausgeben + rHTMLWrt.bTagOn = TRUE; + Out( aHTMLAttrFnTab, pHt->GetAttr(), rHTMLWrt ); + rHTMLWrt.bTagOn = FALSE; + Out( aHTMLAttrFnTab, pHt->GetAttr(), rHTMLWrt ); +#endif + } + } + else + { + // Hints ohne-Ende werden als letztes ausgebeben + ASSERT( !pTxtHt, + "Wieso gibt es da schon ein Attribut ohne Ende?" ); + if( rHTMLWrt.nTxtAttrsToIgnore>0 ) + { + rHTMLWrt.nTxtAttrsToIgnore--; + } + else + { + pTxtHt = pHt; + bWriteBreak = FALSE; // der Absatz ist aber auch nicht leer + } + bOutChar = FALSE; // keine 255 ausgeben + } + } while( ++nAttrPos < nCntAttr && nStrPos == + *( pHt = pNd->GetSwpHints()[ nAttrPos ] )->GetStart() ); + } + + // Manche Draw-Formate koennen auch noch Attribute mitbringen + if( pTxtHt && RES_TXTATR_FLYCNT == pTxtHt->Which() ) + { + const SwFrmFmt* pFrmFmt = + ((const SwFmtFlyCnt &)pTxtHt->GetAttr()).GetFrmFmt(); + + if( RES_DRAWFRMFMT == pFrmFmt->Which() ) + aEndPosLst.Insert( *((const SwDrawFrmFmt *)pFrmFmt), + nStrPos + nOffset, + rHTMLWrt.aChrFmtInfos ); + } + + aEndPosLst.OutEndAttrs( rHTMLWrt, nStrPos + nOffset ); + aEndPosLst.OutStartAttrs( rHTMLWrt, nStrPos + nOffset ); + + if( pTxtHt ) + { + rHTMLWrt.bLFPossible = !rHTMLWrt.nLastParaToken && nStrPos > 0 && + rStr.GetChar(nStrPos-1) == ' '; + Out( aHTMLAttrFnTab, pTxtHt->GetAttr(), rHTMLWrt ); + rHTMLWrt.bLFPossible = FALSE; + } + + if( bOutChar ) + { + sal_Unicode c = rStr.GetChar( nStrPos ); + // versuche nach ungefaehr 255 Zeichen eine neue Zeile zu + // beginnen, aber nicht in PRE und nur bei Spaces + // MIB 15.4.99: Auf Wunsch von ST wird in Mails auch in einem + // PRE ganz bewusst umgebrocheni (#64159#). + if( ' '==c && (!rHTMLWrt.nLastParaToken || rHTMLWrt.HasCId()) ) + { + xub_StrLen nLineLen; + if( rHTMLWrt.nLastParaToken ) + nLineLen = nStrPos - nPreSplitPos; + else + nLineLen = rHTMLWrt.GetLineLen(); + + xub_StrLen nWordLen = rStr.Search( ' ', nStrPos+1 ); + if( nWordLen == STRING_NOTFOUND ) + nWordLen = nEnde; + nWordLen -= nStrPos; + + if( nLineLen >= rHTMLWrt.nWhishLineLen || + (nLineLen+nWordLen) >= rHTMLWrt.nWhishLineLen ) + { + rHTMLWrt.OutNewLine(); + bOutChar = FALSE; + if( rHTMLWrt.nLastParaToken ) + nPreSplitPos = nStrPos+1; + } + } + + if( bOutChar ) + { + if( 0x0a == c ) + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_linebreak ); + else + HTMLOutFuncs::Out_Char( rWrt.Strm(), c, rHTMLWrt.eDestEnc ); + + // Wenn das letzte Zeichen eines Absatzed ein harter + // Zeilen-Umbruch ist brauchen wir noch ein
    mehr, weil + // Netscape & Co in diesem Fall fuer den naechsten Absatz + // nicht in die naechste Zeile gehen. + bWriteBreak = (0x0a == c) && + (HTML_PREFORMTXT_ON != rHTMLWrt.nLastParaToken); + } + } + } + + + BOOL bEndAttrsWritten = aEndPosLst.Count() > 0; + aEndPosLst.OutEndAttrs( rHTMLWrt, STRING_MAXLEN ); + + // Die an der letzten Position verankerten Rahmen ausgeben + if( bFlysLeft ) + bFlysLeft = rHTMLWrt.OutFlyFrm( rNode.GetIndex(), + nEnde, HTML_POS_INSIDE ); + ASSERT( !bFlysLeft, "Es wurden nicht alle Rahmen gespeichert!" ); + + rHTMLWrt.bTxtAttr = FALSE; + + if( bWriteBreak ) + { + BOOL bEndOfCell = rHTMLWrt.bOutTable && + rWrt.pCurPam->GetPoint()->nNode.GetIndex() == + rWrt.pCurPam->GetMark()->nNode.GetIndex(); + + if( bEndOfCell && !nEnde && + rHTMLWrt.IsHTMLMode(HTMLMODE_NBSP_IN_TABLES) ) + { + // Wenn der letzte Absatz einer Tabellezelle leer ist und + // wir fuer den MS-IE exportieren, schreiben wir statt eines + //
    ein   + rWrt.Strm() << '&' << sHTML_S_nbsp << ';'; + } + else + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_linebreak ); + const SvxULSpaceItem& rULSpace = + (const SvxULSpaceItem &)pNd->GetSwAttrSet().Get(RES_UL_SPACE); + if( rULSpace.GetLower() > 0 && !bEndOfCell && + !rHTMLWrt.IsHTMLMode(HTMLMODE_NO_BR_AT_PAREND) ) + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_linebreak ); + rHTMLWrt.bLFPossible = TRUE; + } + } + + if( rHTMLWrt.bClearLeft || rHTMLWrt.bClearRight ) + { + const sal_Char *pStr; + if( rHTMLWrt.bClearLeft ) + { + if( rHTMLWrt.bClearRight ) + pStr = sHTML_AL_all; + else + pStr = sHTML_AL_left; + } + else + pStr = sHTML_AL_right; + + ByteString sOut( sHTML_linebreak ); + (((sOut += ' ') += sHTML_O_clear) += '=') += pStr; + + HTMLOutFuncs::Out_AsciiTag( rHTMLWrt.Strm(), sOut.GetBuffer() ); + rHTMLWrt.bClearLeft = FALSE; + rHTMLWrt.bClearRight = FALSE; + + rHTMLWrt.bLFPossible = TRUE; + } + + // wenn ein LF nicht schon erlaubt ist wird es erlaubt, wenn der + // Absatz mit einem ' ' endet + if( !rHTMLWrt.bLFPossible && !rHTMLWrt.nLastParaToken && + nEnde > 0 && ' ' == rStr.GetChar(nEnde-1) ) + rHTMLWrt.bLFPossible = TRUE; + + rHTMLWrt.bTagOn = FALSE; + OutHTML_SwFmtOff( rWrt, aFmtInfo ); + + // eventuell eine Form schliessen + rHTMLWrt.OutForm( FALSE ); + + if( bPageBreakBehind ) + rWrt.Strm() << '\f'; + + return rHTMLWrt; +} + + +ULONG SwHTMLWriter::ToPixel( ULONG nVal ) const +{ + if( Application::GetDefaultDevice() && nVal ) + { + nVal = Application::GetDefaultDevice()->LogicToPixel( + Size( nVal, nVal ), MapMode( MAP_TWIP ) ).Width(); + if( !nVal ) // wo ein Twip ist sollte auch ein Pixel sein + nVal = 1; + } + return nVal; +} + + +static Writer& OutHTML_CSS1Attr( Writer& rWrt, const SfxPoolItem& rHt ) +{ + // wenn gerade Hints geschrieben werden versuchen wir den Hint als + // CSS1-Attribut zu schreiben + + if( ((SwHTMLWriter&)rWrt).bCfgOutStyles && ((SwHTMLWriter&)rWrt).bTxtAttr ) + OutCSS1_HintSpanTag( rWrt, rHt ); + + return rWrt; +} + + +/* File CHRATR.HXX: */ + +static Writer& OutHTML_SvxColor( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const Color& rColor = ((const SvxColorItem&)rHt).GetValue(); + + // die Default-Farbe nur Schreiben, wenn sie als Hint vorkommt + //if( rHTMLWrt.bTagOn && !rHTMLWrt.bTxtAttr && rHTMLWrt.pDfltColor + // && rColor == *rHTMLWrt.pDfltColor ) + // return rWrt; + + if( !rHTMLWrt.bTxtAttr && rHTMLWrt.bCfgOutStyles && rHTMLWrt.bCfgPreferStyles ) + { + // Font-Farbe nicht als Tag schreiben, wenn Styles normalen Tags + // vorgezogen werden + return rWrt; + } + + if( rHTMLWrt.bTagOn ) + { + ByteString sOut( '<' ); + (((sOut += sHTML_font) += ' ') += sHTML_O_color) += '='; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_Color( rWrt.Strm(), rColor ) << '>'; + } + else + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_font, FALSE ); + + return rWrt; +} + + +static Writer& OutHTML_SwPosture( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const FontItalic nPosture = ((const SvxPostureItem&)rHt).GetPosture(); + if( ITALIC_NORMAL == nPosture ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_italic, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + +static Writer& OutHTML_SvxFont( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + if( rHTMLWrt.bTagOn ) + { + String aNames; + SwHTMLWriter::PrepareFontList( ((const SvxFontItem&)rHt), aNames, 0, + rHTMLWrt.IsHTMLMode(HTMLMODE_FONT_GENERIC) ); + ByteString sOut( '<' ); + (((sOut += sHTML_font) += ' ') += sHTML_O_face) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_String( rWrt.Strm(), aNames, rHTMLWrt.eDestEnc ) + << "\">"; + } + else + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_font , FALSE ); + + return rWrt; +} + +static Writer& OutHTML_SvxFontHeight( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + if( rHTMLWrt.bTagOn ) + { + ByteString sOut( '<' ); + sOut += sHTML_font; + + UINT32 nHeight = ((const SvxFontHeightItem&)rHt).GetHeight(); + USHORT nSize = rHTMLWrt.GetHTMLFontSize( nHeight ); + (((sOut += ' ') += sHTML_O_size) += '=') + += ByteString::CreateFromInt32( nSize ); + rWrt.Strm() << sOut.GetBuffer(); + + if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr && + rHTMLWrt.aFontHeights[nSize-1] != nHeight ) + { + // wenn die Groesse keiner HTML-Groesse entspricht, + // wird sie noch zusatzlich als Style-Option exportiert + OutCSS1_HintStyleOpt( rWrt, rHt ); + } + rWrt.Strm() << '>'; + } + else + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_font, FALSE ); + } + + return rWrt; +} + +static Writer& OutHTML_SwWeight( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const FontWeight nBold = ((const SvxWeightItem&)rHt).GetWeight(); + if( WEIGHT_BOLD == nBold ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_bold, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + + +static Writer& OutHTML_SwCrossedOut( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + // Wegen Netscape schrieben wir hier STRIKE und nicht S raus! + const FontStrikeout nStrike = ((const SvxCrossedOutItem&)rHt).GetStrikeout(); + if( STRIKEOUT_NONE != nStrike ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_strike, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + + +static Writer& OutHTML_SvxEscapement( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const SvxEscapement eEscape = + (const SvxEscapement)((const SvxEscapementItem&)rHt).GetEnumValue(); + const sal_Char *pStr = 0; + switch( eEscape ) + { + case SVX_ESCAPEMENT_SUPERSCRIPT: pStr = sHTML_superscript; break; + case SVX_ESCAPEMENT_SUBSCRIPT: pStr = sHTML_subscript; break; + } + + if( pStr ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), pStr, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + + + +static Writer& OutHTML_SwUnderline( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const FontUnderline eUnder = ((const SvxUnderlineItem&)rHt).GetUnderline(); + if( UNDERLINE_NONE != eUnder ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_underline, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + + +static Writer& OutHTML_SwFlyCnt( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + SwFmtFlyCnt& rFlyCnt = (SwFmtFlyCnt&)rHt; + + const SwFrmFmt& rFmt = *rFlyCnt.GetFrmFmt(); + const SdrObject *pSdrObj = 0; + + SwHTMLFrmType eType = + (SwHTMLFrmType)rHTMLWrt.GuessFrmType( rFmt, pSdrObj ); + BYTE nMode = aHTMLOutFrmAsCharTable[eType][rHTMLWrt.nExportMode]; + rHTMLWrt.OutFrmFmt( nMode, rFmt, pSdrObj ); + return rWrt; +} + +static Writer& OutHTML_SwHardBlank( Writer& rWrt, const SfxPoolItem& rHt ) +{ + HTMLOutFuncs::Out_Char( rWrt.Strm(), ((SwFmtHardBlank&)rHt).GetChar(), + ((SwHTMLWriter&)rWrt).eDestEnc ); + return rWrt; +} + +// Das ist jetzt unser Blink-Item. Blinkend wird eingeschaltet, indem man +// das Item auf TRUE setzt! +static Writer& OutHTML_SwBlink( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts || !rHTMLWrt.IsHTMLMode(HTMLMODE_BLINK) ) + return rWrt; + + if( ((const SvxBlinkItem&)rHt).GetValue() ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_blink, rHTMLWrt.bTagOn ); + } + else if( rHTMLWrt.bCfgOutStyles && rHTMLWrt.bTxtAttr ) + { + // vielleicht als CSS1-Attribut ? + OutCSS1_HintSpanTag( rWrt, rHt ); + } + + return rWrt; +} + +Writer& OutHTML_INetFmt( Writer& rWrt, const SwFmtINetFmt& rINetFmt, BOOL bOn ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + String aURL( rINetFmt.GetValue() ); + const SvxMacroTableDtor *pMacTable = rINetFmt.GetMacroTbl(); + BOOL bEvents = pMacTable != 0 && pMacTable->Count() > 0; + + // Gibt es ueberhaupt etwas auszugeben? + if( !aURL.Len() && !bEvents && !rINetFmt.GetName().Len() ) + return rWrt; + + // Tag aus? Dann nur ein ausgeben. + if( !bOn ) + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), sHTML_anchor, FALSE ); + return rWrt; + } + + ByteString sOut( '<' ); + sOut += sHTML_anchor; + rWrt.Strm() << sOut.GetBuffer(); + +#define REL_HACK +#ifdef REL_HACK + String sRel; +#endif + + if( aURL.Len() || bEvents ) + { +#ifdef REL_HACK + String sTmp( aURL ); + sTmp.ToUpperAscii(); + xub_StrLen nPos = sTmp.SearchAscii( "\" REL=" ); + if( nPos!=STRING_NOTFOUND ) + { + sRel = aURL.Copy( nPos+1 ); + aURL.Erase( nPos ); + } +#endif + aURL.EraseLeadingChars().EraseTrailingChars(); + + ((sOut = ' ') += sHTML_O_href) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + aURL = INetURLObject::AbsToRel( aURL, INetURLObject::WAS_ENCODED, + INetURLObject::DECODE_WITH_CHARSET ); + HTMLOutFuncs::Out_String( rWrt.Strm(), aURL, rHTMLWrt.eDestEnc ); + sOut = '\"'; + } + else + sOut.Erase(); + + if( rINetFmt.GetName().Len() ) + { + ((sOut += ' ') += sHTML_O_name) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_String( rWrt.Strm(), rINetFmt.GetName(), + rHTMLWrt.eDestEnc ); + sOut = '\"'; + } + + const String& rTarget = rINetFmt.GetTargetFrame(); + if( rTarget.Len() ) + { + ((sOut += ' ') += sHTML_O_target) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_String( rWrt.Strm(), rTarget, rHTMLWrt.eDestEnc ); + sOut = '\"'; + } + +#ifdef REL_HACK + if( sRel.Len() ) + sOut += ByteString( sRel, RTL_TEXTENCODING_ASCII_US ); +#endif + if( sOut.Len() ) + rWrt.Strm() << sOut.GetBuffer(); + + if( bEvents ) + HTMLOutFuncs::Out_Events( rWrt.Strm(), *pMacTable, aAnchorEventTable, + rHTMLWrt.bCfgStarBasic, rHTMLWrt.eDestEnc ); + rWrt.Strm() << ">"; + + return rWrt; +} + +static Writer& OutHTML_SwFmtINetFmt( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const SwFmtINetFmt& rINetFmt = (const SwFmtINetFmt&)rHt; + + if( rHTMLWrt.bTagOn ) + { + // ggf. ein noch offenes Attribut voruebergehend beenden + if( rHTMLWrt.aINetFmts.Count() ) + { + SwFmtINetFmt *pINetFmt = + rHTMLWrt.aINetFmts[ rHTMLWrt.aINetFmts.Count()-1 ]; + OutHTML_INetFmt( rWrt, *pINetFmt, FALSE ); + } + + // jetzt das neue aufmachen + OutHTML_INetFmt( rWrt, rINetFmt, TRUE ); + + // und merken + const SwFmtINetFmt *pINetFmt = new SwFmtINetFmt( rINetFmt ); + rHTMLWrt.aINetFmts.C40_INSERT( SwFmtINetFmt, pINetFmt, + rHTMLWrt.aINetFmts.Count() ); + } + else + { + // das + OutHTML_INetFmt( rWrt, rINetFmt, FALSE ); + + ASSERT( rHTMLWrt.aINetFmts.Count(), "da fehlt doch ein URL-Attribut" ); + if( rHTMLWrt.aINetFmts.Count() ) + { + // das eigene Attribut vom Stack holen + SwFmtINetFmt *pINetFmt = + rHTMLWrt.aINetFmts[ rHTMLWrt.aINetFmts.Count()-1 ]; + + rHTMLWrt.aINetFmts.Remove( rHTMLWrt.aINetFmts.Count()-1, 1 ); + delete pINetFmt; + } + + if( rHTMLWrt.aINetFmts.Count() ) + { + // es ist noch ein Attribut auf dem Stack, das wieder geoeffnet + // werden muss + SwFmtINetFmt *pINetFmt = + rHTMLWrt.aINetFmts[ rHTMLWrt.aINetFmts.Count()-1 ]; + OutHTML_INetFmt( rWrt, *pINetFmt, TRUE ); + } + } + + return rWrt; +} + +static Writer& OutHTML_SwTxtCharFmt( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter& rHTMLWrt = (SwHTMLWriter&)rWrt; + if( rHTMLWrt.bOutOpts ) + return rWrt; + + const SwFmtCharFmt& rChrFmt = (const SwFmtCharFmt&)rHt; + const SwCharFmt* pFmt = rChrFmt.GetCharFmt(); + + if( !pFmt ) + { + return rWrt; + } + + SwHTMLFmtInfo aFmtInfo( pFmt ); + USHORT nPos; + if( !rHTMLWrt.aChrFmtInfos.Seek_Entry( &aFmtInfo, &nPos ) ) + return rWrt; + + const SwHTMLFmtInfo *pFmtInfo = rHTMLWrt.aChrFmtInfos[nPos]; + ASSERT( pFmtInfo, "Wieso gint es keine Infos ueber die Zeichenvorlage?" ); + + if( rHTMLWrt.bTagOn ) + { + ByteString sOut( '<' ); + if( pFmtInfo->aToken.Len() > 0 ) + sOut += pFmtInfo->aToken; + else + sOut += sHTML_span; + if( rHTMLWrt.bCfgOutStyles && pFmtInfo->aClass.Len() ) + { + ((sOut += ' ') += sHTML_O_class) += "=\""; + rWrt.Strm() << sOut.GetBuffer(); + HTMLOutFuncs::Out_String( rWrt.Strm(), pFmtInfo->aClass, + rHTMLWrt.eDestEnc ); + sOut = '\"'; + } + sOut += '>'; + rWrt.Strm() << sOut.GetBuffer(); + } + else + { + HTMLOutFuncs::Out_AsciiTag( rWrt.Strm(), + pFmtInfo->aToken.Len() ? pFmtInfo->aToken.GetBuffer() + : sHTML_span, + FALSE ); + } + + return rWrt; +} + +static Writer& OutHTML_SvxAdjust( Writer& rWrt, const SfxPoolItem& rHt ) +{ + SwHTMLWriter & rHTMLWrt = (SwHTMLWriter&)rWrt; + if( !rHTMLWrt.bOutOpts || !rHTMLWrt.bTagOn ) + return rWrt; + + SvxAdjustItem& rAdjust = (SvxAdjustItem&)rHt; + const sal_Char* pStr = 0; + switch( rAdjust.GetAdjust() ) + { + case SVX_ADJUST_CENTER: pStr = sHTML_AL_center; break; + case SVX_ADJUST_LEFT: pStr = sHTML_AL_left; break; + case SVX_ADJUST_RIGHT: pStr = sHTML_AL_right; break; + case SVX_ADJUST_BLOCK: pStr = sHTML_AL_justify; break; + } + if( pStr ) + { + ByteString sOut( ' ' ); + ((sOut += sHTML_O_align) += '=') += pStr; + rWrt.Strm() << sOut.GetBuffer(); + } + + return rWrt; +} + +/* + * lege hier die Tabellen fuer die HTML-Funktions-Pointer auf + * die Ausgabe-Funktionen an. + * Es sind lokale Strukturen, die nur innerhalb der HTML-DLL + * bekannt sein muessen. + */ + + +SwAttrFnTab aHTMLAttrFnTab = { +/* RES_CHRATR_CASEMAP */ OutHTML_CSS1Attr, +/* RES_CHRATR_CHARSETCOLOR */ 0, +/* RES_CHRATR_COLOR */ OutHTML_SvxColor, +/* RES_CHRATR_CONTOUR */ 0, +/* RES_CHRATR_CROSSEDOUT */ OutHTML_SwCrossedOut, +/* RES_CHRATR_ESCAPEMENT */ OutHTML_SvxEscapement, +/* RES_CHRATR_FONT */ OutHTML_SvxFont, +/* RES_CHRATR_FONTSIZE */ OutHTML_SvxFontHeight, +/* RES_CHRATR_KERNING */ OutHTML_CSS1Attr, +/* RES_CHRATR_LANGUAGE */ 0, +/* RES_CHRATR_POSTURE */ OutHTML_SwPosture, +/* RES_CHRATR_PROPORTIONALFONTSIZE*/0, +/* RES_CHRATR_SHADOWED */ 0, +/* RES_CHRATR_UNDERLINE */ OutHTML_SwUnderline, +/* RES_CHRATR_WEIGHT */ OutHTML_SwWeight, +/* RES_CHRATR_WORDLINEMODE */ 0, +/* RES_CHRATR_AUTOKERN */ 0, +/* RES_CHRATR_BLINK */ OutHTML_SwBlink, +/* RES_CHRATR_NOHYPHEN */ 0, // Neu: nicht trennen +/* RES_CHRATR_NOLINEBREAK */ 0, // Neu: nicht umbrechen +/* RES_CHRATR_BACKGROUND */ OutHTML_CSS1Attr, // Neu: Zeichenhintergrund +/* RES_CHRATR_CJK_FONT */ 0, +/* RES_CHRATR_CJK_FONTSIZE */ 0, +/* RES_CHRATR_CJK_LANGUAGE */ 0, +/* RES_CHRATR_CJK_POSTURE */ 0, +/* RES_CHRATR_CJK_WEIGHT */ 0, +/* RES_CHRATR_CTL_FONT */ 0, +/* RES_CHRATR_CTL_FONTSIZE */ 0, +/* RES_CHRATR_CTL_LANGUAGE */ 0, +/* RES_CHRATR_CTL_POSTURE */ 0, +/* RES_CHRATR_CTL_WEIGHT */ 0, +/* RES_CHRATR_WRITING_DIRECTION */ 0, +/* RES_CHRATR_DUMMY2 */ 0, +/* RES_CHRATR_DUMMY3 */ 0, +/* RES_CHRATR_DUMMY4 */ 0, +/* RES_CHRATR_DUMMY5 */ 0, +/* RES_CHRATR_DUMMY1 */ 0, // Dummy: + +/* RES_TXTATR_INETFMT */ OutHTML_SwFmtINetFmt, +/* RES_TXTATR_DUMMY4 */ 0, +/* RES_TXTATR_REFMARK*/ 0, +/* RES_TXTATR_TOXMARK */ 0, +/* RES_TXTATR_CHARFMT */ OutHTML_SwTxtCharFmt, +/* RES_TXTATR_TWO_LINES */ 0, +/* RES_TXTATR_CJK_RUBY */ 0, +/* RES_TXTATR_UNKNOWN_CONTAINER */ 0, +/* RES_TXTATR_DUMMY5 */ 0, +/* RES_TXTATR_DUMMY6 */ 0, + +/* RES_TXTATR_FIELD */ OutHTML_SwFmtFld, +/* RES_TXTATR_FLYCNT */ OutHTML_SwFlyCnt, +/* RES_TXTATR_FTN */ OutHTML_SwFmtFtn, +/* RES_TXTATR_SOFTHYPH */ 0, +/* RES_TXTATR_HARDBLANK*/ OutHTML_SwHardBlank, +/* RES_TXTATR_DUMMY1 */ 0, // Dummy: +/* RES_TXTATR_DUMMY2 */ 0, // Dummy: + +/* RES_PARATR_LINESPACING */ 0, +/* RES_PARATR_ADJUST */ OutHTML_SvxAdjust, +/* RES_PARATR_SPLIT */ 0, +/* RES_PARATR_WIDOWS */ 0, +/* RES_PARATR_ORPHANS */ 0, +/* RES_PARATR_TABSTOP */ 0, +/* RES_PARATR_HYPHENZONE*/ 0, +/* RES_PARATR_DROP */ OutHTML_CSS1Attr, +/* RES_PARATR_REGISTER */ 0, // neu: Registerhaltigkeit +/* RES_PARATR_DUMMY1 */ 0, // Dummy: +/* RES_PARATR_DUMMY2 */ 0, // Dummy: + +/* RES_FILL_ORDER */ 0, +/* RES_FRM_SIZE */ 0, +/* RES_PAPER_BIN */ 0, +/* RES_LR_SPACE */ 0, +/* RES_UL_SPACE */ 0, +/* RES_PAGEDESC */ 0, +/* RES_BREAK */ 0, +/* RES_CNTNT */ 0, +/* RES_HEADER */ 0, +/* RES_FOOTER */ 0, +/* RES_PRINT */ 0, +/* RES_OPAQUE */ 0, +/* RES_PROTECT */ 0, +/* RES_SURROUND */ 0, +/* RES_VERT_ORIENT */ 0, +/* RES_HORI_ORIENT */ 0, +/* RES_ANCHOR */ 0, +/* RES_BACKGROUND */ 0, +/* RES_BOX */ 0, +/* RES_SHADOW */ 0, +/* RES_FRMMACRO */ 0, +/* RES_COL */ 0, +/* RES_KEEP */ 0, +/* RES_URL */ 0, +/* RES_EDIT_IN_READONLY */ 0, +/* RES_LAYOUT_SPLIT */ 0, +/* RES_FRMATR_DUMMY1 */ 0, // Dummy: +/* RES_FRMATR_DUMMY2 */ 0, // Dummy: +/* RES_FRMATR_DUMMY3 */ 0, // Dummy: +/* RES_FRMATR_DUMMY4 */ 0, // Dummy: +/* RES_FRMATR_DUMMY5 */ 0, // Dummy: +/* RES_FRMATR_DUMMY6 */ 0, // Dummy: +/* RES_FRMATR_DUMMY7 */ 0, // Dummy: +/* RES_FRMATR_DUMMY8 */ 0, // Dummy: +/* RES_FRMATR_DUMMY9 */ 0, // Dummy: + +/* RES_GRFATR_MIRRORGRF */ 0, +/* RES_GRFATR_CROPGRF */ 0, +/* RES_GRFATR_ROTATION */ 0, +/* RES_GRFATR_LUMINANCE */ 0, +/* RES_GRFATR_CONTRAST */ 0, +/* RES_GRFATR_CHANNELR */ 0, +/* RES_GRFATR_CHANNELG */ 0, +/* RES_GRFATR_CHANNELB */ 0, +/* RES_GRFATR_GAMMA */ 0, +/* RES_GRFATR_INVERT */ 0, +/* RES_GRFATR_TRANSPARENCY */ 0, +/* RES_GRFATR_DRWAMODE */ 0, +/* RES_GRFATR_DUMMY1 */ 0, +/* RES_GRFATR_DUMMY2 */ 0, +/* RES_GRFATR_DUMMY3 */ 0, +/* RES_GRFATR_DUMMY4 */ 0, +/* RES_GRFATR_DUMMY5 */ 0, + +/* RES_BOXATR_FORMAT */ 0, +/* RES_BOXATR_FORMULA */ 0, +/* RES_BOXATR_VALUE */ 0 +}; + + + + +/************************************************************************* + + Source Code Control System - Header + + $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/html/htmlatr.cxx,v 1.1.1.1 2000-09-18 17:14:55 hr Exp $ + + Source Code Control System - Update + + $Log: not supported by cvs2svn $ + Revision 1.246 2000/09/18 16:04:43 willem.vandorp + OpenOffice header added. + + Revision 1.245 2000/08/18 13:03:11 jp + don't export escaped URLs + + Revision 1.244 2000/08/04 10:55:10 jp + Soft-/HardHyphens & HardBlanks changed from attribute to unicode character + + Revision 1.243 2000/07/31 19:24:25 jp + new attributes for CJK/CTL and graphic + + Revision 1.242 2000/06/26 09:51:53 jp + must change: GetAppWindow->GetDefaultDevice + + Revision 1.241 2000/04/28 14:29:10 mib + unicode + + Revision 1.240 2000/04/10 12:20:55 mib + unicode + + Revision 1.239 2000/02/11 14:36:52 hr + #70473# changes for unicode ( patched by automated patchtool ) + + Revision 1.238 1999/12/08 13:50:39 jp + Task #70258#: textattr for XMLAttrContainer + + Revision 1.237 1999/09/21 09:48:43 mib + multiple text encodings + + Revision 1.236 1999/06/22 06:30:08 MIB + #64687#: if a center paragraph contains controls add a div tag + + + Rev 1.235 22 Jun 1999 08:30:08 MIB + #64687#: if a center paragraph contains controls add a div tag + + Rev 1.234 10 Jun 1999 10:33:52 JP + have to change: no AppWin from SfxApp + + Rev 1.233 09 Jun 1999 19:35:54 JP + have to change: no cast from GetpApp to SfxApp/OffApp, SfxShell only subclass of SfxApp + + Rev 1.232 15 Apr 1999 13:25:30 MIB + #64159#: Beim Versenden von Mails auch in PRE umbrechen + + Rev 1.231 23 Mar 1999 15:27:32 MIB + #63049#: Relative Einzuege in Numerierungen + + Rev 1.230 17 Mar 1999 16:45:20 MIB + #63049#: Numerierungen mit relativen Abstaenden + + Rev 1.229 18 Jan 1999 10:14:38 MIB + #60806#: Auch bei generische Fontnamen exportieren + + Rev 1.228 06 Jan 1999 13:54:42 MIB + #60393#: Fuer Nscp4 in Tabellen keine line-spacing und margin-bottom exportieren + + Rev 1.227 06 Jan 1999 10:33:38 MIB + #60311#: In Listen fuer nicht-numerierte Absaetze keine
     ausgeben
    +
    +      Rev 1.226   02 Nov 1998 17:25:58   MIB
    +   #58480#: Fuss-/Endnoten
    +
    +*************************************************************************/
    +
    diff --git a/sw/source/filter/html/htmlbas.cxx b/sw/source/filter/html/htmlbas.cxx
    new file mode 100644
    index 000000000000..371b46911d18
    --- /dev/null
    +++ b/sw/source/filter/html/htmlbas.cxx
    @@ -0,0 +1,689 @@
    +/*************************************************************************
    + *
    + *  $RCSfile: htmlbas.cxx,v $
    + *
    + *  $Revision: 1.1.1.1 $
    + *
    + *  last change: $Author: hr $ $Date: 2000-09-18 17:14:55 $
    + *
    + *  The Contents of this file are made available subject to the terms of
    + *  either of the following licenses
    + *
    + *         - GNU Lesser General Public License Version 2.1
    + *         - Sun Industry Standards Source License Version 1.1
    + *
    + *  Sun Microsystems Inc., October, 2000
    + *
    + *  GNU Lesser General Public License Version 2.1
    + *  =============================================
    + *  Copyright 2000 by Sun Microsystems, Inc.
    + *  901 San Antonio Road, Palo Alto, CA 94303, USA
    + *
    + *  This library is free software; you can redistribute it and/or
    + *  modify it under the terms of the GNU Lesser General Public
    + *  License version 2.1, as published by the Free Software Foundation.
    + *
    + *  This library 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 for more details.
    + *
    + *  You should have received a copy of the GNU Lesser General Public
    + *  License along with this library; if not, write to the Free Software
    + *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
    + *  MA  02111-1307  USA
    + *
    + *
    + *  Sun Industry Standards Source License Version 1.1
    + *  =================================================
    + *  The contents of this file are subject to the Sun Industry Standards
    + *  Source License Version 1.1 (the "License"); You may not use this file
    + *  except in compliance with the License. You may obtain a copy of the
    + *  License at http://www.openoffice.org/license.html.
    + *
    + *  Software provided under this License is provided on an "AS IS" basis,
    + *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
    + *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
    + *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
    + *  See the License for the specific provisions governing your rights and
    + *  obligations concerning the Software.
    + *
    + *  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
    + *
    + *  Copyright: 2000 by Sun Microsystems, Inc.
    + *
    + *  All Rights Reserved.
    + *
    + *  Contributor(s): _______________________________________
    + *
    + *
    + ************************************************************************/
    +
    +#ifdef PRECOMPILED
    +#include "filt_pch.hxx"
    +#endif
    +
    +#pragma hdrstop
    +
    +#include "hintids.hxx"
    +
    +#ifndef _SFXINIMGR_HXX //autogen
    +#include 
    +#endif
    +#define _SVSTDARR_STRINGSSORTDTOR
    +#include 
    +#ifndef _SBXCLASS_HXX //autogen
    +#include 
    +#endif
    +#ifndef _BASMGR_HXX //autogen
    +#include 
    +#endif
    +#ifndef _SB_SBSTAR_HXX //autogen
    +#include 
    +#endif
    +#ifndef _SB_SBMOD_HXX //autogen
    +#include 
    +#endif
    +#ifndef _SFX_EVENTCONF_HXX //autogen
    +#include 
    +#endif
    +#ifndef _SFXAPP_HXX //autogen
    +#include 
    +#endif
    +#ifndef _HTMLOUT_HXX //autogen
    +#include 
    +#endif
    +#ifndef _HTMLTOKN_H
    +#include 
    +#endif
    +#ifndef _HTMLKYWD_HXX
    +#include 
    +#endif
    +
    +
    +
    +#ifndef _FMTORNT_HXX //autogen
    +#include 
    +#endif
    +#ifndef _FMTFLD_HXX //autogen
    +#include 
    +#endif
    +
    +#ifndef _SFX_OBJUNO_HXX //autogen
    +#include 
    +#endif
    +
    +#include "doc.hxx"
    +#include "docsh.hxx"
    +#include "docufld.hxx"
    +#include "wrthtml.hxx"
    +#include "swhtml.hxx"
    +
    +
    +static HTMLOutEvent __FAR_DATA aBodyEventTable[] =
    +{
    +    { sHTML_O_SDonload,     sHTML_O_onload,     SFX_EVENT_OPENDOC   },
    +    { sHTML_O_SDonunload,   sHTML_O_onunload,   SFX_EVENT_PREPARECLOSEDOC   },
    +    { sHTML_O_SDonfocus,    sHTML_O_onfocus,    SFX_EVENT_ACTIVATEDOC   },
    +    { sHTML_O_SDonblur,     sHTML_O_onblur,     SFX_EVENT_DEACTIVATEDOC },
    +    { 0,                    0,                  0                   }
    +};
    +
    +
    +void SwHTMLParser::NewScript()
    +{
    +    ParseScriptOptions( aScriptType, eScriptLang, aScriptURL,
    +                        aBasicLib, aBasicModule );
    +
    +    BOOL bDownload = aScriptURL.Len();
    +    if( bDownload )
    +    {
    +        // Den Inhalt des Script-Tags ignorieren
    +        bIgnoreRawData = TRUE;
    +    }
    +}
    +
    +void SwHTMLParser::EndScript()
    +{
    +    BOOL bInsIntoBasic = FALSE,
    +         bInsSrcIntoFld = FALSE;
    +
    +    switch( eScriptLang )
    +    {
    +    case HTML_SL_STARBASIC:
    +        bInsIntoBasic = TRUE;
    +        break;
    +    default:
    +        bInsSrcIntoFld = TRUE;
    +        break;
    +    }
    +
    +
    +    bIgnoreRawData = FALSE;
    +    aScriptSource.ConvertLineEnd();
    +
    +//  MIB 23.5.97: SGML-Kommentare brauchen nicht mehr entfernt zu werden,
    +//  weil JS das jetzt selber kann.
    +//  RemoveSGMLComment( aScriptSource, TRUE );
    +
    +    // Ausser StarBasic und unbenutzem JavaScript jedes Script oder den
    +    // Modulnamen in einem Feld merken merken
    +    if( bInsSrcIntoFld )
    +    {
    +        SwScriptFieldType *pType =
    +            (SwScriptFieldType*)pDoc->GetSysFldType( RES_SCRIPTFLD );
    +
    +        SwScriptField aFld( pType, aScriptType,
    +                            aScriptURL.Len() ? aScriptURL : aScriptSource,
    +                            aScriptURL.Len()!=0 );
    +        InsertAttr( SwFmtFld( aFld ) );
    +    }
    +
    +    SwDocShell *pDocSh = pDoc->GetDocShell();
    +    if( aScriptSource.Len() && pDocSh &&
    +        bInsIntoBasic && IsNewDoc() )
    +    {
    +    // Fuer JavaScript und StarBasic noch ein Basic-Modul anlegen
    +        // Das Basic entfernt natuerlich weiterhin keine SGML-Kommentare
    +        RemoveSGMLComment( aScriptSource, TRUE );
    +
    +        SFX_APP()->EnterBasicCall();
    +
    +        BasicManager *pBasicMan = pDocSh->GetBasicManager();
    +        ASSERT( pBasicMan, "Wo ist der BasicManager?" );
    +        if( pBasicMan )
    +        {
    +            StarBASIC *pBasic;
    +            if( aBasicLib.Len() )
    +            {
    +                pBasic = pBasicMan->GetLib( aBasicLib );
    +                if( !pBasic )
    +                    pBasic = pBasicMan->CreateLib( aBasicLib );
    +            }
    +            else
    +                pBasic = pBasicMan->GetStdLib();
    +
    +            if( pBasic )
    +            {
    +                if( !aBasicModule.Len() )
    +                {
    +                    BOOL bFound = TRUE;
    +                    while( bFound )
    +                    {
    +                        aBasicModule.AssignAscii( "Modul" );
    +                        aBasicModule += String::CreateFromInt32(
    +                                            (sal_Int32)(++nSBModuleCnt) );
    +                        bFound = (pBasic->FindModule( aBasicModule ) != 0);
    +                    }
    +                }
    +
    +                SbModule *pModule =
    +                    pBasic->MakeModule( aBasicModule, aScriptSource );
    +                if( pModule )
    +                    pModule->Compile();
    +            }
    +        }
    +
    +        SFX_APP()->LeaveBasicCall();
    +    }
    +
    +    aScriptSource.Erase();
    +    aScriptType.Erase();
    +    aScriptURL.Erase();
    +
    +    aBasicLib.Erase();
    +    aBasicModule.Erase();
    +}
    +
    +void SwHTMLParser::AddScriptSource()
    +{
    +    // Hier merken wir und nur ein par Strings
    +    if( aToken.Len() > 2 &&
    +        (HTML_SL_STARBASIC==eScriptLang && aToken.GetChar( 0 ) == '\'') )
    +    {
    +        xub_StrLen nPos = STRING_NOTFOUND;
    +        if( !aBasicLib.Len() )
    +        {
    +            nPos = aToken.SearchAscii( sHTML_SB_library );
    +            if( nPos != STRING_NOTFOUND )
    +            {
    +                aBasicLib =
    +                    aToken.Copy( nPos + sizeof(sHTML_SB_library) - 1 );
    +                aBasicLib.EraseLeadingChars().EraseTrailingChars();
    +            }
    +        }
    +
    +        if( !aBasicModule.Len() && nPos==STRING_NOTFOUND )
    +        {
    +            nPos = aToken.SearchAscii( sHTML_SB_module );
    +            if( nPos != STRING_NOTFOUND )
    +            {
    +                aBasicModule =
    +                    aToken.Copy( nPos + sizeof(sHTML_SB_module) - 1 );
    +                aBasicModule.EraseLeadingChars().EraseTrailingChars();
    +            }
    +        }
    +
    +        if( nPos==STRING_NOTFOUND )
    +        {
    +            if( aScriptSource.Len() )
    +                aScriptSource += '\n';
    +            (aScriptSource += aToken);
    +        }
    +    }
    +    else if( aScriptSource.Len() || aToken.Len() )
    +    {
    +        // Leerzeilen am Anfang werden ignoriert
    +        if( aScriptSource.Len() )
    +        {
    +            aScriptSource += '\n';
    +        }
    +        else
    +        {
    +            // Wir stehen hinter dem CR/LF der Zeile davor
    +            nScriptStartLineNr = GetLineNr() - 1;
    +        }
    +        aScriptSource += aToken;
    +    }
    +}
    +
    +void SwHTMLParser::InsertBasicDocEvent( USHORT nEvent, const String& rName,
    +                                        ScriptType eScrType,
    +                                        const String& rScrType )
    +{
    +    ASSERT( rName.Len(), "InsertBasicDocEvent() ohne Macro gerufen" );
    +    if( !rName.Len() )
    +        return;
    +
    +    SwDocShell *pDocSh = pDoc->GetDocShell();
    +    ASSERT( pDocSh, "Wo ist die DocShell?" );
    +    if( !pDocSh )
    +        return;
    +
    +    String sEvent( rName );
    +    sEvent.ConvertLineEnd();
    +    String sScriptType;
    +    if( EXTENDED_STYPE == eScrType )
    +        sScriptType = rScrType;
    +
    +    SfxEventConfiguration* pECfg = SFX_APP()->GetEventConfig();
    +    pECfg->ConfigureEvent( nEvent, SvxMacro( sEvent, sScriptType, eScrType ),
    +                           pDocSh );
    +}
    +
    +void SwHTMLWriter::OutBasic()
    +{
    +    if( !bCfgStarBasic )
    +        return;
    +
    +    SFX_APP()->EnterBasicCall();
    +
    +    BasicManager *pBasicMan = pDoc->GetDocShell()->GetBasicManager();
    +    ASSERT( pBasicMan, "Wo ist der Basic-Manager?" );
    +    //JP 17.07.96: Bug 29538 - nur das DocumentBasic schreiben
    +    if( !pBasicMan || pBasicMan == SFX_APP()->GetBasicManager() )
    +    {
    +        SFX_APP()->LeaveBasicCall();
    +        return;
    +    }
    +
    +    // und jetzt alle StarBasic-Module und alle unbenutzen JavaSrript-Module
    +    // ausgeben
    +    for( USHORT i=0; iGetLibCount(); i++ )
    +    {
    +        StarBASIC *pBasic = pBasicMan->GetLib( i  );
    +        const String& rLibName = pBasic->GetName();
    +
    +        SbxArray *pModules = pBasic->GetModules();
    +        for( USHORT j=0; jCount(); j++ )
    +        {
    +            const SbModule *pModule = PTR_CAST( SbModule, pModules->Get(j) );
    +            ASSERT( pModule, "Wo ist das Modul?" );
    +
    +            String sLang(
    +                    String::CreateFromAscii( SVX_MACRO_LANGUAGE_STARBASIC ) );
    +            ScriptType eType = STARBASIC;
    +
    +            if( 0==i && 0==j )
    +            {
    +                OutNewLine();
    +                ByteString sOut( '<' );
    +                sOut.Append( sHTML_meta );
    +                sOut.Append( ' ' );
    +                sOut.Append( sHTML_O_httpequiv );
    +                  sOut.Append( "=\"" );
    +                sOut.Append( sHTML_META_content_script_type );
    +                sOut.Append( "\" " );
    +                sOut.Append( sHTML_O_content );
    +                sOut.Append( "=\"text/x-" );
    +                Strm() << sOut.GetBuffer();
    +                // Entities aren't welcome here
    +                ByteString sLang8( sLang, eDestEnc );
    +                Strm() << sLang8.GetBuffer() << "\">";
    +            }
    +
    +            const String& rModName = pModule->GetName();
    +            Strm() << SwHTMLWriter::sNewLine;   // nicht einruecken!
    +            HTMLOutFuncs::OutScript( Strm(), pModule->GetSource(),
    +                                     sLang, eType, aEmptyStr,
    +                                     &rLibName, &rModName,
    +                                     eDestEnc );
    +        }
    +    }
    +
    +    SFX_APP()->LeaveBasicCall();
    +}
    +
    +
    +void SwHTMLWriter::OutBasicBodyEvents()
    +{
    +    SwDocShell *pDocSh = pDoc->GetDocShell();
    +    if( !pDocSh )
    +        return;
    +
    +    SfxEventConfiguration* pECfg = SFX_APP()->GetEventConfig();
    +    ASSERT( pECfg, "Wo ist die Event-Konfiguration?" );
    +    if( !pECfg )
    +        return;
    +
    +    SvxMacroTableDtor *pMacTable = pECfg->GetDocEventTable( pDocSh );
    +    if( pMacTable && pMacTable->Count() )
    +        HTMLOutFuncs::Out_Events( Strm(), *pMacTable, aBodyEventTable,
    +                                  bCfgStarBasic, eDestEnc );
    +}
    +
    +
    +/*************************************************************************
    +
    +      Source Code Control System - Header
    +
    +      $Header: /zpool/svn/migration/cvs_rep_09_09_08/code/sw/source/filter/html/htmlbas.cxx,v 1.1.1.1 2000-09-18 17:14:55 hr Exp $
    +
    +      Source Code Control System - Update
    +
    +      $Log: not supported by cvs2svn $
    +      Revision 1.92  2000/09/18 16:04:43  willem.vandorp
    +      OpenOffice header added.
    +
    +      Revision 1.91  2000/08/24 20:17:16  jp
    +      Bug #78047#: EndScript - no assert
    +
    +      Revision 1.90  2000/05/15 10:07:15  os
    +      Basic removed
    +
    +      Revision 1.89  2000/04/28 14:29:11  mib
    +      unicode
    +
    +      Revision 1.88  2000/04/10 12:20:55  mib
    +      unicode
    +
    +      Revision 1.87  2000/03/30 07:31:01  os
    +      UNO III
    +
    +      Revision 1.86  2000/03/16 16:40:32  kz
    +      remove include sbjsmod.hxx
    +
    +      Revision 1.85  2000/03/03 12:44:32  mib
    +      Removed JavaScript
    +
    +      Revision 1.84  1999/11/19 16:40:19  os
    +      modules renamed
    +
    +      Revision 1.83  1999/09/21 09:48:47  mib
    +      multiple text encodings
    +
    +      Revision 1.82  1999/09/17 12:12:45  mib
    +      support of multiple and non system text encodings
    +
    +      Revision 1.81  1999/04/27 14:47:32  JP
    +      Bug #65314#: neu: IsJavaScriptEnabled
    +
    +
    +      Rev 1.80   27 Apr 1999 16:47:32   JP
    +   Bug #65314#: neu: IsJavaScriptEnabled
    +
    +      Rev 1.79   27 Jan 1999 09:43:32   OS
    +   #56371# TF_ONE51
    +
    +      Rev 1.78   22 Sep 1998 13:46:50   MIB
    +   #56943#: Bei String-Ueberlauf im JavaScript Fehlermeldung ausgeben
    +
    +      Rev 1.77   11 Sep 1998 15:04:50   MIB
    +   generische Events wieder fuer alle Script-Typen erlauben
    +
    +      Rev 1.76   09 Sep 1998 17:58:10   MIB
    +   #55407#: Stat onclosedoc inprepareclodedoc fuer unload-Event benutzen
    +
    +      Rev 1.75   28 Jul 1998 12:07:12   MIB
    +   #52559#: JavaScript-Zeilennummern
    +
    +      Rev 1.74   27 Jul 1998 10:55:28   MIB
    +   #50320#: