1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski #ifndef _SC_ACCESSIBLETEXT_HXX 25*b1cdbd2cSJim Jagielski #define _SC_ACCESSIBLETEXT_HXX 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski #include "textuno.hxx" 28*b1cdbd2cSJim Jagielski #include "global.hxx" 29*b1cdbd2cSJim Jagielski #include "viewdata.hxx" 30*b1cdbd2cSJim Jagielski #include <editeng/svxenum.hxx> 31*b1cdbd2cSJim Jagielski 32*b1cdbd2cSJim Jagielski #include <memory> 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski class ScDocShell; 35*b1cdbd2cSJim Jagielski class ScViewForwarder; 36*b1cdbd2cSJim Jagielski class ScEditObjectViewForwarder; 37*b1cdbd2cSJim Jagielski class ScPreviewViewForwarder; 38*b1cdbd2cSJim Jagielski class ScEditViewForwarder; 39*b1cdbd2cSJim Jagielski class ScPreviewShell; 40*b1cdbd2cSJim Jagielski class EditTextObject; 41*b1cdbd2cSJim Jagielski class ScCsvViewForwarder; 42*b1cdbd2cSJim Jagielski class ScAccessibleCell; 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim Jagielski 45*b1cdbd2cSJim Jagielski // ============================================================================ 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski class ScAccessibleTextData : public SfxListener 48*b1cdbd2cSJim Jagielski { 49*b1cdbd2cSJim Jagielski public: ScAccessibleTextData()50*b1cdbd2cSJim Jagielski ScAccessibleTextData() {} ~ScAccessibleTextData()51*b1cdbd2cSJim Jagielski virtual ~ScAccessibleTextData() {} 52*b1cdbd2cSJim Jagielski 53*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const = 0; 54*b1cdbd2cSJim Jagielski Notify(SfxBroadcaster &,const SfxHint &)55*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& /* rBC */, const SfxHint& /* rHint */ ) {} 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder() = 0; 58*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder() = 0; 59*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool bCreate ) = 0; GetBroadcaster() const60*b1cdbd2cSJim Jagielski virtual SfxBroadcaster& GetBroadcaster() const { return maBroadcaster; } 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielski virtual void UpdateData() = 0; 63*b1cdbd2cSJim Jagielski virtual void SetDoUpdate(sal_Bool bValue) = 0; 64*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const = 0; 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim Jagielski private: 67*b1cdbd2cSJim Jagielski mutable SfxBroadcaster maBroadcaster; 68*b1cdbd2cSJim Jagielski 69*b1cdbd2cSJim Jagielski // prevent the using of this method of the base class GetOriginalSource()70*b1cdbd2cSJim Jagielski ScSharedCellEditSource* GetOriginalSource() { return NULL; } 71*b1cdbd2cSJim Jagielski }; 72*b1cdbd2cSJim Jagielski 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski // ============================================================================ 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim Jagielski class ScAccessibleCellBaseTextData : public ScAccessibleTextData, 77*b1cdbd2cSJim Jagielski public ScCellTextData 78*b1cdbd2cSJim Jagielski { 79*b1cdbd2cSJim Jagielski public: ScAccessibleCellBaseTextData(ScDocShell * pDocShellP,const ScAddress & rP)80*b1cdbd2cSJim Jagielski ScAccessibleCellBaseTextData(ScDocShell* pDocShellP, 81*b1cdbd2cSJim Jagielski const ScAddress& rP) 82*b1cdbd2cSJim Jagielski : ScCellTextData(pDocShellP, rP) {} ~ScAccessibleCellBaseTextData()83*b1cdbd2cSJim Jagielski virtual ~ScAccessibleCellBaseTextData() {} Notify(SfxBroadcaster & rBC,const SfxHint & rHint)84*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) { ScCellTextData::Notify(rBC, rHint); } 85*b1cdbd2cSJim Jagielski UpdateData()86*b1cdbd2cSJim Jagielski virtual void UpdateData() { ScCellTextData::UpdateData(); } SetDoUpdate(sal_Bool bValue)87*b1cdbd2cSJim Jagielski virtual void SetDoUpdate(sal_Bool bValue) { ScCellTextData::SetDoUpdate(bValue); } IsDirty() const88*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const { return ScCellTextData::IsDirty(); } 89*b1cdbd2cSJim Jagielski }; 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski 92*b1cdbd2cSJim Jagielski // ============================================================================ 93*b1cdbd2cSJim Jagielski 94*b1cdbd2cSJim Jagielski // ScAccessibleCellTextData: shared data between sub objects of a accessible cell text object 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim Jagielski class ScAccessibleCellTextData : public ScAccessibleCellBaseTextData 97*b1cdbd2cSJim Jagielski { 98*b1cdbd2cSJim Jagielski public: 99*b1cdbd2cSJim Jagielski ScAccessibleCellTextData(ScTabViewShell* pViewShell, 100*b1cdbd2cSJim Jagielski const ScAddress& rP, ScSplitPos eSplitPos, ScAccessibleCell* pAccCell); 101*b1cdbd2cSJim Jagielski virtual ~ScAccessibleCellTextData(); 102*b1cdbd2cSJim Jagielski 103*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 108*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); 109*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool bCreate ); 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim Jagielski DECL_LINK( NotifyHdl, EENotify* ); 112*b1cdbd2cSJim Jagielski protected: 113*b1cdbd2cSJim Jagielski virtual void GetCellText(const ScAddress& rCellPos, String& rText); 114*b1cdbd2cSJim Jagielski private: 115*b1cdbd2cSJim Jagielski ScViewForwarder* mpViewForwarder; 116*b1cdbd2cSJim Jagielski ScEditViewForwarder* mpEditViewForwarder; 117*b1cdbd2cSJim Jagielski ScTabViewShell* mpViewShell; 118*b1cdbd2cSJim Jagielski ScSplitPos meSplitPos; 119*b1cdbd2cSJim Jagielski sal_Bool mbViewEditEngine; 120*b1cdbd2cSJim Jagielski ScAccessibleCell* mpAccessibleCell; 121*b1cdbd2cSJim Jagielski 122*b1cdbd2cSJim Jagielski // prevent the using of this method of the base class GetOriginalSource()123*b1cdbd2cSJim Jagielski ScSharedCellEditSource* GetOriginalSource() { return NULL; } 124*b1cdbd2cSJim Jagielski 125*b1cdbd2cSJim Jagielski using ScAccessibleCellBaseTextData::GetDocShell; 126*b1cdbd2cSJim Jagielski ScDocShell* GetDocShell(ScTabViewShell* pViewShell); 127*b1cdbd2cSJim Jagielski }; 128*b1cdbd2cSJim Jagielski 129*b1cdbd2cSJim Jagielski 130*b1cdbd2cSJim Jagielski // ============================================================================ 131*b1cdbd2cSJim Jagielski 132*b1cdbd2cSJim Jagielski class ScAccessibleEditObjectTextData : public ScAccessibleTextData 133*b1cdbd2cSJim Jagielski { 134*b1cdbd2cSJim Jagielski public: 135*b1cdbd2cSJim Jagielski // Solution: Add a para to indicate whether the object is cloned 136*b1cdbd2cSJim Jagielski //ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin); 137*b1cdbd2cSJim Jagielski ScAccessibleEditObjectTextData(EditView* pEditView, Window* pWin, sal_Bool isClone=sal_False); 138*b1cdbd2cSJim Jagielski virtual ~ScAccessibleEditObjectTextData(); 139*b1cdbd2cSJim Jagielski 140*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 141*b1cdbd2cSJim Jagielski 142*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 145*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); 146*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool bCreate ); 147*b1cdbd2cSJim Jagielski UpdateData()148*b1cdbd2cSJim Jagielski virtual void UpdateData() { } SetDoUpdate(sal_Bool)149*b1cdbd2cSJim Jagielski virtual void SetDoUpdate(sal_Bool /* bValue */) { } IsDirty() const150*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const { return sal_False; } 151*b1cdbd2cSJim Jagielski 152*b1cdbd2cSJim Jagielski DECL_LINK( NotifyHdl, EENotify* ); 153*b1cdbd2cSJim Jagielski protected: 154*b1cdbd2cSJim Jagielski ScEditObjectViewForwarder* mpViewForwarder; 155*b1cdbd2cSJim Jagielski ScEditViewForwarder* mpEditViewForwarder; 156*b1cdbd2cSJim Jagielski EditView* mpEditView; 157*b1cdbd2cSJim Jagielski EditEngine* mpEditEngine; 158*b1cdbd2cSJim Jagielski SvxEditEngineForwarder* mpForwarder; 159*b1cdbd2cSJim Jagielski Window* mpWindow; 160*b1cdbd2cSJim Jagielski sal_Bool mbIsCloned; 161*b1cdbd2cSJim Jagielski }; 162*b1cdbd2cSJim Jagielski 163*b1cdbd2cSJim Jagielski 164*b1cdbd2cSJim Jagielski // ============================================================================ 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim Jagielski class ScAccessibleEditLineTextData : public ScAccessibleEditObjectTextData 167*b1cdbd2cSJim Jagielski { 168*b1cdbd2cSJim Jagielski public: 169*b1cdbd2cSJim Jagielski ScAccessibleEditLineTextData(EditView* pEditView, Window* pWin); 170*b1cdbd2cSJim Jagielski virtual ~ScAccessibleEditLineTextData(); 171*b1cdbd2cSJim Jagielski 172*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 173*b1cdbd2cSJim Jagielski 174*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 175*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool bCreate ); 176*b1cdbd2cSJim Jagielski 177*b1cdbd2cSJim Jagielski void Dispose(); 178*b1cdbd2cSJim Jagielski void TextChanged(); 179*b1cdbd2cSJim Jagielski void StartEdit(); 180*b1cdbd2cSJim Jagielski void EndEdit(); 181*b1cdbd2cSJim Jagielski private: 182*b1cdbd2cSJim Jagielski void ResetEditMode(); 183*b1cdbd2cSJim Jagielski 184*b1cdbd2cSJim Jagielski sal_Bool mbEditEngineCreated; 185*b1cdbd2cSJim Jagielski }; 186*b1cdbd2cSJim Jagielski 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim Jagielski // ============================================================================ 189*b1cdbd2cSJim Jagielski 190*b1cdbd2cSJim Jagielski class ScAccessiblePreviewCellTextData : public ScAccessibleCellBaseTextData 191*b1cdbd2cSJim Jagielski { 192*b1cdbd2cSJim Jagielski public: 193*b1cdbd2cSJim Jagielski ScAccessiblePreviewCellTextData(ScPreviewShell* pViewShell, 194*b1cdbd2cSJim Jagielski const ScAddress& rP); 195*b1cdbd2cSJim Jagielski virtual ~ScAccessiblePreviewCellTextData(); 196*b1cdbd2cSJim Jagielski 197*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 198*b1cdbd2cSJim Jagielski 199*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 200*b1cdbd2cSJim Jagielski 201*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 202*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); GetEditViewForwarder(sal_Bool)203*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool /* bCreate */ ) { return NULL; } 204*b1cdbd2cSJim Jagielski 205*b1cdbd2cSJim Jagielski //UNUSED2008-05 DECL_LINK( NotifyHdl, EENotify* ); 206*b1cdbd2cSJim Jagielski private: 207*b1cdbd2cSJim Jagielski ScPreviewViewForwarder* mpViewForwarder; 208*b1cdbd2cSJim Jagielski ScPreviewShell* mpViewShell; 209*b1cdbd2cSJim Jagielski 210*b1cdbd2cSJim Jagielski // prevent the using of this method of the base class GetOriginalSource()211*b1cdbd2cSJim Jagielski ScSharedCellEditSource* GetOriginalSource() { return NULL; } 212*b1cdbd2cSJim Jagielski 213*b1cdbd2cSJim Jagielski using ScAccessibleCellBaseTextData::GetDocShell; 214*b1cdbd2cSJim Jagielski ScDocShell* GetDocShell(ScPreviewShell* pViewShell); 215*b1cdbd2cSJim Jagielski }; 216*b1cdbd2cSJim Jagielski 217*b1cdbd2cSJim Jagielski 218*b1cdbd2cSJim Jagielski // ============================================================================ 219*b1cdbd2cSJim Jagielski 220*b1cdbd2cSJim Jagielski class ScAccessiblePreviewHeaderCellTextData : public ScAccessibleCellBaseTextData 221*b1cdbd2cSJim Jagielski { 222*b1cdbd2cSJim Jagielski public: 223*b1cdbd2cSJim Jagielski ScAccessiblePreviewHeaderCellTextData(ScPreviewShell* pViewShell, 224*b1cdbd2cSJim Jagielski const String& rText, const ScAddress& rP, sal_Bool bColHeader, sal_Bool bRowHeader); 225*b1cdbd2cSJim Jagielski virtual ~ScAccessiblePreviewHeaderCellTextData(); 226*b1cdbd2cSJim Jagielski 227*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 228*b1cdbd2cSJim Jagielski 229*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 230*b1cdbd2cSJim Jagielski 231*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 232*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); GetEditViewForwarder(sal_Bool)233*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool /* bCreate */ ) { return NULL; } 234*b1cdbd2cSJim Jagielski 235*b1cdbd2cSJim Jagielski //UNUSED2008-05 DECL_LINK( NotifyHdl, EENotify* ); 236*b1cdbd2cSJim Jagielski private: 237*b1cdbd2cSJim Jagielski ScPreviewViewForwarder* mpViewForwarder; 238*b1cdbd2cSJim Jagielski ScPreviewShell* mpViewShell; 239*b1cdbd2cSJim Jagielski String maText; 240*b1cdbd2cSJim Jagielski sal_Bool mbColHeader; 241*b1cdbd2cSJim Jagielski sal_Bool mbRowHeader; 242*b1cdbd2cSJim Jagielski 243*b1cdbd2cSJim Jagielski // prevent the using of this method of the base class GetOriginalSource()244*b1cdbd2cSJim Jagielski ScSharedCellEditSource* GetOriginalSource() { return NULL; } 245*b1cdbd2cSJim Jagielski 246*b1cdbd2cSJim Jagielski using ScAccessibleCellBaseTextData::GetDocShell; 247*b1cdbd2cSJim Jagielski ScDocShell* GetDocShell(ScPreviewShell* pViewShell); 248*b1cdbd2cSJim Jagielski }; 249*b1cdbd2cSJim Jagielski 250*b1cdbd2cSJim Jagielski 251*b1cdbd2cSJim Jagielski // ============================================================================ 252*b1cdbd2cSJim Jagielski 253*b1cdbd2cSJim Jagielski class ScAccessibleHeaderTextData : public ScAccessibleTextData 254*b1cdbd2cSJim Jagielski { 255*b1cdbd2cSJim Jagielski public: 256*b1cdbd2cSJim Jagielski ScAccessibleHeaderTextData(ScPreviewShell* pViewShell, 257*b1cdbd2cSJim Jagielski const EditTextObject* pEditObj, sal_Bool bHeader, SvxAdjust eAdjust); 258*b1cdbd2cSJim Jagielski virtual ~ScAccessibleHeaderTextData(); 259*b1cdbd2cSJim Jagielski 260*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 261*b1cdbd2cSJim Jagielski 262*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 263*b1cdbd2cSJim Jagielski 264*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 265*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); GetEditViewForwarder(sal_Bool)266*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool /* bCreate */ ) { return NULL; } 267*b1cdbd2cSJim Jagielski UpdateData()268*b1cdbd2cSJim Jagielski virtual void UpdateData() { } SetDoUpdate(sal_Bool)269*b1cdbd2cSJim Jagielski virtual void SetDoUpdate(sal_Bool /* bValue */) { } IsDirty() const270*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const { return sal_False; } 271*b1cdbd2cSJim Jagielski private: 272*b1cdbd2cSJim Jagielski ScPreviewViewForwarder* mpViewForwarder; 273*b1cdbd2cSJim Jagielski ScPreviewShell* mpViewShell; 274*b1cdbd2cSJim Jagielski ScEditEngineDefaulter* mpEditEngine; 275*b1cdbd2cSJim Jagielski SvxEditEngineForwarder* mpForwarder; 276*b1cdbd2cSJim Jagielski ScDocShell* mpDocSh; 277*b1cdbd2cSJim Jagielski const EditTextObject* mpEditObj; 278*b1cdbd2cSJim Jagielski sal_Bool mbHeader; 279*b1cdbd2cSJim Jagielski sal_Bool mbDataValid; 280*b1cdbd2cSJim Jagielski SvxAdjust meAdjust; 281*b1cdbd2cSJim Jagielski }; 282*b1cdbd2cSJim Jagielski 283*b1cdbd2cSJim Jagielski 284*b1cdbd2cSJim Jagielski // ============================================================================ 285*b1cdbd2cSJim Jagielski 286*b1cdbd2cSJim Jagielski class ScAccessibleNoteTextData : public ScAccessibleTextData 287*b1cdbd2cSJim Jagielski { 288*b1cdbd2cSJim Jagielski public: 289*b1cdbd2cSJim Jagielski ScAccessibleNoteTextData(ScPreviewShell* pViewShell, 290*b1cdbd2cSJim Jagielski const String& sText, const ScAddress& aCellPos, sal_Bool bMarkNote); 291*b1cdbd2cSJim Jagielski virtual ~ScAccessibleNoteTextData(); 292*b1cdbd2cSJim Jagielski 293*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 294*b1cdbd2cSJim Jagielski 295*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 296*b1cdbd2cSJim Jagielski 297*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 298*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); GetEditViewForwarder(sal_Bool)299*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool /* bCreate */ ) { return NULL; } 300*b1cdbd2cSJim Jagielski UpdateData()301*b1cdbd2cSJim Jagielski virtual void UpdateData() { } SetDoUpdate(sal_Bool)302*b1cdbd2cSJim Jagielski virtual void SetDoUpdate(sal_Bool /* bValue */) { } IsDirty() const303*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const { return sal_False; } 304*b1cdbd2cSJim Jagielski private: 305*b1cdbd2cSJim Jagielski ScPreviewViewForwarder* mpViewForwarder; 306*b1cdbd2cSJim Jagielski ScPreviewShell* mpViewShell; 307*b1cdbd2cSJim Jagielski ScEditEngineDefaulter* mpEditEngine; 308*b1cdbd2cSJim Jagielski SvxEditEngineForwarder* mpForwarder; 309*b1cdbd2cSJim Jagielski ScDocShell* mpDocSh; 310*b1cdbd2cSJim Jagielski String msText; 311*b1cdbd2cSJim Jagielski ScAddress maCellPos; 312*b1cdbd2cSJim Jagielski sal_Bool mbMarkNote; 313*b1cdbd2cSJim Jagielski sal_Bool mbDataValid; 314*b1cdbd2cSJim Jagielski }; 315*b1cdbd2cSJim Jagielski 316*b1cdbd2cSJim Jagielski 317*b1cdbd2cSJim Jagielski // ============================================================================ 318*b1cdbd2cSJim Jagielski 319*b1cdbd2cSJim Jagielski class ScAccessibleCsvTextData : public ScAccessibleTextData 320*b1cdbd2cSJim Jagielski { 321*b1cdbd2cSJim Jagielski private: 322*b1cdbd2cSJim Jagielski typedef ::std::auto_ptr< SvxTextForwarder > TextForwarderPtr; 323*b1cdbd2cSJim Jagielski typedef ::std::auto_ptr< ScCsvViewForwarder > ViewForwarderPtr; 324*b1cdbd2cSJim Jagielski 325*b1cdbd2cSJim Jagielski Window* mpWindow; 326*b1cdbd2cSJim Jagielski EditEngine* mpEditEngine; 327*b1cdbd2cSJim Jagielski TextForwarderPtr mpTextForwarder; 328*b1cdbd2cSJim Jagielski ViewForwarderPtr mpViewForwarder; 329*b1cdbd2cSJim Jagielski String maCellText; 330*b1cdbd2cSJim Jagielski Rectangle maBoundBox; 331*b1cdbd2cSJim Jagielski Size maCellSize; 332*b1cdbd2cSJim Jagielski 333*b1cdbd2cSJim Jagielski public: 334*b1cdbd2cSJim Jagielski explicit ScAccessibleCsvTextData( 335*b1cdbd2cSJim Jagielski Window* pWindow, 336*b1cdbd2cSJim Jagielski EditEngine* pEditEngine, 337*b1cdbd2cSJim Jagielski const String& rCellText, 338*b1cdbd2cSJim Jagielski const Rectangle& rBoundBox, 339*b1cdbd2cSJim Jagielski const Size& rCellSize ); 340*b1cdbd2cSJim Jagielski virtual ~ScAccessibleCsvTextData(); 341*b1cdbd2cSJim Jagielski 342*b1cdbd2cSJim Jagielski virtual ScAccessibleTextData* Clone() const; 343*b1cdbd2cSJim Jagielski 344*b1cdbd2cSJim Jagielski virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ); 345*b1cdbd2cSJim Jagielski 346*b1cdbd2cSJim Jagielski virtual SvxTextForwarder* GetTextForwarder(); 347*b1cdbd2cSJim Jagielski virtual SvxViewForwarder* GetViewForwarder(); 348*b1cdbd2cSJim Jagielski virtual SvxEditViewForwarder* GetEditViewForwarder( sal_Bool bCreate ); 349*b1cdbd2cSJim Jagielski UpdateData()350*b1cdbd2cSJim Jagielski virtual void UpdateData() {} SetDoUpdate(sal_Bool)351*b1cdbd2cSJim Jagielski virtual void SetDoUpdate( sal_Bool /* bValue */ ) {} IsDirty() const352*b1cdbd2cSJim Jagielski virtual sal_Bool IsDirty() const { return sal_False; } 353*b1cdbd2cSJim Jagielski }; 354*b1cdbd2cSJim Jagielski 355*b1cdbd2cSJim Jagielski 356*b1cdbd2cSJim Jagielski // ============================================================================ 357*b1cdbd2cSJim Jagielski 358*b1cdbd2cSJim Jagielski #endif 359