summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sc/inc/document.hxx5
-rw-r--r--sc/inc/drwlayer.hxx6
-rw-r--r--sc/sdi/drawsh.sdi1
-rw-r--r--sc/sdi/drtxtob.sdi1
-rw-r--r--sc/source/ui/drawfunc/drtxtob.cxx116
-rw-r--r--sc/source/ui/drawfunc/futext.cxx257
-rw-r--r--sc/source/ui/view/drawview.cxx6
-rw-r--r--sc/source/ui/view/output3.cxx9
8 files changed, 44 insertions, 357 deletions
diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx
index de78639881b3..6778b7a98ae7 100644
--- a/sc/inc/document.hxx
+++ b/sc/inc/document.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: document.hxx,v $
*
- * $Revision: 1.36 $
+ * $Revision: 1.37 $
*
- * last change: $Author: sab $ $Date: 2001-05-11 18:59:52 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:15:37 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -1516,6 +1516,7 @@ private: // CLOOK-Impl-Methoden
void DrawCopyPage( USHORT nOldPos, USHORT nNewPos );
void UpdateDrawPrinter();
+ void UpdateDrawLanguages();
void InitClipPtrs( ScDocument* pSourceDoc );
void LoadDdeLinks(SvStream& rStream);
diff --git a/sc/inc/drwlayer.hxx b/sc/inc/drwlayer.hxx
index a1ddd65e7244..58fe8e86d9df 100644
--- a/sc/inc/drwlayer.hxx
+++ b/sc/inc/drwlayer.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: drwlayer.hxx,v $
*
- * $Revision: 1.4 $
+ * $Revision: 1.5 $
*
- * last change: $Author: nn $ $Date: 2001-04-18 15:04:25 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:15:37 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -121,6 +121,7 @@ private:
SdrUndoGroup* pUndoGroup;
BOOL bRecording;
BOOL bAdjustEnabled;
+ BOOL bHyphenatorSet;
private:
void MoveAreaTwips( USHORT nTab, const Rectangle& rArea, const Point& rMove,
@@ -156,6 +157,7 @@ public:
ScDocument* GetDocument() const { return pDoc; }
void UpdateBasic(); // DocShell-Basic in DrawPages setzen
+ void UseHyphenator();
void Load( SvStream& rStream );
void Store( SvStream& rStream ) const;
diff --git a/sc/sdi/drawsh.sdi b/sc/sdi/drawsh.sdi
index 893461a46807..b337bbe31cec 100644
--- a/sc/sdi/drawsh.sdi
+++ b/sc/sdi/drawsh.sdi
@@ -132,6 +132,7 @@ interface TableDraw : Selection
SID_ORIGINALSIZE [ ExecMethod = ExecDrawFunc; StateMethod = GetDrawFuncState; Export = FALSE; ]
SID_HYPERLINK_SETLINK [ ExecMethod = ExecuteHLink; Export = FALSE; ]
SID_HYPERLINK_GETLINK [ StateMethod = GetHLinkState; Export = FALSE; ]
+ SID_ENABLE_HYPHENATION [ ExecMethod = ExecDrawFunc; StateMethod = GetDrawFuncState; Export = FALSE; ]
}
diff --git a/sc/sdi/drtxtob.sdi b/sc/sdi/drtxtob.sdi
index f21065283cdc..a3e3e688b54f 100644
--- a/sc/sdi/drtxtob.sdi
+++ b/sc/sdi/drtxtob.sdi
@@ -84,6 +84,7 @@ interface TableDrawText : Selection
SID_HYPERLINK_SETLINK [ ExecMethod = Execute; Export = FALSE; ]
SID_HYPERLINK_GETLINK [ StateMethod = GetState; Export = FALSE; ]
+ SID_ENABLE_HYPHENATION [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ]
SID_TEXTDIRECTION_LEFT_TO_RIGHT [ ExecMethod = Execute; StateMethod = GetAttrState; Export = FALSE; ]
SID_TEXTDIRECTION_TOP_TO_BOTTOM [ ExecMethod = Execute; StateMethod = GetAttrState; Export = FALSE; ]
diff --git a/sc/source/ui/drawfunc/drtxtob.cxx b/sc/source/ui/drawfunc/drtxtob.cxx
index 38ef26be0cfe..a3f43cebf303 100644
--- a/sc/source/ui/drawfunc/drtxtob.cxx
+++ b/sc/source/ui/drawfunc/drtxtob.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: drtxtob.cxx,v $
*
- * $Revision: 1.10 $
+ * $Revision: 1.11 $
*
- * last change: $Author: nn $ $Date: 2001-05-21 11:11:10 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:18:24 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -65,107 +65,6 @@
#pragma hdrstop
-//------------------------------------------------------------------------
-
-// T
-#define _BIGINT_HXX
-#define _SFXMULTISEL_HXX
-#define _STACK_HXX
-#define _QUEUE_HXX
-#define _DYNARR_HXX
-#define _TREELIST_HXX
-#define _CACHESTR_HXX
-
-//SV
-//#define _CLIP_HXX
-#define _CONFIG_HXX
-#define _CURSOR_HXX
-#define _FONTDLG_HXX
-#define _PRVWIN_HXX
-
-#if defined WIN
-#define _MENUBTN_HXX
-#endif
-
-
-//svtools
-#define _SCRWIN_HXX
-#define _RULER_HXX
-#define _TABBAR_HXX
-#define _VALUESET_HXX
-#define _STDMENU_HXX
-#define _STDCTRL_HXX
-// #define _CTRLBOX_HXX
-#define _CTRLTOOL_HXX
-#define _EXTATTR_HXX
-#define _FRM3D_HXX
-
-//SVTOOLS
-#define _SVTREELIST_HXX
-#define _FILTER_HXX
-#define _SVLBOXITM_HXX
-#define _SVTREEBOX_HXX
-#define _SVICNVW_HXX
-#define _SVTABBX_HXX
-
-// SFX
-#define _SFXAPPWIN_HXX
-#define _SFX_SAVEOPT_HXX
-//#define _SFX_CHILDWIN_HXX
-//#define _SFXCTRLITEM_HXX
-#define _SFXPRNMON_HXX
-#define _INTRO_HXX
-#define _SFXMSGDESCR_HXX
-#define _SFXMSGPOOL_HXX
-#define _SFXFILEDLG_HXX
-#define _PASSWD_HXX
-#define _SFXTBXCTRL_HXX
-#define _SFXSTBITEM_HXX
-#define _SFXMNUITEM_HXX
-#define _SFXIMGMGR_HXX
-#define _SFXTBXMGR_HXX
-#define _SFXSTBMGR_HXX
-#define _SFX_MINFITEM_HXX
-#define _SFXEVENT_HXX
-
-
-
-//svdraw.hxx
-#define _SDR_NOTRANSFORM // Transformationen, selten verwendet
-#define _SDR_NOTOUCH // Hit-Tests, selten verwendet
-
-#define _SDR_NOEXTDEV // ExtOutputDevice
-//#define _SDR_NOUNDO // Undo-Objekte
-#define _SDR_NOSURROGATEOBJ // SdrObjSurrogate
-#define _SDR_NOPAGEOBJ // SdrPageObj
-#define _SDR_NOVIRTOBJ // SdrVirtObj
-#define _SDR_NOGROUPOBJ // SdrGroupObj
-//#define _SDR_NOTEXTOBJ // SdrTextObj
-#define _SDR_NOPATHOBJ // SdrPathObj
-#define _SDR_NOEDGEOBJ // SdrEdgeObj
-//#define _SDR_NORECTOBJ // SdrRectObj
-#define _SDR_NOCAPTIONOBJ // SdrCaptionObj
-#define _SDR_NOCIRCLEOBJ // SdrCircleObj
-#define _SDR_NOGRAFOBJ // SdrGrafObj
-//#define _SDR_NOOLE2OBJ // SdrOle2Obj
-
-
-// si.hxx:
-//#define _SI_HXX
-#define _SIDLL_HXX
-
-#define SI_NOITEMS
-//#define SI_NODRW
-#define SI_NOOTHERFORMS
-#define SI_NOSBXCONTROLS
-#define SI_NOCONTROL
-#define _VCATTR_HXX
-#define _VCONT_HXX
-#define _VCTRLS_HXX
-//#define _VCSBX_HXX
-//#define _VCDRWOBJ_HXX
-#define _VCBRW_HXX
-
//-------------------------------------------------------------------------
#include "scitems.hxx"
@@ -192,6 +91,7 @@
#include <svx/udlnitem.hxx>
#include <svx/wghtitem.hxx>
#include <sfx2/app.hxx>
+#include <sfx2/dispatch.hxx>
#include <sfx2/objface.hxx>
#include <sfx2/objsh.hxx>
#include <sfx2/request.hxx>
@@ -206,7 +106,6 @@
#include "drtxtob.hxx"
#include "viewdata.hxx"
#include "document.hxx"
-#include "drwlayer.hxx"
#include "drawview.hxx"
#include "viewutil.hxx"
#include "scresid.hxx"
@@ -407,15 +306,24 @@ void __EXPORT ScDrawTextObjectBar::Execute( SfxRequest &rReq )
}
break;
+ case SID_ENABLE_HYPHENATION:
case SID_TEXTDIRECTION_LEFT_TO_RIGHT:
case SID_TEXTDIRECTION_TOP_TO_BOTTOM:
pView->ScEndTextEdit(); // end text edit before switching direction
ExecuteGlobal( rReq );
+ // restore consistent state between shells and functions:
+ pViewData->GetDispatcher().Execute(SID_OBJECT_SELECT, SFX_CALLMODE_SLOT | SFX_CALLMODE_RECORD);
break;
+#if 0
+ // Hyphenation is handled above - text edit is ended
case SID_ENABLE_HYPHENATION:
+ // force loading of hyphenator (object is skipped in repaint)
+ ((ScDrawLayer*)pView->GetModel())->UseHyphenator();
+ pOutliner->SetHyphenator( LinguMgr::GetHyphenator() );
ExecuteGlobal( rReq );
break;
+#endif
}
}
diff --git a/sc/source/ui/drawfunc/futext.cxx b/sc/source/ui/drawfunc/futext.cxx
index 9555adc29070..e7520f75567f 100644
--- a/sc/source/ui/drawfunc/futext.cxx
+++ b/sc/source/ui/drawfunc/futext.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: futext.cxx,v $
*
- * $Revision: 1.4 $
+ * $Revision: 1.5 $
*
- * last change: $Author: nn $ $Date: 2001-03-02 21:09:13 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:18:24 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -67,249 +67,6 @@
//------------------------------------------------------------------
-// TOOLS
-#define _BIGINT_HXX
-#define _SFXMULTISEL_HXX
-#define _STACK_HXX
-#define _QUEUE_HXX
-#define _DYNARR_HXX
-#define _TREELIST_HXX
-#define _CACHESTR_HXX
-#define _NEW_HXX
-//#define _SHL_HXX
-//#define _LINK_HXX
-//#define _ERRCODE_HXX
-//#define _GEN_HXX
-//#define _FRACT_HXX
-//#define _STRING_HXX
-//#define _MTF_HXX
-//#define _CONTNR_HXX
-//#define _LIST_HXX
-//#define _TABLE_HXX
-#define _DYNARY_HXX
-//#define _UNQIDX_HXX
-#define _SVMEMPOOL_HXX
-//#define _UNQID_HXX
-//#define _DEBUG_HXX
-//#define _DATE_HXX
-//#define _TIME_HXX
-//#define _DATETIME_HXX
-//#define _INTN_HXX
-//#define _WLDCRD_HXX
-//#define _FSYS_HXX
-//#define _STREAM_HXX
-#define _CACHESTR_HXX
-#define _SV_MULTISEL_HXX
-
-//SV
-//#define _CLIP_HXX ***
-#define _CONFIG_HXX
-#define _CURSOR_HXX
-#define _FONTDLG_HXX
-#define _PRVWIN_HXX
-//#define _COLOR_HXX
-//#define _PAL_HXX
-//#define _BITMAP_HXX
-//#define _GDIOBJ_HXX
-//#define _POINTR_HXX
-//#define _ICON_HXX
-//#define _IMAGE_HXX
-//#define _KEYCOD_HXX
-//#define _EVENT_HXX
-#define _HELP_HXX
-//#define _APP_HXX
-//#define _MDIAPP_HXX
-//#define _TIMER_HXX
-//#define _METRIC_HXX
-//#define _REGION_HXX
-//#define _OUTDEV_HXX
-//#define _SYSTEM_HXX
-//#define _VIRDEV_HXX
-//#define _JOBSET_HXX
-//#define _PRINT_HXX
-//#define _WINDOW_HXX
-//#define _SYSWIN_HXX
-//#define _WRKWIN_HXX
-#define _MDIWIN_HXX
-//#define _FLOATWIN_HXX
-//#define _DOCKWIN_HXX
-//#define _CTRL_HXX
-//#define _SCRBAR_HXX
-//#define _BUTTON_HXX
-//#define _IMAGEBTN_HXX
-//#define _FIXED_HXX
-//#define _GROUP_HXX
-//#define _EDIT_HXX
-//#define _COMBOBOX_HXX
-//#define _LSTBOX_HXX
-//#define _SELENG_HXX ***
-//#define _SPLIT_HXX
-#define _SPIN_HXX
-//#define _FIELD_HXX
-//#define _MOREBTN_HXX ***
-//#define _TOOLBOX_HXX
-#define _STATUS_HXX
-#define _SVTCTRL3_HXX
-//#define _DIALOG_HXX
-//#define _MSGBOX_HXX
-//#define _SYSDLG_HXX
-//#define _FILDLG_HXX ***
-//#define _PRNDLG_HXX
-#define _COLDLG_HXX
-//#define _TABDLG_HXX
-//#define _MENU_HXX ***
-//#define _GDIMTF_HXX
-//#define _POLY_HXX
-//#define _ACCEL_HXX
-//#define _GRAPH_HXX
-#define _SOUND_HXX
-
-#if defined WIN
-#define _MENUBTN_HXX
-#endif
-
-//svtools
-#define _SCRWIN_HXX
-#define _RULER_HXX
-//#define _TABBAR_HXX
-//#define _VALUESET_HXX
-#define _STDMENU_HXX
-//#define _STDCTRL_HXX
-//#define _CTRLBOX_HXX
-#define _CTRLTOOL_HXX
-#define _EXTATTR_HXX
-#define _FRM3D_HXX
-#define _EXTATTR_HXX
-
-//SVTOOLS
-//#define _SVTREELIST_HXX
-#define _FILTER_HXX
-//#define _SVLBOXITM_HXX
-//#define _SVTREEBOX_HXX
-#define _SVICNVW_HXX
-#define _SVTABBX_HXX
-
-//sfxcore.hxx
-//#define _SFXINIMGR_HXX
-//#define _SFXCFGITEM_HXX
-//#define _SFX_PRINTER_HXX
-#define _SFXGENLINK_HXX
-#define _SFXHINTPOST_HXX
-#define _SFXDOCINF_HXX
-#define _SFXLINKHDL_HXX
-//#define _SFX_PROGRESS_HXX
-
-//sfxsh.hxx
-//#define _SFX_SHELL_HXX
-//#define _SFXAPP_HXX
-//#define _SFXDISPATCH_HXX
-//#define _SFXMSG_HXX
-//#define _SFXOBJFACE_HXX
-//#define _SFXREQUEST_HXX
-#define _SFXMACRO_HXX
-
-// SFX
-//#define _SFXAPPWIN_HXX
-#define _SFX_SAVEOPT_HXX
-//#define _SFX_CHILDWIN_HXX
-//#define _SFXCTRLITEM_HXX
-#define _SFXPRNMON_HXX
-#define _INTRO_HXX
-#define _SFXMSGDESCR_HXX
-#define _SFXMSGPOOL_HXX
-#define _SFXFILEDLG_HXX
-#define _PASSWD_HXX
-#define _SFXTBXCTRL_HXX
-#define _SFXSTBITEM_HXX
-#define _SFXMNUITEM_HXX
-#define _SFXIMGMGR_HXX
-#define _SFXTBXMGR_HXX
-#define _SFXSTBMGR_HXX
-#define _SFX_MINFITEM_HXX
-#define _SFXEVENT_HXX
-
-//sfxdoc.hxx
-//#define _SFX_OBJSH_HXX
-//#define _SFX_CLIENTSH_HXX
-//#define _SFXDOCINF_HXX
-//#define _SFX_OBJFAC_HXX
-#define _SFX_DOCFILT_HXX
-//#define _SFXDOCFILE_HXX
-//define _VIEWFAC_HXX
-//#define _SFXVIEWFRM_HXX
-//#define _SFXVIEWSH_HXX
-//#define _MDIFRM_HXX
-#define _SFX_IPFRM_HXX
-//#define _SFX_INTERNO_HXX
-
-//sfxdlg.hxx
-//#define _SFXTABDLG_HXX
-//#define _BASEDLGS_HXX
-#define _SFX_DINFDLG_HXX
-#define _SFXDINFEDT_HXX
-#define _SFX_MGETEMPL_HXX
-#define _SFX_TPLPITEM_HXX
-//#define _SFX_STYLEDLG_HXX
-#define _NEWSTYLE_HXX
-//#define _SFXDOCTEMPL_HXX
-//#define _SFXDOCTDLG_HXX
-//#define _SFX_TEMPLDLG_HXX
-//#define _SFXNEW_HXX
-#define _SFXDOCMAN_HXX
-//#define _SFXDOCKWIN_HXX **
-
-//sfxitems.hxx
-#define _SFX_WHMAP_HXX
-#define _ARGS_HXX
-//#define _SFXPOOLITEM_HXX
-//#define _SFXINTITEM_HXX
-//#define _SFXENUMITEM_HXX
-#define _SFXFLAGITEM_HXX
-//#define _SFXSTRITEM_HXX
-#define _SFXPTITEM_HXX
-#define _SFXRECTITEM_HXX
-//#define _SFXITEMPOOL_HXX
-//#define _SFXITEMSET_HXX
-#define _SFXITEMITER_HXX
-#define _SFX_WHITER_HXX
-#define _SFXPOOLCACH_HXX
-//#define _AEITEM_HXX
-#define _SFXRNGITEM_HXX
-//#define _SFXSLSTITM_HXX
-//#define _SFXSTYLE_HXX
-
-//xout.hxx
-//#define _XENUM_HXX
-//#define _XPOLY_HXX
-//#define _XATTR_HXX
-//#define _XOUTX_HXX
-//#define _XPOOL_HXX
-//#define _XTABLE_HXX
-
-//svdraw.hxx
-#define _SDR_NOITEMS
-#define _SDR_NOTOUCH
-#define _SDR_NOTRANSFORM
-//#define _SDR_NOOBJECTS
-//#define _SDR_NOVIEWS
-
-//#define SI_NOITEMS
-//#define SI_NODRW
-#define _SI_NOSBXCONTROLS
-#define _VCATTR_HXX
-#define _VCONT_HXX
-//#define _VCSBX_HXX ***
-#define _SI_NOOTHERFORMS
-#define _VCTRLS_HXX
-//#define _VCDRWOBJ_HXX ***
-#define _SI_NOCONTROL
-#define _SETBRW_HXX
-#define _VCBRW_HXX
-#define _SI_NOSBXCONTROLS
-#define _SIDLL_HXX
-
-//------------------------------------------------------------------
-
#include <svx/svddef.hxx>
#include <svx/svdoutl.hxx>
#include <svx/outlobj.hxx>
@@ -317,6 +74,7 @@
#include <svx/sdtacitm.hxx>
#include <svx/svdotext.hxx>
#include <svx/svdview.hxx>
+#include <svx/unolingu.hxx>
#include <sfx2/bindings.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/viewfrm.hxx>
@@ -359,6 +117,13 @@ void lcl_InvalidateAttribs( SfxBindings& rBindings )
rBindings.Invalidate( SID_TEXTDIRECTION_TOP_TO_BOTTOM );
}
+void lcl_UpdateHyphenator( Outliner& rOutliner, SdrObject* pObj )
+{
+ // use hyphenator only if hyphenation attribute is set
+ if ( pObj && ((const SfxBoolItem&)pObj->GetItemSet().Get(EE_PARA_HYPHENATE)).GetValue() )
+ rOutliner.SetHyphenator( LinguMgr::GetHyphenator() );
+}
+
/*************************************************************************
|*
|* Basisklasse fuer Textfunktionen
@@ -449,6 +214,7 @@ BOOL __EXPORT FuText::MouseButtonDown(const MouseEvent& rMEvt)
pView->PickObj(aMDPos, pObj, pPV, SDRSEARCH_PICKTEXTEDIT) )
{
SdrOutliner* pO = MakeOutliner();
+ lcl_UpdateHyphenator( *pO, pObj );
// vertical flag:
// deduced from slot ids only if text object has no content
@@ -987,6 +753,7 @@ void FuText::SetInEditMode(SdrObject* pObj, const Point* pMousePixel)
if ( pObj->HasTextEdit() )
{
SdrOutliner* pO = MakeOutliner();
+ lcl_UpdateHyphenator( *pO, pObj );
// vertical flag:
// deduced from slot ids only if text object has no content
diff --git a/sc/source/ui/view/drawview.cxx b/sc/source/ui/view/drawview.cxx
index e2ca481d602e..6747ec757600 100644
--- a/sc/source/ui/view/drawview.cxx
+++ b/sc/source/ui/view/drawview.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: drawview.cxx,v $
*
- * $Revision: 1.10 $
+ * $Revision: 1.11 $
*
- * last change: $Author: nn $ $Date: 2001-05-11 08:37:53 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:17:27 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -284,6 +284,8 @@ void ScDrawView::InvalidateAttribs()
rBindings.Invalidate( SID_GRFFILTER_POPART );
rBindings.Invalidate( SID_GRFFILTER_SEPIA );
rBindings.Invalidate( SID_GRFFILTER_SOLARIZE );
+
+ rBindings.Invalidate( SID_ENABLE_HYPHENATION );
}
void ScDrawView::InvalidateDrawTextAttrs()
diff --git a/sc/source/ui/view/output3.cxx b/sc/source/ui/view/output3.cxx
index a648d028b4f5..4245d680bf78 100644
--- a/sc/source/ui/view/output3.cxx
+++ b/sc/source/ui/view/output3.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: output3.cxx,v $
*
- * $Revision: 1.4 $
+ * $Revision: 1.5 $
*
- * last change: $Author: nn $ $Date: 2001-05-14 08:43:38 $
+ * last change: $Author: nn $ $Date: 2001-05-21 18:17:27 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -67,6 +67,7 @@
// INCLUDE ---------------------------------------------------------------
+#include <svx/eeitem.hxx>
#include <svx/svdograf.hxx>
#include <svx/svdoole2.hxx>
#include <svx/svdpage.hxx>
@@ -292,6 +293,10 @@ void ScOutputData::DrawSelectiveObjects( USHORT nLayer, const Rectangle& rRect,
if (bDraw)
{
+ // set model's hyphenator on demand
+ if ( ((const SfxBoolItem&)pObject->GetItemSet().Get(EE_PARA_HYPHENATE)).GetValue() )
+ pModel->UseHyphenator();
+
if (pObject == pEditObj)
{
aInfoRec.nPaintMode|=SDRPAINTMODE_TEXTEDIT;