diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 14:45:43 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 14:45:43 +0000 |
commit | 70de0c38fd177b3c95837118c5fb35e380c87e90 (patch) | |
tree | bb54ac0c5769dcfc89fdaeb151ffac6eb18154de /sw/inc | |
parent | 5aff37cd51879a41365f2ceb0e927bdf57ffddb3 (diff) |
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'sw/inc')
-rw-r--r-- | sw/inc/SwStyleNameMapper.hxx | 12 | ||||
-rw-r--r-- | sw/inc/accmap.hxx | 129 | ||||
-rw-r--r-- | sw/inc/calc.hxx | 7 | ||||
-rw-r--r-- | sw/inc/cmdid.h | 7 | ||||
-rw-r--r-- | sw/inc/crsrsh.hxx | 16 | ||||
-rw-r--r-- | sw/inc/crstate.hxx | 5 | ||||
-rw-r--r-- | sw/inc/dbmgr.hxx | 14 | ||||
-rw-r--r-- | sw/inc/docsh.hxx | 11 | ||||
-rw-r--r-- | sw/inc/dpage.hxx | 8 | ||||
-rw-r--r-- | sw/inc/editsh.hxx | 13 | ||||
-rw-r--r-- | sw/inc/fesh.hxx | 13 | ||||
-rw-r--r-- | sw/inc/helpid.h | 5 | ||||
-rw-r--r-- | sw/inc/ndgrf.hxx | 8 | ||||
-rw-r--r-- | sw/inc/ndtxt.hxx | 6 | ||||
-rw-r--r-- | sw/inc/pagepreviewlayout.hxx | 594 | ||||
-rw-r--r-- | sw/inc/poolfmt.hxx | 10 | ||||
-rw-r--r-- | sw/inc/shellio.hxx | 26 | ||||
-rw-r--r-- | sw/inc/swcrsr.hxx | 13 | ||||
-rw-r--r-- | sw/inc/swmodule.hxx | 13 | ||||
-rw-r--r-- | sw/inc/swunohelper.hxx | 10 | ||||
-rw-r--r-- | sw/inc/tblsel.hxx | 34 | ||||
-rw-r--r-- | sw/inc/unoframe.hxx | 17 | ||||
-rw-r--r-- | sw/inc/unomailmerge.hxx | 233 | ||||
-rw-r--r-- | sw/inc/unomap.hxx | 29 | ||||
-rw-r--r-- | sw/inc/unoobj.hxx | 8 | ||||
-rw-r--r-- | sw/inc/unoprnms.hxx | 21 | ||||
-rw-r--r-- | sw/inc/viewopt.hxx | 8 | ||||
-rw-r--r-- | sw/inc/viewsh.hxx | 247 |
28 files changed, 1162 insertions, 355 deletions
diff --git a/sw/inc/SwStyleNameMapper.hxx b/sw/inc/SwStyleNameMapper.hxx index 0fefac552bd8..2db608ed9fd7 100644 --- a/sw/inc/SwStyleNameMapper.hxx +++ b/sw/inc/SwStyleNameMapper.hxx @@ -2,9 +2,9 @@ * * $RCSfile: SwStyleNameMapper.hxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: mtg $ $Date: 2001-08-16 12:07:45 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:29 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -251,6 +251,14 @@ public: // Get the Pool ID from the programmatic name static sal_uInt16 GetPoolIdFromProgName( const String& rName, SwGetPoolIdFromName ); + // used to convert the 4 special ExtraProg/UINames for + // RES_POOLCOLL_LABEL_DRAWING, RES_POOLCOLL_LABEL_ABB, + // RES_POOLCOLL_LABEL_TABLE, RES_POOLCOLL_LABEL_FRAME + // forth and back. + // Non-matching names remain unchanged. + static const String GetSpecialExtraProgName( const String& rExtraUIName ); + static const String GetSpecialExtraUIName( const String& rExtraProgName ); + static const SvStringsDtor& GetTextUINameArray(); static const SvStringsDtor& GetListsUINameArray(); static const SvStringsDtor& GetExtraUINameArray(); diff --git a/sw/inc/accmap.hxx b/sw/inc/accmap.hxx index 31c031eb68ce..9d15d762b5dd 100644 --- a/sw/inc/accmap.hxx +++ b/sw/inc/accmap.hxx @@ -2,9 +2,9 @@ * * $RCSfile: accmap.hxx,v $ * - * $Revision: 1.21 $ + * $Revision: 1.22 $ * - * last change: $Author: fs $ $Date: 2002-09-23 09:27:14 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:30 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -113,6 +113,10 @@ class SwRect; class ViewShell; class SwFrmOrObj; class SwAccPreviewData; +// OD 14.01.2003 #103492# +#ifndef _PREVWPAGE_HXX +#include <prevwpage.hxx> +#endif // real states for events #define ACC_STATE_EDITABLE 0x01 @@ -176,11 +180,14 @@ public: ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible> GetDocumentView(); + // OD 15.01.2003 #103492# - complete re-factoring of method due to new + // page/print preview functionality. ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible> GetDocumentPreview( - sal_uInt8 nRow, sal_uInt8 nColumn, sal_Int16 nStartPage, - const Size& rPageSize, const Point& rFreePoint, - const Fraction& rScale, sal_uInt16 nSelectedPage ); + const std::vector<PrevwPage*>& _rPrevwPages, + const Fraction& _rScale, + const SwPageFrm* _pSelectedPageFrm, + const Size& _rPrevwWinSize ); ::vos::ORef < SwAccessibleContext > GetContextImpl( const SwFrm *pFrm, @@ -202,7 +209,21 @@ public: ViewShell *GetShell() const { return mpVSh; } inline const SwRect& GetVisArea() const; - inline const Size& GetPreViewPageSize() const; + + /** get size of a dedicated preview page + + OD 15.01.2003 #103492# + complete re-factoring of previous method due to new page/print preview + functionality. + + @author OD + + @param _nPrevwPageNum + input parameter - physical page number of page visible in the page preview + + @return an object of class <Size> + */ + Size GetPreViewPageSize( sal_uInt16 _nPrevwPageNum ) const; void RemoveContext( const SwFrm *pFrm ); void RemoveContext( const SdrObject *pObj ); @@ -229,10 +250,13 @@ public: void InvalidateRelationSet( const SwFrm* pMaster, const SwFrm* pFollow ); // update preview data (and fire events if necessary) - void UpdatePreview( sal_uInt8 nRow, sal_uInt8 nColumn, - sal_Int16 nStartPage, - const Size& rPageSize, const Point& rFreePoint, - const Fraction& rScale, sal_uInt16 nSelectedPage ); + // OD 15.01.2003 #103492# - complete re-factoring of method due to new + // page/print preview functionality. + void UpdatePreview( const std::vector<PrevwPage*>& _rPrevwPages, + const Fraction& _rScale, + const SwPageFrm* _pSelectedPageFrm, + const Size& _rPrevwWinSize ); + void InvalidatePreViewSelection( sal_uInt16 nSelPage ); sal_Bool IsPageSelected( const SwPageFrm *pPageFrm ) const; @@ -258,13 +282,33 @@ public: // additional Core/Pixel conversions for internal use; also works // for preview - Point CoreToPixel (const Point& rPoint) const; Point PixelToCore (const Point& rPoint) const; Rectangle CoreToPixel (const Rectangle& rRect) const; Rectangle PixelToCore (const Rectangle& rRect) const; private: - inline void PreviewAdjust(const Point& rPoint, sal_Bool bFromPreview) const; + /** get mapping mode for LogicToPixel and PixelToLogic conversions + + OD 15.01.2003 #103492# + Replacement method <PreviewAdjust(..)> by new method <GetMapMode>. + Method returns mapping mode of current output device and adjusts it, + if the shell is in page/print preview. + Necessary, because <PreviewAdjust(..)> changes mapping mode at current + output device for mapping logic document positions to page preview window + positions and vice versa and doesn't take care to recover its changes. + + @author OD + + @param _rPoint + input parameter - constant reference to point to determine the mapping + mode adjustments for page/print preview. + + @param _orMapMode + output parameter - reference to the mapping mode, which is determined + by the method + */ + void GetMapMode( const Point& _rPoint, + MapMode& _orMapMode ) const; }; @@ -278,30 +322,47 @@ class SwAccPreviewData SwRect maVisArea; Fraction maScale; - Size maPageSize; - const SwPageFrm *mpStartPage; const SwPageFrm *mpSelPage; - sal_uInt16 mnStartPage; + /** adjust logic page retangle to its visible part + + OD 17.01.2003 #103492# + + @author OD + + @param _iorLogicPgSwRect + input/output parameter - reference to the logic page rectangle, which + has to be adjusted. + + @param _rPrevwPgSwRect + input parameter - constant reference to the corresponding preview page + rectangle; needed to determine the visible part of the logic page rectangle. + + @param _rPrevwWinSize + input paramter - constant reference to the preview window size in TWIP; + needed to determine the visible part of the logic page rectangle + */ + void AdjustLogicPgRectToVisibleArea( SwRect& _iorLogicPgSwRect, + const SwRect& _rPrevwPgSwRect, + const Size& _rPrevwWinSize ); public: SwAccPreviewData(); ~SwAccPreviewData(); - void Update( sal_uInt8 nRow, // # rows in preview - sal_uInt8 nCol, // # columns in preview - sal_uInt16 nStartPage, // start page (0 is before first page) - const Size& rPageSize, // size of an empty page - const Point& rFreePoint, // free space between pages (x,y) - const Fraction& rScale,// scale factor for preview - ViewShell* pShell, - sal_uInt16 nSelPage ); - void InvalidateSelection( sal_uInt16 nSelPage ); + // OD 14.01.2003 #103492# - complete re-factoring of method due to new + // page/print preview functionality. + void Update( const std::vector<PrevwPage*>& _rPrevwPages, + const Fraction& _rScale, + const SwPageFrm* _pSelectedPageFrm, + const Size& _rPrevwWinSize ); + + // OD 14.01.2003 #103492# - complete re-factoring of method due to new + // page/print preview functionality. + void InvalidateSelection( const SwPageFrm* _pSelectedPageFrm ); const SwRect& GetVisArea() const; - Point PreviewToLogic(const Point& rPoint) const; - Point LogicToPreview(const Point& rPoint) const; MapMode GetMapModeForPreview( ) const; @@ -309,15 +370,13 @@ public: * proper position. rPoint identifies the page for which the * MapMode should be adjusted. If bFromPreview is true, rPoint is * a preview coordinate; else it's a document coordinate. */ + // OD 17.01.2003 #103492# - delete unused 3rd parameter. void AdjustMapMode( MapMode& rMapMode, - const Point& rPoint, - sal_Bool bFromPreview ) const; + const Point& rPoint ) const; - void AdjustMapMode( MapMode& rMapMode ) const; + inline const SwPageFrm *GetSelPage() const { return mpSelPage; } - const SwPageFrm *GetSelPage() const { return mpSelPage; } void DisposePage(const SwPageFrm *pPageFrm ); - const Size& GetPageSize() const { return maPageSize; } }; @@ -328,12 +387,4 @@ inline const SwRect& SwAccessibleMap::GetVisArea() const "preview without preview data?" ); return mpVSh->IsPreView() ? mpPreview->GetVisArea() : mpVSh->VisArea(); } - -inline const Size& SwAccessibleMap::GetPreViewPageSize() const -{ - DBG_ASSERT( mpPreview != NULL, - "preview without preview data?" ); - return mpPreview->GetPageSize(); -} - #endif diff --git a/sw/inc/calc.hxx b/sw/inc/calc.hxx index f6834e79b5b7..5191b3b4ff3f 100644 --- a/sw/inc/calc.hxx +++ b/sw/inc/calc.hxx @@ -2,9 +2,9 @@ * * $RCSfile: calc.hxx,v $ * - * $Revision: 1.4 $ + * $Revision: 1.5 $ * - * last change: $Author: jp $ $Date: 2001-02-13 20:31:57 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:30 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -159,9 +159,10 @@ public: SwSbxValue( const SwSbxValue& rVal ) : SbxValue( rVal ) {} virtual ~SwSbxValue(); + // Strings sonderbehandeln BOOL GetBool() const; - // Strings sonderbehandeln + // Strings sonderbehandeln BOOLs sonderbehandeln double GetDouble() const; SwSbxValue& MakeDouble(); }; diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h index 5c1038762718..7eebb32d30fd 100644 --- a/sw/inc/cmdid.h +++ b/sw/inc/cmdid.h @@ -2,9 +2,9 @@ * * $RCSfile: cmdid.h,v $ * - * $Revision: 1.43 $ + * $Revision: 1.44 $ * - * last change: $Author: os $ $Date: 2002-12-06 13:57:25 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -378,7 +378,7 @@ Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr #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_FIELD_DATA_ONLY (FN_INSERT + 19) /* field dialog for mail merge*/ #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 */ @@ -886,6 +886,7 @@ Achtung: Ab sofort sind in diesem File keine C++-Kommentare (//) mehr #define FN_UNO_HEADER_EAT_SPACING (FN_EXTRA2 + 92) #define FN_UNO_FOOTER_EAT_SPACING (FN_EXTRA2 + 93) +#define FN_UNO_CHARFMT_SEQUENCE (FN_EXTRA2 + 94) /*-------------------------------------------------------------------- Bereich: Hilfe diff --git a/sw/inc/crsrsh.hxx b/sw/inc/crsrsh.hxx index 4f072622a5a1..dfb84e9022d5 100644 --- a/sw/inc/crsrsh.hxx +++ b/sw/inc/crsrsh.hxx @@ -2,9 +2,9 @@ * * $RCSfile: crsrsh.hxx,v $ * - * $Revision: 1.14 $ + * $Revision: 1.15 $ * - * last change: $Author: hbrinkm $ $Date: 2002-12-03 14:17:21 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:31 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -292,6 +292,8 @@ private: BOOL bBasicHideCrsr : 1; // TRUE -> HideCrsr vom Basic BOOL bSetCrsrInReadOnly : 1;// TRUE -> Cursor darf in ReadOnly-Bereiche BOOL bOverwriteCrsr : 1; // TRUE -> show Overwrite Crsr + // OD 11.02.2003 #100556# - flag to allow/avoid execution of marcos (default: true) + bool mbMacroExecAllowed : 1; void UpdateCrsr( USHORT eFlags =SwCrsrShell::SCROLLWIN|SwCrsrShell::CHKRANGE, @@ -835,6 +837,16 @@ public: // remove all invalid cursors void ClearUpCrsrs(); + + // OD 11.02.2003 #100556# - set/get flag to allow/avoid execution of macros + inline void SetMacroExecAllowed( const bool _bMacroExecAllowed ) + { + mbMacroExecAllowed = _bMacroExecAllowed; + } + inline bool IsMacroExecAllowed() + { + return mbMacroExecAllowed; + } }; diff --git a/sw/inc/crstate.hxx b/sw/inc/crstate.hxx index bda9db05192c..d821ecd5c083 100644 --- a/sw/inc/crstate.hxx +++ b/sw/inc/crstate.hxx @@ -2,9 +2,9 @@ * * $RCSfile: crstate.hxx,v $ * - * $Revision: 1.9 $ + * $Revision: 1.10 $ * - * last change: $Author: fme $ $Date: 2002-12-02 10:20:05 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:32 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -107,6 +107,7 @@ struct Sw2LinesPos { SwRect aLine; // Position and size of the line SwRect aPortion; // Position and size of the multi portion + SwRect aPortion2; // needed for nested multi portions BYTE nMultiType; // Multiportion type }; diff --git a/sw/inc/dbmgr.hxx b/sw/inc/dbmgr.hxx index 162bccc7ebe2..4e7feceb0d35 100644 --- a/sw/inc/dbmgr.hxx +++ b/sw/inc/dbmgr.hxx @@ -2,9 +2,9 @@ * * $RCSfile: dbmgr.hxx,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: os $ $Date: 2002-12-09 13:58:20 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:32 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -129,6 +129,7 @@ class Button; class SvNumberFormatter; class SwMailMergeDlg; class SwDbtoolsClient; +class SwXMailMerge; // ----------------------------------------------------------------------- @@ -207,8 +208,10 @@ friend class SwConnectionDisposedListener_Impl; BOOL bCancel : 1; // Serienbrief-Save abgebrochen BOOL bInMerge : 1; //merge process active + BOOL bMergeSilent : 1; // suppress display of dialogs/boxes (used when called over API) SwDSParamArr aDataSourceParams; SwNewDBMgr_Impl* pImpl; + const SwXMailMerge* pMergeEvtSrc; // != 0 if mail merge events are to be send SwDSParam* pMergeData; SwMailMergeDlg* pMergeDialog; @@ -239,6 +242,13 @@ public: inline USHORT GetMergeType() const { return nMergeType; } inline void SetMergeType( USHORT nTyp ) { nMergeType = nTyp; } + // MailMergeEvent source + const SwXMailMerge * GetMailMergeEvtSrc() const { return pMergeEvtSrc; } + void SetMailMergeEvtSrc( const SwXMailMerge *pSrc ) { pMergeEvtSrc = pSrc; } + + inline BOOL IsMergeSilent() const { return bMergeSilent != 0; } + inline void SetMergeSilent( BOOL bVal ) { bMergeSilent = bVal; } + // Mischen von Datensaetzen in Felder BOOL MergeNew(USHORT nOpt, SwWrtShell& rSh, const ::svx::ODataAccessDescriptor& _rDescriptor); diff --git a/sw/inc/docsh.hxx b/sw/inc/docsh.hxx index 40cbbdeeb0ae..43c7063fb063 100644 --- a/sw/inc/docsh.hxx +++ b/sw/inc/docsh.hxx @@ -2,9 +2,9 @@ * * $RCSfile: docsh.hxx,v $ * - * $Revision: 1.18 $ + * $Revision: 1.19 $ * - * last change: $Author: tl $ $Date: 2002-11-11 13:43:04 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:34 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -81,6 +81,7 @@ #endif class SwDoc; +class Sw3Io; class SfxDocumentInfoDialog; class SfxStyleSheetBasePool; class FontList; @@ -100,6 +101,7 @@ class SwDocShell: public SfxObjectShell, public SfxInPlaceObject, public SfxListener { SwDoc* pDoc; // Document + Sw3Io* pIo; // Reader / Writer SfxStyleSheetBasePool* pBasePool; // Durchreiche fuer Formate FontList* pFontList; // aktuelle FontListe @@ -130,6 +132,7 @@ class SwDocShell: public SfxObjectShell, public SfxInPlaceObject, 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 ); @@ -253,6 +256,10 @@ public: 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, const String& rMimeType, ::com::sun::star::uno::Any & rValue ); virtual long DdeSetData( const String& rItem, const String& rMimeType, diff --git a/sw/inc/dpage.hxx b/sw/inc/dpage.hxx index c5bea91f1b2e..250b61e2e863 100644 --- a/sw/inc/dpage.hxx +++ b/sw/inc/dpage.hxx @@ -2,9 +2,9 @@ * * $RCSfile: dpage.hxx,v $ * - * $Revision: 1.2 $ + * $Revision: 1.3 $ * - * last change: $Author: os $ $Date: 2000-11-27 07:48:38 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:34 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -82,7 +82,9 @@ public: SwDPage(SwDrawDocument& rNewModel, BOOL bMasterPage=FALSE); ~SwDPage(); - virtual Point GetOffset() const; + // #i3694# + // This GetOffset() method is not needed anymore, it even leads to errors. + // virtual Point GetOffset() const; virtual SdrObject* ReplaceObject( SdrObject* pNewObj, ULONG nObjNum ); virtual void RequestBasic(); diff --git a/sw/inc/editsh.hxx b/sw/inc/editsh.hxx index 358998cde73f..f30567709d1b 100644 --- a/sw/inc/editsh.hxx +++ b/sw/inc/editsh.hxx @@ -2,9 +2,9 @@ * * $RCSfile: editsh.hxx,v $ * - * $Revision: 1.26 $ + * $Revision: 1.27 $ * - * last change: $Author: os $ $Date: 2002-11-29 12:00:22 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:35 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -844,8 +844,13 @@ public: // if more than one in the selection return the count USHORT GetFullSelectedSectionCount() const; - BOOL AppendNodeInSection(); - int CanInsertNodeAtEndOfSection() const; + // special insert: Insert a new text node just before or after a section or + // table, if the cursor is positioned at the start/end of said + // section/table. The purpose of the method is to allow users to inert text + // at certain 'impossible' position, e.g. before a table at the document + // start or between to sections. + bool DoSpecialInsert(); + bool CanSpecialInsert() const; // Optimierung UI void SetNewDoc(BOOL bNew = TRUE); diff --git a/sw/inc/fesh.hxx b/sw/inc/fesh.hxx index 33e40b15e6a3..bc586edfae82 100644 --- a/sw/inc/fesh.hxx +++ b/sw/inc/fesh.hxx @@ -2,9 +2,9 @@ * * $RCSfile: fesh.hxx,v $ * - * $Revision: 1.26 $ + * $Revision: 1.27 $ * - * last change: $Author: od $ $Date: 2002-12-10 14:07:37 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:36 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -275,6 +275,12 @@ public: int IsObjSelectable( const Point& rPt ); int IsInsideSelectedObj( const Point& rPt ); + // #107513# + // Test if there is a draw object at that position and if it should be selected. + // The 'should' is aimed at Writer text fly frames which may be in front of + // the draw object. + sal_Bool ShouldObjectBeSelected(const Point& rPt); + sal_Bool MoveAnchor( USHORT nDir ); //Returnwerte siehe oben FrmType. @@ -672,6 +678,7 @@ public: USHORT GetCurMouseTabColNum( const Point &rPt ) const; USHORT GetCurOutColNum( SwGetCurColNumPara* pPara = 0 ) const; // aktuelle aeussere Spalte BOOL IsTableRightToLeft()const; + BOOL IsLastCellInRow() const; BOOL IsMouseTableRightToLeft(const Point &rPt) const; // Die Breite des aktuellen Bereichs fuer Spaltendialog long GetSectionWidth( SwFmt& rFmt ) const; @@ -711,6 +718,8 @@ public: page, the selected drawing object is on, is right-to-left. */ const bool IsShapeDefaultHoriTextDirR2L() const; + + void ParkCursorInTab(); }; #endif diff --git a/sw/inc/helpid.h b/sw/inc/helpid.h index aeac03c46f10..d70237f9fb3d 100644 --- a/sw/inc/helpid.h +++ b/sw/inc/helpid.h @@ -2,9 +2,9 @@ * * $RCSfile: helpid.h,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: os $ $Date: 2002-11-29 12:00:22 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:37 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -910,6 +910,7 @@ #define HID_PRINT_AS_MERGE (HID_BASE + 2181 ) #define HID_MERGE_SOURCE_UNAVAILABLE (HID_BASE + 2182 ) #define HID_DATA_SOURCES_UNAVAILABLE (HID_BASE + 2183 ) +#define HID_MODULE_TOOLBOX (HID_BASE + 2184 ) diff --git a/sw/inc/ndgrf.hxx b/sw/inc/ndgrf.hxx index 291c7e74495f..3f6f46b7cdd0 100644 --- a/sw/inc/ndgrf.hxx +++ b/sw/inc/ndgrf.hxx @@ -2,9 +2,9 @@ * * $RCSfile: ndgrf.hxx,v $ * - * $Revision: 1.9 $ + * $Revision: 1.10 $ * - * last change: $Author: hr $ $Date: 2002-08-23 14:04:27 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:38 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -98,6 +98,7 @@ class SwGrfNode: public SwNoTxtNode BOOL bInSwapIn :1; BOOL bGrafikArrived :1; BOOL bChgTwipSize :1; + BOOL bChgTwipSizeFromPixel :1; BOOL bLoadLowResGrf :1; BOOL bFrameInPaint :1; //Um Start-/EndActions im Paint (ueber //SwapIn zu verhindern. @@ -144,7 +145,8 @@ public: inline BOOL IsAnimated() const { return aGrfObj.IsAnimated(); } inline BOOL IsChgTwipSize() const { return bChgTwipSize; } - inline void SetChgTwipSize( BOOL b ) { bChgTwipSize = b; } + inline BOOL IsChgTwipSizeFromPixel() const { return bChgTwipSizeFromPixel; } + inline void SetChgTwipSize( BOOL b, BOOL bFromPx=FALSE ) { bChgTwipSize = b; bChgTwipSizeFromPixel = bFromPx; } inline BOOL IsGrafikArrived() const { return bGrafikArrived; } inline void SetGrafikArrived( BOOL b ) { bGrafikArrived = b; } diff --git a/sw/inc/ndtxt.hxx b/sw/inc/ndtxt.hxx index a77dbd5c8ec8..0475d0d864e4 100644 --- a/sw/inc/ndtxt.hxx +++ b/sw/inc/ndtxt.hxx @@ -2,9 +2,9 @@ * * $RCSfile: ndtxt.hxx,v $ * - * $Revision: 1.7 $ + * $Revision: 1.8 $ * - * last change: $Author: hr $ $Date: 2002-08-23 14:20:57 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:39 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -305,7 +305,7 @@ public: 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; + BOOL bWithNum = FALSE, BOOL bWithFtn = TRUE ) const; XubString GetRedlineTxt( xub_StrLen nIdx = 0, xub_StrLen nLen = STRING_LEN, BOOL bExpandFlds = FALSE, diff --git a/sw/inc/pagepreviewlayout.hxx b/sw/inc/pagepreviewlayout.hxx new file mode 100644 index 000000000000..eedd3b06e4d8 --- /dev/null +++ b/sw/inc/pagepreviewlayout.hxx @@ -0,0 +1,594 @@ +#ifndef _PAGEPREVIEWLAYOUT_HXX +#define _PAGEPREVIEWLAYOUT_HXX + +// template class <std::vector> +#include <vector> +// datatypes sal_xyz +#ifndef _SAL_TYPES_H_ +#include <sal/types.h> +#endif +// classes <Point>, <Size> and <Rectangle> +#ifndef _GEN_HXX +#include <tools/gen.hxx> +#endif +// datatype <SwTwips> +#ifndef _SWTYPES_HXX +#include <swtypes.hxx> +#endif + +class ViewShell; +class OutputDevice; +class SwRootFrm; +class SwPageFrm; +class Fraction; +struct PrevwPage; + +// ============================================================================= +/** page preview functionality in the writer + + OD 11.12.2002 #103492# - class <SwPagePreviewLayout> + + @author OD +*/ +class SwPagePreviewLayout +{ +private: + friend class ViewShell; + + const SwTwips mnXFree; + const SwTwips mnYFree; + + ViewShell& mrParentViewShell; + const SwRootFrm& mrLayoutRootFrm; + + bool mbLayoutInfoValid; + bool mbLayoutSizesValid; + bool mbPaintInfoValid; + + Size maWinSize; + sal_uInt16 mnCols; + sal_uInt16 mnRows; + sal_uInt16 mnPages; + // OD 19.02.2003 #107369# - new flag for leaving blank left-top-corner + bool mbLeaveLeftTopBlank; + + Size maMaxPageSize; + Rectangle maPreviewDocRect; + SwTwips mnColWidth; + SwTwips mnRowHeight; + SwTwips mnPrevwLayoutWidth; + SwTwips mnPrevwLayoutHeight; + bool mbDoesLayoutColsFitIntoWindow; + bool mbDoesLayoutRowsFitIntoWindow; + + sal_uInt16 mnPaintPhyStartPageNum; + sal_uInt16 mnPaintStartCol; + sal_uInt16 mnPaintStartRow; + bool mbNoPageVisible; + Point maPaintStartPageOffset; + Point maPaintPreviewDocOffset; + Point maAdditionalPaintOffset; + Rectangle maPaintedPrevwDocRect; + sal_uInt16 mnSelectedPageNum; + const SwPageFrm* mpSelectedPageFrm; + + std::vector<PrevwPage*> maPrevwPages; + + /** clear internal data about current page preview + + OD 11.12.2002 #103492# + + @author OD + */ + void _Clear(); + + /** helper method to clear preview page layout sizes + + OD 18.12.2002 #103492# + + @author OD + */ + void _ClearPrevwLayoutSizes(); + + /** helper method to clear data in preview page vectors + + OD 13.12.2002 #103492# + + @author OD + */ + void _ClearPrevwPageData(); + + /** calculate page preview layout sizes + + OD 18.12.2002 #103492# + + @author OD + */ + void _CalcPrevwLayoutSizes(); + + /** apply new zoom at given view shell + + OD 11.12.2002 #103492# + + @author OD + + @param _aNewZoom + input parameter - new zoom percentage + */ + void _ApplyNewZoomAtViewShell( sal_uInt8 _aNewZoom ); + + /** calculate additional paint offset + + OD 12.12.2002 #103492# + helper method called by <Prepare> in order to calculate an additional + paint offset to center output in given window size. + The booleans <mbDoesLayoutRowsFitIntoWindow> and <mbDoesLayoutColsFitIntoWindow> + are also determined. + preconditions: + (1) preview layout is given (number of rows and columns). + (2) window size is given. + (3) height of row and width of column are calculated. + (4) paint offset of start page is calculated. + + @author OD + */ + void _CalcAdditionalPaintOffset(); + + /** calculate painted preview document rectangle + + OD 12.12.2002 #103492# + helper method called by <Prepare> in order to calculate the rectangle, + which will be painted for the document arranged by the given preview + layout. + preconditions: + (1) paint offset of document preview is calculated. + (2) size of document preview is calculated. + (3) additional paint offset is calculated - see <_CalcAdditionalPaintOffset>. + + @author OD + */ + void _CalcDocPrevwPaintRect(); + + /** determines preview data for a given page and a given preview offset + + OD 13.12.2002 #103492# + + @author OD + + @param _rPage + input parameter - constant reference to page frame, for which the + preview data will be calculated. + + @param _rPrevwOffset + input parameter - constant reference to the offset the given page has + in the current preview window. + Note: Offset can be negative. + + @param _opPrevwPage + output parameter - calculated preview data. + + @return boolean, indicating, if calculation was successful. + */ + bool _CalcPreviewDataForPage( const SwPageFrm& _rPage, + const Point& _rPrevwOffset, + PrevwPage* _opPrevwPage ); + + /** calculate preview pages + + OD 12.12.2002 #103492# + helper method called by <Prepare> in order to determine which pages + will be visible in the current preview and calculate the data needed + to paint these pages. Also the accessible pages with its needed data + are determined. + + @author OD + */ + void _CalcPreviewPages(); + + /** get preview page by physical page number + + OD 17.12.2002 #103492# + + @author OD + + @param _nPageNum + input parameter - physical page number of page, for which the preview + page will be returned. + + @return pointer to preview page of current preview pages. If page doesn't + belongs to current preview pages, <0> is returned. + */ + const PrevwPage* _GetPrevwPageByPageNum( const sal_uInt16 _nPageNum ) const; + + /** paint selection mark at page + + OD 17.12.2002 #103492# + + @author OD + */ + const void _PaintSelectMarkAtPage( const PrevwPage* _aSelectedPrevwPage ) const; + +public: + /** constructor of <SwPagePreviewLayout> + + OD 11.12.2002 #103492# + + @author OD + + @param _rParentViewShell + input parameter - reference to the view shell the page preview + layout belongs to. Reference will be hold as member <mrParentViewShell>. + Adjustments/Changes at this view shell: + (1) Adjustment of the mapping mode at the output device. + (2) Change of the zoom at the view options. + (3) Preparations for paint of the page preview. + + @param _rLayoutRootFrm + input parameter - constant reference to the root frame of the layout. + Reference will be hold as member <mrLayoutRootFrm> in order to get + access to the page frames. + */ + SwPagePreviewLayout( ViewShell& _rParentViewShell, + const SwRootFrm& _rLayoutRootFrm ); + + /** destructor of <SwPagePreviewLayout> + + OD 17.12.2002 #103492# + + @author + */ + inline ~SwPagePreviewLayout() + { + _ClearPrevwPageData(); + } + + /** init page preview layout + + OD 11.12.2002 #103492# + initialize the page preview settings for a given layout. + side effects: + (1) If parameter <_bCalcScale> is true, mapping mode with calculated + scaling is set at the output device and the zoom at the view options of + the given view shell is set with the calculated scaling. + + @author OD + + @param _nCols + input parameter - initial number of page columns in the preview. + + @param _nRows + input parameter - initial number of page rows in the preview. + + @param _rPxWinSize + input parameter - window size in which the preview will be displayed and + for which the scaling will be calculated. + + @param _orMaxPageSize + output parameter - maximal size in width and height of all pages + + @param _orPreviewDocSize + output parameter - size of the document in the proposed preview layout + included the spacing between the pages. + + @param _bCalcScale + input parameter - control, if method should calculate the needed + scaling for the proposed preview layout for the given window size + and sets the scaling at the output device and the view options. + + @return boolean, indicating, if preview layout is successful initialized. + */ + bool Init( const sal_uInt16 _nCols, + const sal_uInt16 _nRows, + const Size& _rPxWinSize, + const bool _bCalcScale + ); + + /** method to adjust page preview layout to document changes + + OD 18.12.2002 #103492# + + @author OD + + @return boolean, indicating, if preview layout is successful initialized. + */ + bool ReInit(); + + /** prepare paint of page preview + + OD 12.12.2002 #103492# + With the valid preview layout settings - calculated and set by method + <Init(..)> - the paint of a specific part of the virtual preview + document is prepared. The corresponding part is given by either + a start page (parameter <_nProposedStartPageNum>) or a absolute position + (parameter <_aProposedStartPoint>). + The accessibility preview will also be updated via a corresponding + method call. + + @author OD + + @param _nProposedStartPageNum [0..<number of document pages>] + input parameter - proposed number of page, which should be painted in + the left-top-corner in the current output device. input parameter + <_bStartWithPageAtFirstCol> influences, if proposed page is actual + painted in the left-top-corner. + + @param _nProposedStartPos [(0,0)..<PreviewDocumentSize>] + input parameter - proposed absolute position in the virtual preview + document, which should be painted in the left-top-corner in the current + output device. + + @param _rPxWinSize + input parameter - pixel size of window the preview will be painted in. + + @param _onStartPageNum + output parameter - physical number of page, which will be painted in the + left-top-corner in the current output device. + + @param _onStartPageVirtNum + output parameter - virtual number of page, which will be painted in the + left-top-corner in the current output device. + + @param _orDocPreviewPaintRect + output parameter - rectangle of preview document, which will be painted. + + @param _bStartWithPageAtFirstCol + input parameter with default value "true" - controls, if start page + is set to page in first column the proposed start page is located. + + @return boolean, indicating, if prepare of preview paint was successful. + */ + bool Prepare( const sal_uInt16 _nProposedStartPageNum, + const Point _aProposedStartPos, + const Size& _rPxWinSize, + sal_uInt16& _onStartPageNum, + sal_uInt16& _onStartPageVirtNum, + Rectangle& _orDocPreviewPaintRect, + const bool _bStartWithPageAtFirstCol = true + ); + + /** get selected page number + + OD 13.12.2002 #103492# + + @author OD + */ + inline sal_uInt16 SelectedPage() + { + return mnSelectedPageNum; + } + + /** set selected page number + + OD 14.01.2003 #103492# + + @author OD + */ + inline void SetSelectedPage( sal_uInt16 _nSelectedPageNum ) + { + mnSelectedPageNum = _nSelectedPageNum; + } + + /** paint prepared preview + + OD 12.12.2002 #103492# + + @author OD + + @param _aOutRect + input parameter - Twip rectangle of window, which should be painted. + + @return boolean, indicating, if paint of preview was performed + */ + bool Paint( const Rectangle _aOutRect ) const; + + /** repaint pages on page preview + + OD 18.12.2002 #103492# + method to invalidate visible pages due to changes in a different + view shell. + + @author OD + */ + void Repaint( const Rectangle _aInvalidCoreRect ) const; + + /** paint to mark new selected page + + OD 17.12.2002 #103492# + Perform paint for current selected page in order to unmark it. + Set new selected page and perform paint to mark this page. + + @author OD + + @param _nNewSelectedPage + input parameter - physical number of page, which will be marked as selected. + */ + void MarkNewSelectedPage( const sal_uInt16 _nSelectedPage ); + + /** calculate start position for new scale + + OD 12.12.2002 #103492# + calculate new start position for a new scale. Calculation bases on the + current visible part of the document arranged in the given preview layout. + preconditions: + (1) new scaling is already set at the given output device. + + @author OD + + @return Point, start position for new scale + */ + Point GetPreviewStartPosForNewScale( const Fraction& _aNewScale, + const Fraction& _aOldScale, + const Size& _aNewWinSize ) const; + + /** determines, if page with given page number is visible in preview + + OD 12.12.2002 #103492# + + @author OD + + @param _nPageNum + input parameter - physical number of page, for which it will be + determined, if it is visible. + + @return boolean, indicating, if page with given page number is visible + in preview. + */ + bool IsPageVisible( const sal_uInt16 _nPageNum ) const; + + /** calculate data to bring new selected page into view. + + OD 12.12.2002 #103492# + + @author OD + + @param _nHoriMove + input parameter - positive/negative number of columns the current + selected page have to be moved. + + @param _nVertMove + input parameter - positive/negative number of rows the current + selected page have to be moved. + + @param _orNewSelectedPage + output parameter - number of new selected page + + @param _orNewStartPage + output parameter - number of new start page + + @param _orNewStartPos + output parameter - new start position in document preview + + @return boolean - indicating, that move was sucessful. + */ + bool CalcStartValuesForSelectedPageMove( const sal_Int16 _nHoriMove, + const sal_Int16 _nVertMove, + sal_uInt16& _orNewSelectedPage, + sal_uInt16& _orNewStartPage, + Point& _orNewStartPos ) const; + + /** checks, if given position is inside a shown document page + + OD 17.12.2002 #103492# + + @author OD + + @param _aPrevwPos + input parameter - position inside the visible preview window. + + @param _orDocPos + output parameter - corresponding position in the document, if given + preview position is inside a shown document page, not an empty page. + If not, it's value is <Point( 0, 0 )>. + + @param _obPosInEmptyPage + output parameter - indicates, that given preview position lays inside + an shown empty page. + + @param _onPageNum + output parameter - corresponding physical number of page, if given + preview position is inside a shown document page, considers also empty + pages. If not, it's value is <0>. + + @return boolean - indicating, that given preview position lays inside + a shown document preview page, not an empty page. + */ + bool IsPrevwPosInDocPrevwPage( const Point _aPrevwPos, + Point& _orDocPos, + bool& _obPosInEmptyPage, + sal_uInt16& _onPageNum ) const; + + inline bool DoesPreviewLayoutRowsFitIntoWindow() const + { + return mbDoesLayoutRowsFitIntoWindow; + } + + inline bool DoesPreviewLayoutColsFitIntoWindow() const + { + return mbDoesLayoutColsFitIntoWindow; + } + + inline bool PreviewLayoutValid() const + { + return mbLayoutInfoValid && mbLayoutSizesValid && mbPaintInfoValid; + } + + /** determine preview window page scroll amount + + OD 17.12.2002 #103492# + + @author OD + + @param _nWinPagesToScroll + input parameter - number of preview window pages the scroll amount has + to be calculated for. Negative values for preview window page up + scrolling, positive values for preview window page down scrolling. + + @return scroll amount in SwTwips + */ + SwTwips GetWinPagesScrollAmount( const sal_Int16 _nWinPagesToScroll ) const; + + /** determine window preview page the page with the given number is on. + + OD 17.01.2003 #103492# + + @author OD + + @param _nPageNum + input parameter - physical page number of page, for which the preview + window page number has to be calculated. + + @return number of preview window page the page with the given physical + page number is on + */ + sal_uInt16 GetWinPageNumOfPage( sal_uInt16 _nPageNum ) const; + + /** determine row the page with the given number is in + + OD 17.01.2003 #103492# + + @author OD + + @param _nPageNum + input parameter - physical page number of page, for which the row in + preview layout has to be calculated. + + @return number of row the page with the given physical page number is in + */ + sal_uInt16 GetRowOfPage( sal_uInt16 _nPageNum ) const; + + /** determine column the page with the given number is in + + OD 17.01.2003 #103492# + + @author OD + + @param _nPageNum + input parameter - physical page number of page, for which the column in + preview layout has to be calculated. + + @return number of column the page with the given physical page number is in + */ + sal_uInt16 GetColOfPage( sal_uInt16 _nPageNum ) const; + + // OD 18.12.2002 #103492# + Size GetMaxPageSize() const; + + // OD 18.12.2002 #103492# + Size GetPrevwDocSize() const; + + /** get size of a preview page by its physical page number + + OD 15.01.2003 #103492# + + @author OD + + @param _nPageNum + input parameter - pysical page number of preview page, for which the + page size has to be returned. + + @return an object of class <Size> + */ + Size GetPrevwPageSizeByPageNum( sal_uInt16 _nPageNum ) const; +}; + +#endif // _PAGEPREVIEWLAYOUT_HXX diff --git a/sw/inc/poolfmt.hxx b/sw/inc/poolfmt.hxx index 9d53c0850027..313dc420f8bd 100644 --- a/sw/inc/poolfmt.hxx +++ b/sw/inc/poolfmt.hxx @@ -2,9 +2,9 @@ * * $RCSfile: poolfmt.hxx,v $ * - * $Revision: 1.4 $ + * $Revision: 1.5 $ * - * last change: $Author: os $ $Date: 2002-06-05 12:24:54 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:40 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -67,6 +67,10 @@ #include <tools/solar.h> #endif +#ifndef _SVX_FRMDIR_HXX +#include <svx/frmdir.hxx> +#endif + // POOLCOLL-IDs: // +----+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+ // !User! Bereich ! 0 ! Offset ! @@ -460,6 +464,8 @@ RES_POOLCOLL_HTML_END // sonst -> den Parent USHORT GetPoolParent( USHORT nId ); +SvxFrameDirection GetDefaultFrameDirection(ULONG nLanguage); + inline BOOL IsConditionalByPoolId(USHORT nId) { return RES_POOLCOLL_TEXT == nId; diff --git a/sw/inc/shellio.hxx b/sw/inc/shellio.hxx index 976680d674df..079709840aad 100644 --- a/sw/inc/shellio.hxx +++ b/sw/inc/shellio.hxx @@ -2,9 +2,9 @@ * * $RCSfile: shellio.hxx,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: dvo $ $Date: 2002-12-02 11:51:28 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:41 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -360,9 +360,14 @@ public: class Sw3Reader : public StgReader { + Sw3Io* pIO; virtual ULONG Read( SwDoc &,SwPaM &,const String &); public: - Sw3Reader() {} + Sw3Reader() : pIO( 0 ) {} + + Sw3Io* GetSw3Io() { return pIO; } + const Sw3Io* GetSw3Io() const { return pIO; } + void SetSw3Io( Sw3Io* pIo ) { pIO = pIo; } // read the sections of the document, which is equal to the medium. // returns the count of it @@ -594,10 +599,19 @@ public: class Sw3Writer : public StgWriter { + Sw3Io* pIO; + BOOL bSaveAs : 1; + virtual ULONG WriteStorage(); public: - Sw3Writer() {} + 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; }; @@ -672,11 +686,11 @@ public: static FASTBOOL IsValidStgFilter( SvStorage& , const SfxFilter& ); - static bool IsDetectableText(const sal_Char* pBuf, ULONG &rLen, + static bool IsDetectableText(const sal_Char* pBuf, ULONG &rLen, CharSet *pCharSet=0, bool *pSwap=0, LineEnd *pLineEnd=0); + static bool IsDetectableW4W(const String& rFileName); static const SfxFilter* GetTextFilter(const sal_Char* pBuf, ULONG nLen); - // gebe einen bestimmten Reader zurueck static Reader* GetReader( const String& rFltName ); // gebe einen bestimmten Writer zurueck diff --git a/sw/inc/swcrsr.hxx b/sw/inc/swcrsr.hxx index 1f6e1c368e12..94e06d255aa3 100644 --- a/sw/inc/swcrsr.hxx +++ b/sw/inc/swcrsr.hxx @@ -2,9 +2,9 @@ * * $RCSfile: swcrsr.hxx,v $ * - * $Revision: 1.8 $ + * $Revision: 1.9 $ * - * last change: $Author: fme $ $Date: 2002-12-02 10:20:15 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:42 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -110,7 +110,7 @@ class SwCursor : public SwPaM friend class SwCrsrSaveState; _SwCursor_SavePos* pSavePos; - BYTE nCursorBidiLevel; + BYTE nCursorBidiLevel; // bidi level of the cursor ULONG FindAll( SwFindParas& , SwDocPositions, SwDocPositions, FindRanges, BOOL& bCancel ); @@ -186,7 +186,8 @@ public: FASTBOOL GoNextSentence(){return GoSentence(NEXT_SENT);} FASTBOOL GoPrevSentence(){return GoSentence(PREV_SENT);} - FASTBOOL LeftRight( BOOL bLeft, USHORT nCnt, USHORT nMode, BOOL bAllowVisual ); + FASTBOOL LeftRight( BOOL bLeft, USHORT nCnt, USHORT nMode, BOOL bAllowVisual, + BOOL bInsertCrsr ); FASTBOOL UpDown( BOOL bUp, USHORT nCnt = 1, Point* pPt = 0, long nUpDownX = 0 ); FASTBOOL LeftRightMargin( BOOL bLeftMargin, BOOL bAPI = FALSE ); @@ -195,9 +196,9 @@ public: FASTBOOL GoPrevNextCell( BOOL bNext, USHORT nCnt ); FASTBOOL Left( USHORT nCnt, USHORT nMode, BOOL bAllowVisual = FALSE ) - { return LeftRight( TRUE, nCnt, nMode, bAllowVisual ); } + { return LeftRight( TRUE, nCnt, nMode, bAllowVisual, FALSE ); } FASTBOOL Right( USHORT nCnt, USHORT nMode, BOOL bAllowVisual = FALSE ) - { return LeftRight( FALSE, nCnt, nMode, bAllowVisual ); } + { return LeftRight( FALSE, nCnt, nMode, bAllowVisual, FALSE ); } FASTBOOL Up( USHORT nCnt = 1 ) { return UpDown( TRUE, nCnt ); } FASTBOOL Down( USHORT nCnt = 1 ) { return UpDown( FALSE, nCnt ); } FASTBOOL LeftMargin() { return LeftRightMargin( TRUE ); } diff --git a/sw/inc/swmodule.hxx b/sw/inc/swmodule.hxx index f1204f9c8774..a0be14095c0b 100644 --- a/sw/inc/swmodule.hxx +++ b/sw/inc/swmodule.hxx @@ -2,9 +2,9 @@ * * $RCSfile: swmodule.hxx,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: os $ $Date: 2002-11-29 12:00:22 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:43 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -106,7 +106,7 @@ class SwNavigationConfig; class SwTransferable; class SwToolbarConfigItem; class SwAttrPool; -namespace svx{ class ColorConfig;} +namespace svtools{ class ColorConfig;} class SvtAccessibilityOptions; struct SwDBData; @@ -135,7 +135,7 @@ class SwModule: public SwModuleDummy , public SfxListener SwToolbarConfigItem*pToolbarConfig; //fuer gestackte Toolbars, welche SwToolbarConfigItem*pWebToolbarConfig; //war sichtbar? SwDBConfig* pDBConfig; - svx::ColorConfig* pColorConfig; + svtools::ColorConfig* pColorConfig; SvtAccessibilityOptions* pAccessibilityOptions; SfxErrorHandler* pErrorHdl; @@ -164,8 +164,6 @@ class SwModule: public SwModuleDummy , public SfxListener // Hint abfangen fuer DocInfo virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); - // form letter execution - void GenerateFormLetter(BOOL bUseCurrentDocument); protected: // Briefumschlaege, Etiketten @@ -205,7 +203,6 @@ public: void ExecOther(SfxRequest &); // Felder, Formel .. void ExecViewOptions(SfxRequest &); void ExecWizzard(SfxRequest &); - void ExecDB(SfxRequest &); // DBManager // Benutzereinstellungen modifizieren const SwMasterUsrPref *GetUsrPref(sal_Bool bWeb) const; @@ -226,7 +223,7 @@ public: SwToolbarConfigItem*GetToolbarConfig() { return pToolbarConfig; } SwToolbarConfigItem*GetWebToolbarConfig() { return pWebToolbarConfig; } SwDBConfig* GetDBConfig(); - svx::ColorConfig& GetColorConfig(); + svtools::ColorConfig& GetColorConfig(); SvtAccessibilityOptions& GetAccessibilityOptions(); // Ueber Sichten iterieren diff --git a/sw/inc/swunohelper.hxx b/sw/inc/swunohelper.hxx index 570fdf7d1539..d5476761dc7a 100644 --- a/sw/inc/swunohelper.hxx +++ b/sw/inc/swunohelper.hxx @@ -2,9 +2,9 @@ * * $RCSfile: swunohelper.hxx,v $ * - * $Revision: 1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: jp $ $Date: 2001-10-18 11:39:48 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:43 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -103,6 +103,12 @@ BOOL UCB_IsReadOnlyFileName( const String& rURL ); BOOL UCB_GetFileListOfFolder( const String& rURL, SvStrings& rList, const String* pExtension = 0, SvPtrarr* pDateTimeList = 0 ); + + // is the URL an existing file? +BOOL UCB_IsFile( const String& rURL ); + + // is the URL a existing directory? +BOOL UCB_IsDirectory( const String& rURL ); } #endif diff --git a/sw/inc/tblsel.hxx b/sw/inc/tblsel.hxx index 8db60a499baa..c5901e1cbc27 100644 --- a/sw/inc/tblsel.hxx +++ b/sw/inc/tblsel.hxx @@ -2,9 +2,9 @@ * * $RCSfile: tblsel.hxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: jp $ $Date: 2002-03-21 12:57:09 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:43 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -206,22 +206,10 @@ class _FndBox SwTableLine *pLineBefore; //Zum Loeschen/Restaurieren des Layouts. SwTableLine *pLineBehind; - static void AddToFndBox( _FndBox*& rpParent, const SwTableBox& rBox ); - static void AppendLine( _FndBox& rBox, const SwTableLine& rLine ); - static void AppendBox( _FndLine& rLine, const SwTableBox& rBox ); - static void AddSelLine( _FndBox& rBox, const SwTableLine& rLine, - SwSelBoxes& rBoxes ); - static void AddSelBox( _FndLine& rLine, const SwTableBox& rBox, - SwSelBoxes& rBoxes ); public: _FndBox( SwTableBox* pB, _FndLine* pFL ) : pBox(pB), pUpper(pFL), pLineBefore( 0 ), pLineBehind( 0 ) {} - // fill with the structure from the selection (the selboxes) - _FndBox( const SwSelBoxes& rBoxes ); - // fill with the structure from the TableLine - _FndBox( const SwTableLine& rLine ); - const _FndLines& GetLines() const { return aLines; } _FndLines& GetLines() { return aLines; } const SwTableBox* GetBox() const { return pBox; } @@ -262,4 +250,22 @@ public: }; +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/unoframe.hxx b/sw/inc/unoframe.hxx index e3a1979b68ac..8312cf8ac38c 100644 --- a/sw/inc/unoframe.hxx +++ b/sw/inc/unoframe.hxx @@ -2,9 +2,9 @@ * * $RCSfile: unoframe.hxx,v $ * - * $Revision: 1.14 $ + * $Revision: 1.15 $ * - * last change: $Author: mib $ $Date: 2002-11-26 12:35:55 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:44 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -371,14 +371,12 @@ class SwXOLEListener : public cppu::WeakImplHelper1 >, public SwClient { - ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > xOLEModel; -// SfxObjectShell* GetObjShell( const SwFmt& rFmt, -// SwOLENode** ppNd = 0 ) const; - SwFmt* GetFmt() const { return (SwFmt*)GetRegisteredIn(); } + 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: - SwXOLEListener(SwFmt& rOLEFmt, ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > xOLE); - ~SwXOLEListener(); - TYPEINFO(); // ::com::sun::star::lang::XEventListener virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException); @@ -386,6 +384,7 @@ public: // ::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* ); }; diff --git a/sw/inc/unomailmerge.hxx b/sw/inc/unomailmerge.hxx new file mode 100644 index 000000000000..aca74d4d9266 --- /dev/null +++ b/sw/inc/unomailmerge.hxx @@ -0,0 +1,233 @@ +/************************************************************************* + * + * $RCSfile: unomailmerge.hxx,v $ + * + * $Revision: 1.2 $ + * + * last change: $Author: hr $ $Date: 2003-03-27 15:38:44 $ + * + * 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 _UNOMAILMERGE_HXX_ +#define _UNOMAILMERGE_HXX_ + +#ifndef _CPPUHELPER_IMPLBASE5_HXX_ +#include <cppuhelper/implbase5.hxx> // WeakImplHelper4 +#endif +#ifndef _CPPUHELPER_INTERFACECONTAINER_HXX_ +#include <cppuhelper/interfacecontainer.hxx> // OMultiTypeInterfaceContainerHelperVar +#endif +#ifndef _UTL_CONFIGITEM_HXX_ +#include <unotools/configitem.hxx> // !! needed for OMultiTypeInterfaceContainerHelperVar !! +#endif + + +#ifndef _COM_SUN_STAR_TASK_XJOB_HPP_ +#include <com/sun/star/task/XJob.hpp> +#endif +#ifndef _COM_SUN_STAR_BEANS_XPROPERTYSET_HPP_ +#include <com/sun/star/beans/XPropertySet.hpp> +#endif +#ifndef _COM_SUN_STAR_LANG_XCOMPONENT_HPP_ +#include <com/sun/star/lang/XComponent.hpp> +#endif +#ifndef _COM_SUN_STAR_LANG_XSERVICEINFO_HPP_ +#include <com/sun/star/lang/XServiceInfo.hpp> +#endif +#ifndef _COM_SUN_STAR_BEANS_PROPERTYCHANGEEVENT_HPP_ +#include <com/sun/star/beans/PropertyChangeEvent.hpp> +#endif +#ifndef _COM_SUN_STAR_TEXT_XMAILMERGEBROADCASTER_HPP_ +#include <com/sun/star/text/XMailMergeBroadcaster.hpp> +#endif + +#ifndef _SFX_ITEMPROP_HXX +#include <svtools/itemprop.hxx> +#endif +#ifndef _SFX_OBJSH_HXX +#include <sfx2/objsh.hxx> // SfxObjectShellRef +#endif + +namespace com { namespace sun { namespace star { namespace sdbc { + class XResultSet; + class XConnection; +}}}} + +namespace com { namespace sun { namespace star { namespace frame { + class XModel; +}}}} + +namespace com { namespace sun { namespace star { namespace lang { + class XMultiServiceFactory; +}}}} + +namespace com { namespace sun { namespace star { namespace text { + class XMailMergeListener; + struct MailMergeEvent; +}}}} + +namespace rtl { + class OUString; +} + +/////////////////////////////////////////////////////////////////////////// + +// uses templates from <cppuhelper/interfacecontainer.h> +// and <unotools/configitem.hxx> + +// helper function call class +struct PropHashType_Impl +{ + size_t operator()(const INT32 &s) const { return s; } +}; + +typedef cppu::OMultiTypeInterfaceContainerHelperVar + < + INT32, + PropHashType_Impl, + std::equal_to< INT32 > + > OPropertyListenerContainerHelper; + +//////////////////////////////////////////////////////////// + +class SwXMailMerge : + public cppu::WeakImplHelper5 + < + com::sun::star::task::XJob, + com::sun::star::beans::XPropertySet, + com::sun::star::text::XMailMergeBroadcaster, + com::sun::star::lang::XComponent, + com::sun::star::lang::XServiceInfo + > +{ + cppu::OInterfaceContainerHelper aEvtListeners; + cppu::OInterfaceContainerHelper aMergeListeners; + OPropertyListenerContainerHelper aPropListeners; + + //SfxItemPropertySet aPropSet; + const SfxItemPropertyMap* pMap; + + SfxObjectShellRef xDocSh; // the document + + String aTmpFileName; + + // properties of mail merge service + com::sun::star::uno::Sequence< com::sun::star::uno::Any > aSelection; + com::sun::star::uno::Reference< com::sun::star::sdbc::XResultSet > xResultSet; + com::sun::star::uno::Reference< com::sun::star::sdbc::XConnection > xConnection; + com::sun::star::uno::Reference< com::sun::star::frame::XModel > xModel; + rtl::OUString aDataSourceName; + rtl::OUString aDataCommand; + rtl::OUString aFilter; + rtl::OUString aDocumentURL; + rtl::OUString aOutputURL; + rtl::OUString aFileNamePrefix; + sal_Int32 nDataCommandType; + sal_Int16 nOutputType; + sal_Bool bEscapeProcessing; + sal_Bool bSinglePrintJobs; + sal_Bool bFileNameFromColumn; + + sal_Bool bDisposing; + + + void launchEvent( const com::sun::star::beans::PropertyChangeEvent &rEvt ) const; + + // disallow use of copy-constructor and assignment-operator for now + SwXMailMerge( const SwXMailMerge & ); + SwXMailMerge & operator = ( const SwXMailMerge & ); + +public: + SwXMailMerge(); + virtual ~SwXMailMerge(); + + void LaunchMailMergeEvent( const com::sun::star::text::MailMergeEvent &rData ) const; + + // XJob + virtual ::com::sun::star::uno::Any SAL_CALL execute( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& Arguments ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::Exception, ::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); + + // XMailMergeBroadcaster + virtual void SAL_CALL addMailMergeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XMailMergeListener >& xListener ) throw (::com::sun::star::uno::RuntimeException); + virtual void SAL_CALL removeMailMergeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::text::XMailMergeListener >& xListener ) 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( ) 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( ) throw (::com::sun::star::uno::RuntimeException); +}; + + +extern com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL SwXMailMerge_getSupportedServiceNames() throw(); +extern rtl::OUString SAL_CALL SwXMailMerge_getImplementationName() throw(); +extern com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SwXMailMerge_createInstance(const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > & rSMgr) throw( com::sun::star::uno::Exception ); + +//////////////////////////////////////////////////////////// + +#endif + + diff --git a/sw/inc/unomap.hxx b/sw/inc/unomap.hxx index e4af696920f9..d40a1bac6686 100644 --- a/sw/inc/unomap.hxx +++ b/sw/inc/unomap.hxx @@ -2,9 +2,9 @@ * * $RCSfile: unomap.hxx,v $ * - * $Revision: 1.42 $ + * $Revision: 1.43 $ * - * last change: $Author: tl $ $Date: 2002-10-08 14:34:29 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:44 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -106,6 +106,7 @@ #define PROPERTY_MAP_EMBEDDED_OBJECT 38 #define PROPERTY_MAP_REDLINE 39 #define PROPERTY_MAP_TEXT_DEFAULT 40 + #define PROPERTY_MAP_FLDTYP_DATETIME 41 #define PROPERTY_MAP_FLDTYP_USER 42 #define PROPERTY_MAP_FLDTYP_SET_EXP 43 @@ -152,9 +153,10 @@ #define PROPERTY_MAP_FLDMSTR_DUMMY0 84 #define PROPERTY_MAP_FLDTYP_BIBLIOGRAPHY 85 #define PROPERTY_MAP_FLDMSTR_BIBLIOGRAPHY 86 -#define PROPERTY_MAP_REDLINE_PORTION 87 -#define PROPERTY_MAP_TEXT 88 -#define PROPERTY_MAP_END 89 +#define PROPERTY_MAP_TEXT 87 +#define PROPERTY_MAP_REDLINE_PORTION 88 +#define PROPERTY_MAP_MAILMERGE 89 +#define PROPERTY_MAP_END 90 #define PROPERTY_SET_CHAR_STYLE 1 #define PROPERTY_SET_PARA_STYLE 2 @@ -251,6 +253,7 @@ #define WID_IDX_LOCALE 1055 #define WID_IDX_SORT_ALGORITHM 1056 #define WID_IDX_NAME 1057 + #define WID_TEXT_READING 1058 #define WID_PRIMARY_KEY_READING 1059 #define WID_SECONDARY_KEY_READING 1060 @@ -272,6 +275,22 @@ #define WID_DOC_APPLY_FORM_DESIGN_MODE 1013 #define WID_DOC_BASIC_LIBRARIES 1014 +//MailMerge +#define WID_SELECTION 1071 +#define WID_RESULT_SET 1072 +#define WID_CONNECTION 1073 +#define WID_MODEL 1074 +#define WID_DATA_SOURCE_NAME 1075 +#define WID_DATA_COMMAND 1076 +#define WID_FILTER 1077 +#define WID_DOCUMENT_URL 1078 +#define WID_OUTPUT_URL 1079 +#define WID_DATA_COMMAND_TYPE 1080 +#define WID_OUTPUT_TYPE 1081 +#define WID_ESCAPE_PROCESSING 1082 +#define WID_SINGLE_PRINT_JOBS 1083 +#define WID_FILE_NAME_FROM_COLUMN 1084 +#define WID_FILE_NAME_PREFIX 1085 //AutoText #define WID_GROUP_PATH 0 diff --git a/sw/inc/unoobj.hxx b/sw/inc/unoobj.hxx index 98290dc3705c..33e674c06769 100644 --- a/sw/inc/unoobj.hxx +++ b/sw/inc/unoobj.hxx @@ -2,9 +2,9 @@ * * $RCSfile: unoobj.hxx,v $ * - * $Revision: 1.24 $ + * $Revision: 1.25 $ * - * last change: $Author: os $ $Date: 2002-03-19 16:05:50 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:45 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -397,6 +397,8 @@ enum SwGetPropertyStatesCaller SW_PROPERTY_STATE_CALLER_SWX_TEXT_PORTION, SW_PROPERTY_STATE_CALLER_SINGLE_VALUE_ONLY }; +#define CRSR_ATTR_MODE_TABLE 1 //attributes should be applied to a table selection +#define CRSR_ATTR_MODE_DONTREPLACE 2 //attributes should be added, not replaced class SwXTextCursor : public cppu::WeakImplHelper12 < @@ -539,7 +541,7 @@ public: 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 SetCrsrAttr(SwPaM& rPam, const SfxItemSet& rSet, USHORT nAttrMode ); 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); diff --git a/sw/inc/unoprnms.hxx b/sw/inc/unoprnms.hxx index 77eddb65b7c7..ccaadb4878bf 100644 --- a/sw/inc/unoprnms.hxx +++ b/sw/inc/unoprnms.hxx @@ -2,9 +2,9 @@ * * $RCSfile: unoprnms.hxx,v $ * - * $Revision: 1.80 $ + * $Revision: 1.81 $ * - * last change: $Author: os $ $Date: 2002-11-15 11:08:21 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:45 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -716,8 +716,23 @@ enum SwPropNameIds /* 0636 */ UNO_NAME_FOOTER_DYNAMIC_SPACING, /* 0637 */ UNO_NAME_BASIC_LIBRARIES, /* 0638 */ UNO_NAME_IS_FIXED_LANGUAGE, +/* 0639 */ UNO_NAME_SELECTION, +/* 0640 */ UNO_NAME_RESULT_SET, +/* 0641 */ UNO_NAME_CONNECTION, +/* 0642 */ UNO_NAME_MODEL, +/* 0643 */ UNO_NAME_DATA_SOURCE_NAME, +/* 0644 */ UNO_NAME_DATA_COMMAND, +/* 0645 */ UNO_NAME_FILTER, +/* 0646 */ UNO_NAME_DOCUMENT_URL, +/* 0647 */ UNO_NAME_OUTPUT_URL, +/* 0648 */ UNO_NAME_OUTPUT_TYPE, +/* 0649 */ UNO_NAME_ESCAPE_PROCESSING, +/* 0650 */ UNO_NAME_SINGLE_PRINT_JOBS, +/* 0651 */ UNO_NAME_FILE_NAME_FROM_COLUMN, +/* 0652 */ UNO_NAME_FILE_NAME_PREFIX, +/* 0653 */ UNO_NAME_CHAR_STYLE_NAMES, +/* 0654 */ SW_PROPNAME_END -/* 0639 */ SW_PROPNAME_END }; diff --git a/sw/inc/viewopt.hxx b/sw/inc/viewopt.hxx index 7f9f47a4d9c4..53e579651a39 100644 --- a/sw/inc/viewopt.hxx +++ b/sw/inc/viewopt.hxx @@ -2,9 +2,9 @@ * * $RCSfile: viewopt.hxx,v $ * - * $Revision: 1.15 $ + * $Revision: 1.16 $ * - * last change: $Author: fme $ $Date: 2002-12-05 10:02:03 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:46 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -77,7 +77,7 @@ class Window; class OutputDevice; class ViewShell; class SwDocShell; -namespace svx{ class ColorConfig;} +namespace svtools{ class ColorConfig;} #define VIEWOPT_1_IDLE 0x00000001L #define VIEWOPT_1_TAB 0x00000002L @@ -608,7 +608,7 @@ public: void SetDocBoundaries(BOOL bSet) {SetAppearanceFlag(VIEWOPT_DOC_BOUNDARIES, bSet);} - static void ApplyColorConfigValues(const svx::ColorConfig& rConfig); + static void ApplyColorConfigValues(const svtools::ColorConfig& rConfig); }; diff --git a/sw/inc/viewsh.hxx b/sw/inc/viewsh.hxx index 05b33fdce283..8bce0bb854fd 100644 --- a/sw/inc/viewsh.hxx +++ b/sw/inc/viewsh.hxx @@ -2,9 +2,9 @@ * * $RCSfile: viewsh.hxx,v $ * - * $Revision: 1.22 $ + * $Revision: 1.23 $ * - * last change: $Author: od $ $Date: 2002-12-06 16:12:04 $ + * last change: $Author: hr $ $Date: 2003-03-27 15:38:46 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -109,6 +109,8 @@ struct SwPrintData; class SvtAccessibilityOptions; class Fraction; class SvEmbeddedObjectRef; +// OD 12.12.2002 #103492# +class SwPagePreviewLayout; struct SwAccessibilityOptions; @@ -128,6 +130,9 @@ class ViewShell : public Ring friend class SwViewImp; friend class SwLayIdle; + // OD 12.12.2002 #103492# - for setting visible area for page preview paint + friend class SwPagePreviewLayout; + //Umsetzen der SwVisArea, damit vor dem Drucken sauber formatiert //werden kann. friend void SetSwVisArea( ViewShell *pSh, const SwRect &, BOOL bPDFExport = FALSE ); @@ -196,14 +201,6 @@ class ViewShell : public Ring void ImplApplyViewOptions( const SwViewOption &rOpt ); - /** calculate visible pages and further needed data for current preview settings - - OD 04.12.2002 #103492# - - @author OD - */ - void _CalcVisiblePagesForPreview(); - protected: static ShellResource* pShellRes; // Resourcen fuer die Shell static Window* pCareWindow; // diesem Fenster ausweichen @@ -321,7 +318,7 @@ public: sal_Bool Prt( SwPrtOptions& rOptions, SfxProgress& rProgress, OutputDevice *pPDFOut = NULL ); //"Drucken" fuer OLE 2.0 - static void PrtOle2( SwDoc *pDoc, const SwViewOption *pOpt, + static void PrtOle2( SwDoc *pDoc, const SwViewOption *pOpt, SwPrtOptions& rOptions, OutputDevice* pOleOut, const Rectangle& rRect ); // creates temporary doc with selected text for PDF export @@ -374,210 +371,26 @@ public: // 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, - sal_uInt16 nSelectedPage ); - 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_uInt16 nAccSelPage ); - sal_Bool IsPreViewDocPos( Point& rDocPt, sal_uInt16 nRowCol, sal_uInt16 nSttPage, - const Size& rMaxSize ); - /** init page preview layout - new method, replacing <CalcPreViewPage> - - OD 27.11.2002 #103492# - initialize the page preview settings for a given layout. - side effects: - (1) data struture for current preview settings are initialized and set. - (2) if parameter <_bCalcScale> is true, mapping mode with calculated - scaling is set at the output device and the zoom at the view options is - set with the calculated scaling. - - @author OD - - @param _nCols - input parameter - initial number of page columns in the preview. - - @param _nRows - input parameter - initial number of page rows in the preview. - - @param _orMaxPageSize - output parameter - maximal size in width and height of all pages - - @param _orPreviewDocSize - output parameter - size of the document in the proposed preview layout - included the spacing between the pages. - - @param _bCalcScale - input parameter - control, if method should calculate the needed - scaling for the proposed preview layout for the given window size - and sets the scaling at the output device and the view options. - - @param _pPxWinSize - input parameter - window size in which the preview will be displayed and - for which the scaling will be calculated. - - @return boolean, indicating, if preview layout is successful initialized. - */ - bool InitPreviewLayout( const sal_uInt16 _nCols, - const sal_uInt16 _nRows, - Size& _orMaxPageSize, - Size& _orPreviewDocSize, - const bool _bCalcScale, - const Size* _pPxWinSize = NULL - ); - - /** prepare paint of page preview - - OD 28.11.2002 #103492# - With the valid preview layout settings - calculated and set by method - <InitPreviewLayout> - the paint of a specific part of the virtual - preview document is prepared. The corresponding part is given by either - a start page (parameter <_nProposedStartPageNum>) or a absolute position - (parameter <_aProposedStartPoint>). - The accessibility preview will also be updated via a corresponding - method call. - - @author OD - - @param _nProposedStartPageNum [0..<number of document pages>] - input parameter - proposed number of page, which should be painted in - the left-top-corner in the current output device. - - @param _nProposedStartPos [(0,0)..<PreviewDocumentSize>] - input parameter - proposed absolute position in the virtual preview - document, which should be painted in the left-top-corner in the current - output device. - - @param _pPxWinSize - input parameter - pixel size of window the preview will be painted in. - - @param _onStartPageNum - output parameter - physical number of page, which will be painted in the - left-top-corner in the current output device. - - @param _onStartPageVirtNum - output parameter - virtual number of page, which will be painted in the - left-top-corner in the current output device. - - @param _orDocPreviewPaintRect - output parameter - rectangle of preview document, which will be painted. - - @param _bPaintPageAtFirstCol - input parameter with default value "true" - controls, if start page - is set to page in first column the proposed start page is located. - - @return boolean, indicating, if prepare of preview paint was successful. - */ - bool PreparePreviewPaint( const sal_uInt16 _nProposedStartPageNum, - const Point _aProposedStartPos, - const Size* _pPxWinSize, - sal_uInt16& _onStartPageNum, - sal_uInt16& _onStartPageVirtNum, - Rectangle& _orDocPreviewPaintRect, - const bool _bPaintPageAtFirstCol = true - ); - - /** paint prepared preview - - OD 28.11.2002 #103492# + // OD 12.12.2002 #103492# + SwPagePreviewLayout* PagePreviewLayout(); - @author OD + /** adjust view options for page preview - @param _nSelectedPageNum - input parameter - physical number of page, which should be painted as - selected by am extra border in color COL_LIGHTBLUE. + OD 09.01.2003 #i6467# + Because page preview should show the document as it is printed - + page preview is print preview -, the view options are adjusted to the + same as for printing. - @param _aOutRect - input parameter - Twip rectangle of window, which should be painted. - - @return boolean, indicating, if paint of preview was performed - */ - bool PaintPreview( const sal_uInt16 _nSelectedPageNum, - const Rectangle _aOutRect - ); - - /** property <DoesPreviewLayoutRowsFitIntoWin> of current preview layout - - OD 03.12.2002 #103492# - - @author OD - - @return boolean, indicating that the rows of the current preview layout - fit into the current window size. + @param _rPrintOptions + input parameter - constant reference to print options, to which the + view option will be adjusted. */ - bool DoesPreviewLayoutRowsFitIntoWindow(); - - /** property <DoesPreviewLayoutColsFitIntoWin> of current preview layout - - OD 03.12.2002 #103492# - - @author OD - - @return boolean, indicating that the columns of the current preview layout - fit into the current window size. - */ - bool DoesPreviewLayoutColsFitIntoWindow(); - - /** calculate start position for new scaling + void AdjustOptionsForPagePreview( const SwPrtOptions &_rPrintOptions ); - OD 04.12.2002 #103492# - - @author OD - - @return Point, start position for new scale - */ - Point GetPreviewStartPosForNewScale( const Fraction& _aNewScale, - const Fraction& _aOldScale, - const Size& _aNewWinSize ); - - /** determines, if page with given page number is visible in preview - - OD 05.12.2002 #103492# - - @author OD - - @return boolean, indicating, if page with given page number is visible - in preview - */ - bool IsPageVisibleInCurrPreview( const sal_uInt16 _nPageNum ); - - /** prepares re-paint of preview to bring new selected page into view. - - OD 06.12.2002 #103492# - - @author OD - - @param _nCurrSelectedPage - input parameter - number of current selected page. - - @param _nHoriMove - input parameter - positive/negative number of columns the current - selected page have to be moved. - - @param _nVertMove - input parameter - positive/negative number of rows the current - selected page have to be moved. - - @param _orNewSelectedPage - output parameter - number of new selected page - - @return boolean - indicating, that move was sucessful. - */ - bool MovePreviewSelectedPage( const sal_uInt16 _nCurrSelectedPage, - const sal_Int16 _nHoriMove, - const sal_Int16 _nVertMove, - sal_uInt16& _orNewSelectedPage, - sal_uInt16& _orNewStartPage, - Point& _orNewStartPos ); + // print page/print preview + void PrintPreViewPage( SwPrtOptions& rOptions, sal_uInt16 nRowCol, + SfxProgress& rProgress, + const SwPagePreViewPrtData* = 0 ); // Prospekt-Format drucken void PrintProspect( SwPrtOptions&, SfxProgress& ); @@ -629,24 +442,16 @@ public: const Size& GetBrowseBorder() const{ return aBrowseBorder; } void SetBrowseBorder( const Size& rNew ); -#ifdef ACCESSIBLE_LAYOUT ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible > CreateAccessible(); + // OD 15.01.2003 #103492# - change method signature due to new page preview + // functionality. ::com::sun::star::uno::Reference< ::drafts::com::sun::star::accessibility::XAccessible > - CreateAccessiblePreview( sal_uInt8 nRow, - sal_uInt8 nColumn, - sal_uInt16 nStartPage, - const Size& rPageSize, - const Point& rFreePoint, - const Fraction& rScale, - sal_uInt16 nSelectedPage ); - - Point GetPreviewFreePix() const; + CreateAccessiblePreview(); void ShowPreViewSelection( sal_uInt16 nSelPage ); void InvalidateAccessibleFocus(); -#endif //apply Accessiblity options void ApplyAccessiblityOptions(SvtAccessibilityOptions& rAccessibilityOptions); |