diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2000-09-18 16:15:01 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2000-09-18 16:15:01 +0000 |
commit | 7b0b5cdfeed656b279bc32cd929630d5fc25878b (patch) | |
tree | 5b89fb8497d7329d26c43f109bb014c54ffb0e8c /sw/inc/docufld.hxx | |
parent | d791366863cf9659a01b171ce0e727bfe2f28cdf (diff) |
initial import
Diffstat (limited to 'sw/inc/docufld.hxx')
-rw-r--r-- | sw/inc/docufld.hxx | 818 |
1 files changed, 818 insertions, 0 deletions
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 <tools/date.hxx> +#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 |