1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: interno.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef _SFX_INTERNO_HXX
31 #define _SFX_INTERNO_HXX
33 #ifndef _IPOBJ_HXX //autogen
34 #include <bf_so3/ipobj.hxx>
36 #include "bf_sfx2/objsh.hxx"
37 #include "bf_sfx2/sfx.hrc"
41 struct SfxInPlaceObject_Impl
;
46 //=========================================================================
48 class SfxInPlaceObject
: public SvInPlaceObject
50 SfxObjectShell
* pObjShell
;
52 BOOL bTriggerLinkTimer
: 1;
53 BOOL bDisableViewScaling
: 1;
60 SO2_DECL_STANDARD_CLASS(SfxInPlaceObject
)
62 SfxObjectShell
* GetObjectShell() const { return pObjShell
; }
65 void SetShell( SfxObjectShell
*pObjSh
);
67 virtual void FillClass( SvGlobalName
* pClassName
,
70 String
* pLongUserName
,
72 long nVersion
= SOFFICE_FILEFORMAT_CURRENT
75 virtual BOOL
InitNew( SvStorage
* ); // Rekursiv
76 virtual BOOL
Load( SvStorage
* ); // Rekursiv
77 virtual BOOL
Save(); // Rekursiv
78 virtual BOOL
SaveAs( SvStorage
* pNewStg
); // Rekursiv
79 virtual void HandsOff(); // Rekursiv
80 virtual BOOL
SaveCompleted( SvStorage
* ); // Rekursiv
82 virtual ErrCode
Verb( long nVerbPos
,
83 SvEmbeddedClient
*pCaller
,
85 const Rectangle
*pWorkAreaPixel
);
86 virtual BOOL
Verb( long nVerbPos
, const Rectangle
*pWorkAreaPixel
);
87 virtual void Embed( BOOL bEmbedded
);
88 virtual void Open( BOOL bOpen
);
89 virtual void InPlaceActivate( BOOL
);
90 virtual void DocumentNameChanged( const String
& rDocName
);
92 virtual ~SfxInPlaceObject();
97 void SetTriggerLinkTimer( BOOL bSet
)
98 { bTriggerLinkTimer
= bSet
; }
101 virtual void SetVisArea( const Rectangle
& rVisArea
);
103 void SetModified( BOOL bSet
);
104 void DisableViewScaling( BOOL bSet
)
105 { bDisableViewScaling
= bSet
; }
106 BOOL
IsViewScalingDisabled()
107 { return bDisableViewScaling
; }
110 #ifndef SFX_DECL_INTERNALOBJECT_DEFINED
111 #define SFX_DECL_INTERNALOBJECT_DEFINED
112 SO2_DECL_REF(SfxInPlaceObject
)
114 SO2_IMPL_REF(SfxInPlaceObject
)
117 class SfxForceLinkTimer_Impl
119 SfxInPlaceObject
*pInObj
;
122 SfxForceLinkTimer_Impl( SfxObjectShell
*pObj
);
123 ~SfxForceLinkTimer_Impl()
124 { if( pInObj
) pInObj
->SetTriggerLinkTimer( TRUE
); }
129 }//end of namespace binfilter