xref: /aoo41x/main/sd/source/ui/inc/drawview.hxx (revision 67e470da)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef SD_DRAW_VIEW_HXX
25 #define SD_DRAW_VIEW_HXX
26 
27 #include "View.hxx"
28 
29 
30 namespace sd {
31 
32 class DrawDocShell;
33 class DrawViewShell;
34 class FuSlideShow;
35 class SlideShow;
36 
37 #define SDDRAWVIEW_MAGIC  0x456789BA
38 
39 /*************************************************************************
40 |*
41 |* Ableitung von ::sd::View; enthaelt auch einen Zeiger auf das Dokument
42 |*
43 \************************************************************************/
44 
45 class DrawView : public ::sd::View
46 {
47 public:
48 	TYPEINFO();
49 
50     DrawView (
51         DrawDocShell* pDocSh,
52         OutputDevice* pOutDev,
53         DrawViewShell* pShell);
54 	virtual ~DrawView (void);
55 
56 	virtual void MarkListHasChanged();
57 	void CompleteRedraw(OutputDevice* pOutDev, const Region& rReg, sdr::contact::ViewObjectContactRedirector* pRedirector = 0L);
58 
59 	virtual sal_Bool SetAttributes(const SfxItemSet& rSet, sal_Bool bReplaceAll = sal_False);
60 
61 	virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint);
62 
63 	void	BlockPageOrderChangedHint(sal_Bool bBlock);
64 
65 	sal_Bool	SetStyleSheet(SfxStyleSheet* pStyleSheet, sal_Bool bDontRemoveHardAttr = sal_False);
66 	virtual sal_Bool IsObjMarkable(SdrObject* pObj, SdrPageView* pPV) const;
67 
68 	virtual void MakeVisible(const Rectangle& rRect, ::Window& rWin);
69 	virtual void HideSdrPage(); // SdrPageView* pPV);
70 
71 	void    PresPaint(const Region& rRegion);
72 
73 	virtual void DeleteMarked(); // from SdrView
74 protected:
75 	virtual void ModelHasChanged();
76 
77 private:
78 	friend class DrawViewRedirector;
79 
80 	DrawDocShell* 	mpDocShell;
81 	DrawViewShell*	mpDrawViewShell;
82 	VirtualDevice*	mpVDev;
83 
84 	sal_uInt16			mnPOCHSmph;	// zum blockieren des PageOrderChangedHint
85 };
86 
87 } // end of namespace sd
88 
89 #endif
90