LibreOffice Module svx (master)  1
svdpntv.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #ifndef INCLUDED_SVX_SVDPNTV_HXX
21 #define INCLUDED_SVX_SVDPNTV_HXX
22 
23 #include <svl/SfxBroadcaster.hxx>
24 #include <svl/lstner.hxx>
25 #include <svl/undo.hxx>
26 #include <svx/svddrag.hxx>
27 #include <svx/svdlayer.hxx>
28 #include <vcl/window.hxx>
29 #include <svtools/colorcfg.hxx>
30 #include <svl/itemset.hxx>
31 #include <vcl/timer.hxx>
32 #include <svx/svxdllapi.h>
34 #include <unotools/options.hxx>
35 #include <vcl/idle.hxx>
36 #include <memory>
37 
38 
39 // Pre defines
40 class SdrPageWindow;
41 
42 namespace com::sun::star::awt {
43  class XControlContainer;
44 }
45 namespace sdr::overlay { class OverlayManager; }
46 
47 class SdrPage;
48 class SdrView;
49 class SfxItemSet;
50 class SfxStyleSheet;
51 class SdrOle2Obj;
52 class SdrModel;
53 class SdrObject;
54 enum class GraphicManagerDrawFlags;
55 
56 namespace sdr::contact {
57  class ViewObjectContactRedirector;
58 }
59 
60 
61 // Defines for AnimationMode
62 enum class SdrAnimationMode
63 {
64  Animate,
65  Disable
66 };
67 
68 
69 class SdrPaintView;
70 namespace sdr::contact { class ViewObjectContactRedirector; }
71 
72 
73 
74 class SvxViewChangedHint final : public SfxHint
75 {
76 public:
77  explicit SvxViewChangedHint();
78 };
79 
80 class SdrPaintWindow;
81 
87  const GDIMetaFile& rMtf,
88  const basegfx::B2DRange& rTargetRange,
89  const sal_uInt32 nMaximumQuadraticPixels);
90 
92 //
93 // SdrPaintView
94 // SdrSnapView
95 // SdrMarkView
96 // SdrEditView
97 // SdrPolyEditView
98 // SdrGlueEditView
99 // SdrObjEditView
100 // SdrExchangeView
101 // SdrDragView
102 // SdrCreateView
103 // SdrView
104 // DlgEdView
105 // GraphCtrlView
106 // E3dView
107 // DrawViewWrapper
108 // FmFormView
109 // ScDrawView
110 // sd::View (may have more?)
111 // sd::DrawView
112 // SwDrawView
113 // OSectionView
114 
116 {
117 private:
118  friend class SdrPageView;
119  friend class SdrGrafObj;
120 
121  // the SdrModel this view was created with, unchanged during lifetime
123 
124  std::unique_ptr<SdrPageView> mpPageView;
125 protected:
127  VclPtr<OutputDevice> mpActualOutDev; // Only for comparison
130 
131  OUString maActualLayer; // Current drawing layer
132  OUString maMeasureLayer; // Current layer for measurements
133 
134 // Container aPagV; // List of SdrPageViews
135 
136  // All windows this view is displayed on
137  std::vector< std::unique_ptr<SdrPaintWindow> > maPaintWindows;
138 
139  Size maGridBig; // FIXME: We need to get rid of this eventually
140  Size maGridFin; // FIXME: We need to get rid of this eventually
145 
147 
148  sal_uInt16 mnHitTolPix;
149  sal_uInt16 mnMinMovPix;
150  sal_uInt16 mnHitTolLog;
151  sal_uInt16 mnMinMovLog;
152 
153  // Hold an incarnation of Drawinglayer configuration options
155 
156  bool mbPageVisible : 1;
157  bool mbPageShadowVisible : 1;
158  bool mbPageBorderVisible : 1;
159  bool mbBordVisible : 1;
160  bool mbGridVisible : 1;
161  bool mbGridFront : 1;
162  bool mbHlplVisible : 1;
163  bool mbHlplFront : 1;
164  bool mbGlueVisible : 1; // Persistent; show glue points
165  bool mbGlueVisible2 : 1; // Also show glue points for GluePointEdit
166  bool mbGlueVisible3 : 1; // Also show glue points for EdgeTool
167  bool mbGlueVisible4 : 1; // Show glue points, if one edge is selected
168  bool mbSomeObjChgdFlag : 1;
169  bool mbSwapAsynchron : 1;
170  bool mbPrintPreview : 1;
171 
172  // These bools manage, the status that is displayed
173  //
174  bool mbAnimationPause : 1;
175 
176  // Flag which decides if buffered output for this view is allowed. When
177  // set, PreRendering for PageView rendering will be used. Default is sal_False
178  bool mbBufferedOutputAllowed : 1;
179 
180  // Flag which decides if buffered overlay for this view is allowed. When
181  // set, the output will be buffered in an overlay vdev. When not, overlay is
182  // directly painted to OutDev. Default is sal_False.
183  bool mbBufferedOverlayAllowed : 1;
184 
185  // Allow page painting at all?
186  bool mbPagePaintingAllowed : 1;
187 
188  // Is this a preview renderer?
189  bool mbPreviewRenderer : 1;
190 
191  // Flags for calc and sw for suppressing OLE, CHART or DRAW objects
192  bool mbHideOle : 1;
193  bool mbHideChart : 1;
194  bool mbHideDraw : 1; // hide draw objects other than form controls
195  bool mbHideFormControl : 1; // hide form controls only
196 
197 public:
198  // Interface for PagePaintingAllowed flag
199  bool IsBufferedOutputAllowed() const;
200  void SetBufferedOutputAllowed(bool bNew);
201 
202  // Interface for BufferedOverlayAllowed flag
203  bool IsBufferedOverlayAllowed() const;
204  void SetBufferedOverlayAllowed(bool bNew);
205 
206  // Allow page painting at all?
207  bool IsPagePaintingAllowed() const { return mbPagePaintingAllowed;}
208  void SetPagePaintingAllowed(bool bNew);
209 
210  virtual rtl::Reference<sdr::overlay::OverlayManager> CreateOverlayManager(OutputDevice& rDevice) const;
211 
212 protected:
215 
216  // Interface to SdrPaintWindow
217  void DeletePaintWindow(SdrPaintWindow& rOld);
219  void InitOverlayManager(rtl::Reference<sdr::overlay::OverlayManager> xOverlayManager) const;
220 
221 public:
222  sal_uInt32 PaintWindowCount() const { return maPaintWindows.size(); }
223  SdrPaintWindow* FindPaintWindow(const OutputDevice& rOut) const;
224  SdrPaintWindow* GetPaintWindow(sal_uInt32 nIndex) const;
225  // Replacement for GetWin(0), may return 0L (!)
226  OutputDevice* GetFirstOutputDevice() const;
227 
228 private:
229  DECL_LINK(ImpComeBackHdl, Timer*, void);
230 
231 protected:
232  sal_uInt16 ImpGetMinMovLogic(short nMinMov, const OutputDevice* pOut) const;
233  sal_uInt16 ImpGetHitTolLogic(short nHitTol, const OutputDevice* pOut) const;
234 
235  // If one does not want to wait for the IdleState of the system (cheated as const)
236  void FlushComeBackTimer() const;
237  void TheresNewMapMode();
238  void ImpSetGlueVisible2(bool bOn) { if (mbGlueVisible2!=bOn) { mbGlueVisible2=bOn; if (!mbGlueVisible && !mbGlueVisible3 && !mbGlueVisible4) GlueInvalidate(); } }
239  void ImpSetGlueVisible3(bool bOn) { if (mbGlueVisible3!=bOn) { mbGlueVisible3=bOn; if (!mbGlueVisible && !mbGlueVisible2 && !mbGlueVisible4) GlueInvalidate(); } }
240  void ImpSetGlueVisible4(bool bOn) { if (mbGlueVisible4!=bOn) { mbGlueVisible4=bOn; if (!mbGlueVisible && !mbGlueVisible2 && !mbGlueVisible3) GlueInvalidate(); } }
241 
242 public:
243  bool ImpIsGlueVisible() { return mbGlueVisible || mbGlueVisible2 || mbGlueVisible3 || mbGlueVisible4; }
244 
245 protected:
246  virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
247  void GlueInvalidate() const;
248 
249  // ModelHasChanged is called, as soon as the system is idle again after many SdrHintKind::ObjectChange.
250  //
251  // Any sub-class override this method, MUST call the base class' ModelHasChanged() method
252  virtual void ModelHasChanged();
253 
254  // #i71538# make constructors of SdrView sub-components protected to avoid incomplete incarnations which may get casted to SdrView
255  // A SdrView always needs a SdrModel for lifetime (Pool, ...)
256  SdrPaintView(SdrModel& rSdrModel, OutputDevice* pOut);
257  virtual ~SdrPaintView() override;
258 
259 public:
260  // SdrModel access on SdrView level
261  SdrModel& getSdrModelFromSdrView() const { return mrSdrModelFromSdrView; }
262 
263  virtual void ClearPageView();
264  SdrModel* GetModel() const { return mpModel; }
265 
266  virtual bool IsAction() const;
267  virtual void MovAction(const Point& rPnt);
268  virtual void EndAction();
269  virtual void BckAction();
270  virtual void BrkAction(); // Cancel all Actions (e.g. cancel dragging)
271  virtual void TakeActionRect(tools::Rectangle& rRect) const;
272 
273  // Info about TextEdit. Default is sal_False.
274  virtual bool IsTextEdit() const;
275 
276  // Must be called for every Window change as well as MapMode (Scaling) change:
277  // If the SdrView is shown in multiple windows at the same time (e.g.
278  // using the split pane), so that I can convert my pixel values to logical
279  // values.
280  void SetActualWin(const OutputDevice* pWin);
281  void SetMinMoveDistancePixel(sal_uInt16 nVal) { mnMinMovPix=nVal; TheresNewMapMode(); }
282  void SetHitTolerancePixel(sal_uInt16 nVal) { mnHitTolPix=nVal; TheresNewMapMode(); }
283  sal_uInt16 GetHitTolerancePixel() const { return mnHitTolPix; }
284 
285  // Data read access on logic HitTolerance and MinMoveTolerance
286  sal_uInt16 getHitTolLog() const { return mnHitTolLog; }
287 
288  // Using the DragState we can tell e.g. which distance was
289  // already dragged
290  const SdrDragStat& GetDragStat() const { return maDragStat; }
291 
292  // Registering/de-registering a PageView at a View
293  //
294  // The same Page cannot be registered multiple times.
295  //
296  // Methods ending in PgNum expect being passed a Page number.
297  // Methods ending in PvNum, instead, expect the number of the
298  // PageView at the SdrView (iterating over all registered Pages).
299  virtual SdrPageView* ShowSdrPage(SdrPage* pPage);
300  virtual void HideSdrPage();
301 
302  // Iterate over all registered PageViews
303  SdrPageView* GetSdrPageView() const { return mpPageView.get(); }
304 
305  // A SdrView can be displayed on multiple Windows at the same time
306  virtual void AddWindowToPaintView(OutputDevice* pNewWin, vcl::Window* pWindow);
307  virtual void DeleteWindowFromPaintView(OutputDevice* pOldWin);
308 
309  void SetLayerVisible(const OUString& rName, bool bShow);
310  bool IsLayerVisible(const OUString& rName) const;
311 
312  void SetLayerLocked(const OUString& rName, bool bLock=true);
313  bool IsLayerLocked(const OUString& rName) const;
314 
315  void SetLayerPrintable(const OUString& rName, bool bPrn);
316  bool IsLayerPrintable(const OUString& rName) const;
317 
318  // PrePaint call forwarded from app windows
319  void PrePaint();
320 
321 
322  // Used internally for Draw/Impress/sch/chart2
323  virtual void CompleteRedraw(OutputDevice* pOut, const vcl::Region& rReg, sdr::contact::ViewObjectContactRedirector* pRedirector = nullptr);
324 
325  // #i72889# used from CompleteRedraw() implementation internally, added to be able to do a complete redraw in single steps
326 
327  // BeginCompleteRedraw returns (or even creates) a SdrPaintWindow which will then be used as the
328  // target for paints. Since paints may be buffered, use its GetTargetOutputDevice() method which will
329  // return the buffer in case it's buffered.
330  //
331  // DoCompleteRedraw then draws the DrawingLayer hierarchy
332  // EndCompleteRedraw does the necessary refreshes, paints text edit and overlay as well as destroys the
333  // SdrPaintWindow again, if needed.
334  // This means: the SdrPaintWindow is no longer safe after this closing call.
335  virtual SdrPaintWindow* BeginCompleteRedraw(OutputDevice* pOut);
336  void DoCompleteRedraw(SdrPaintWindow& rPaintWindow, const vcl::Region& rReg, sdr::contact::ViewObjectContactRedirector* pRedirector = nullptr);
337  virtual void EndCompleteRedraw(SdrPaintWindow& rPaintWindow, bool bPaintFormLayer);
338 
339 
340  // Used for the other applications basctl/sc/sw which call DrawLayer at PageViews
341  // #i74769# Interface change to use common BeginCompleteRedraw/EndCompleteRedraw
342  // #i76114# bDisableIntersect disables intersecting rReg with the Window's paint region
343  SdrPaintWindow* BeginDrawLayers(OutputDevice* pOut, const vcl::Region& rReg, bool bDisableIntersect = false);
344 
345  // Used when the region passed to BeginDrawLayers needs to be changed
346  void UpdateDrawLayersRegion(OutputDevice* pOut, const vcl::Region& rReg);
347  void EndDrawLayers(SdrPaintWindow& rPaintWindow, bool bPaintFormLayer);
348 
349 protected:
350 
351  // Used to paint the form layer after the PreRender device is flushed (painted) to the window.
352  void ImpFormLayerDrawing( SdrPaintWindow& rPaintWindow );
353 
354  static vcl::Region OptimizeDrawLayersRegion(OutputDevice* pOut, const vcl::Region& rReg, bool bDisableIntersect);
355 
356 public:
358  bool IsPageVisible() const { return mbPageVisible; }
359 
361  bool IsPageShadowVisible() const { return mbPageShadowVisible; }
362 
364  bool IsPageBorderVisible() const { return mbPageBorderVisible; }
365 
367  bool IsBordVisible() const { return mbBordVisible; }
368 
370  bool IsGridVisible() const { return mbGridVisible; }
371 
373  bool IsGridFront() const { return mbGridFront ; }
374 
376  bool IsHlplVisible() const { return mbHlplVisible; }
377 
379  bool IsHlplFront() const { return mbHlplFront ; }
380 
381  const Color& GetGridColor() const { return maGridColor;}
382  void SetPageVisible(bool bOn = true) { mbPageVisible=bOn; InvalidateAllWin(); }
383  void SetPageShadowVisible(bool bOn) { mbPageShadowVisible=bOn; InvalidateAllWin(); }
384  void SetPageBorderVisible(bool bOn = true) { mbPageBorderVisible=bOn; InvalidateAllWin(); }
385  void SetBordVisible(bool bOn = true) { mbBordVisible=bOn; InvalidateAllWin(); }
386  void SetGridVisible(bool bOn) { mbGridVisible=bOn; InvalidateAllWin(); }
387  void SetGridFront(bool bOn) { mbGridFront =bOn; InvalidateAllWin(); }
388  void SetHlplVisible(bool bOn = true) { mbHlplVisible=bOn; InvalidateAllWin(); }
389  void SetHlplFront(bool bOn) { mbHlplFront =bOn; InvalidateAllWin(); }
390  void SetGlueVisible(bool bOn = true) { if (mbGlueVisible!=bOn) { mbGlueVisible=bOn; if (!mbGlueVisible2 && !mbGlueVisible3 && !mbGlueVisible4) GlueInvalidate(); } }
391 
392  bool IsPreviewRenderer() const { return mbPreviewRenderer; }
393  void SetPreviewRenderer(bool bOn) { mbPreviewRenderer=bOn; }
394 
395  // Access methods for calc and sw hide object modes
396  bool getHideOle() const { return mbHideOle; }
397  bool getHideChart() const { return mbHideChart; }
398  bool getHideDraw() const { return mbHideDraw; }
399  bool getHideFormControl() const { return mbHideFormControl; }
400  void setHideOle(bool bNew) { if(bNew != mbHideOle) mbHideOle = bNew; }
401  void setHideChart(bool bNew) { if(bNew != mbHideChart) mbHideChart = bNew; }
402  void setHideDraw(bool bNew) { if(bNew != mbHideDraw) mbHideDraw = bNew; }
403  void setHideFormControl(bool bNew) { if(bNew != mbHideFormControl) mbHideFormControl = bNew; }
404 
405  void SetGridCoarse(const Size& rSiz) { maGridBig=rSiz; }
406  void SetGridFine(const Size& rSiz) {
407  maGridFin=rSiz;
408  if (maGridFin.Height()==0) maGridFin.setHeight(maGridFin.Width());
409  if (mbGridVisible) InvalidateAllWin();
410  }
411  const Size& GetGridCoarse() const { return maGridBig; }
412  const Size& GetGridFine() const { return maGridFin; }
413 
414  void InvalidateAllWin();
415  void InvalidateAllWin(const tools::Rectangle& rRect);
416 
419  virtual void InvalidateOneWin(OutputDevice& rWin);
420  virtual void InvalidateOneWin(OutputDevice& rWin, const tools::Rectangle& rRect);
421 
422  void SetActiveLayer(const OUString& rName) { maActualLayer=rName; }
423  const OUString& GetActiveLayer() const { return maActualLayer; }
424 
426  void LeaveOneGroup();
427 
429  void LeaveAllGroup();
430 
432  bool IsGroupEntered() const;
433 
436  void SetDefaultAttr(const SfxItemSet& rAttr, bool bReplaceAll);
437  const SfxItemSet& GetDefaultAttr() const { return maDefaultAttr; }
438  void SetDefaultStyleSheet(SfxStyleSheet* pStyleSheet, bool bDontRemoveHardAttr);
439 
440  void SetNotPersistDefaultAttr(const SfxItemSet& rAttr);
441  void MergeNotPersistDefaultAttr(SfxItemSet& rAttr) const;
442 
448  bool IsSwapAsynchron() const { return mbSwapAsynchron; }
449  void SetSwapAsynchron(bool bJa=true) { mbSwapAsynchron=bJa; }
450  virtual bool KeyInput(const KeyEvent& rKEvt, vcl::Window* pWin);
451 
452  virtual bool MouseButtonDown(const MouseEvent& /*rMEvt*/, OutputDevice* /*pWin*/) { return false; }
453  virtual bool MouseButtonUp(const MouseEvent& /*rMEvt*/, OutputDevice* /*pWin*/) { return false; }
454  virtual bool MouseMove(const MouseEvent& /*rMEvt*/, OutputDevice* /*pWin*/) { return false; }
455  virtual bool RequestHelp(const HelpEvent& /*rHEvt*/) { return false; }
456  virtual bool Command(const CommandEvent& /*rCEvt*/, vcl::Window* /*pWin*/) { return false; }
457 
458  void GetAttributes(SfxItemSet& rTargetSet, bool bOnlyHardAttr) const;
459 
460  void SetAttributes(const SfxItemSet& rSet, bool bReplaceAll);
461  SfxStyleSheet* GetStyleSheet() const; // SfxStyleSheet* GetStyleSheet(bool& rOk) const;
462  void SetStyleSheet(SfxStyleSheet* pStyleSheet, bool bDontRemoveHardAttr);
463 
464  virtual void MakeVisible(const tools::Rectangle& rRect, vcl::Window& rWin);
465 
468  virtual void DoConnect(SdrOle2Obj* pOleObj);
469 
473  bool IsAnimationEnabled() const { return ( SdrAnimationMode::Animate == meAnimationMode ); }
474  void SetAnimationEnabled( bool bEnable=true );
475 
477  void SetAnimationPause( bool bSet );
478 
483  void SetAnimationMode( const SdrAnimationMode eMode );
484 
487  void VisAreaChanged(const OutputDevice* pOut);
488  void VisAreaChanged();
489 
490  bool IsPrintPreview() const { return mbPrintPreview; }
491  void SetPrintPreview(bool bOn = true) { mbPrintPreview=bOn; }
492 
493  const svtools::ColorConfig& getColorConfig() const { return maColorConfig;}
494 
495  void onChangeColorConfig();
496 
497  // #103834# Set background color for svx at SdrPageViews
498  void SetApplicationBackgroundColor(Color aBackgroundColor);
499 
500  // #103911# Set document color for svx at SdrPageViews
501  void SetApplicationDocumentColor(Color aDocumentColor);
502 
503  // #i38135#
504  // Sets the timer for Object animations and restarts.
505  void SetAnimationTimer(sal_uInt32 nTime);
506 
507  // Access to Drawinglayer configuration options
508  const SvtOptionsDrawinglayer& getOptionsDrawinglayer() const { return maDrawinglayerOpt; }
509 };
510 
511 #endif // INCLUDED_SVX_SVDPNTV_HXX
512 
513 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
sal_uInt16 mnMinMovLog
Definition: svdpntv.hxx:151
long Width() const
bool IsGridFront() const
Draw Grid in front of objects or behind them.
Definition: svdpntv.hxx:373
ConfigurationHints
void SetMinMoveDistancePixel(sal_uInt16 nVal)
Definition: svdpntv.hxx:281
void SetHlplVisible(bool bOn=true)
Definition: svdpntv.hxx:388
virtual bool MouseButtonUp(const MouseEvent &, OutputDevice *)
Definition: svdpntv.hxx:453
void SetGridFine(const Size &rSiz)
Definition: svdpntv.hxx:406
bool IsHlplVisible() const
Draw Help line of the Page or not.
Definition: svdpntv.hxx:376
long Height() const
bool IsPageVisible() const
Draw Page as a white area or not.
Definition: svdpntv.hxx:358
void SetHitTolerancePixel(sal_uInt16 nVal)
Definition: svdpntv.hxx:282
void SetPrintPreview(bool bOn=true)
Definition: svdpntv.hxx:491
const SdrDragStat & GetDragStat() const
Definition: svdpntv.hxx:290
OUString maMeasureLayer
Definition: svdpntv.hxx:132
void SetStyleSheet(SfxStyleSheet *pNewStyleSheet, bool bDontRemoveHardAttr)
Definition: svdobj.cxx:2146
sal_uInt16 mnMinMovPix
Definition: svdpntv.hxx:149
SdrDragStat maDragStat
Definition: svdpntv.hxx:141
tools::Rectangle maMaxWorkArea
Definition: svdpntv.hxx:142
void ImpSetGlueVisible4(bool bOn)
Definition: svdpntv.hxx:240
void SetGridCoarse(const Size &rSiz)
Definition: svdpntv.hxx:405
virtual bool MouseButtonDown(const MouseEvent &, OutputDevice *)
Definition: svdpntv.hxx:452
VclPtr< OutputDevice > mpDragWin
Definition: svdpntv.hxx:128
SdrModel * mpModel
Definition: svdpntv.hxx:126
bool IsBordVisible() const
Draw Border line or not.
Definition: svdpntv.hxx:367
const Color & GetGridColor() const
Definition: svdpntv.hxx:381
sal_uInt16 mnHitTolLog
Definition: svdpntv.hxx:150
bool IsGridVisible() const
Draw Grid or not.
Definition: svdpntv.hxx:370
const Size & GetGridFine() const
Definition: svdpntv.hxx:412
BitmapEx convertMetafileToBitmapEx(const GDIMetaFile &rMtf, const basegfx::B2DRange &rTargetRange, const sal_uInt32 nMaximumQuadraticPixels)
Helper to convert any GDIMetaFile to a good quality BitmapEx, using default parameters and graphic::X...
Definition: svdpntv.cxx:103
void SetGlueVisible(bool bOn=true)
Definition: svdpntv.hxx:390
virtual bool MouseMove(const MouseEvent &, OutputDevice *)
Definition: svdpntv.hxx:454
bool IsPagePaintingAllowed() const
Definition: svdpntv.hxx:207
void SetBordVisible(bool bOn=true)
Definition: svdpntv.hxx:385
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint) override
Detects when a stylesheet is changed.
Definition: svdograf.cxx:1017
SfxStyleSheet * GetStyleSheet() const
Definition: svdobj.cxx:2141
void SetPageVisible(bool bOn=true)
Definition: svdpntv.hxx:382
const svtools::ColorConfig & getColorConfig() const
Definition: svdpntv.hxx:493
const SfxItemSet & GetDefaultAttr() const
Definition: svdpntv.hxx:437
virtual bool RequestHelp(const HelpEvent &)
Definition: svdpntv.hxx:455
std::unique_ptr< SdrPageView > mpPageView
Definition: svdpntv.hxx:124
void setHideOle(bool bNew)
Definition: svdpntv.hxx:400
sal_uInt32 PaintWindowCount() const
Definition: svdpntv.hxx:222
void SetSwapAsynchron(bool bJa=true)
Definition: svdpntv.hxx:449
SfxStyleSheet * mpDefaultStyleSheet
Definition: svdpntv.hxx:129
void ImpSetGlueVisible3(bool bOn)
Definition: svdpntv.hxx:239
bool IsHlplFront() const
Draw Help line in front of the objects or behind them.
Definition: svdpntv.hxx:379
sal_uInt16 mnHitTolPix
Definition: svdpntv.hxx:148
SvtOptionsDrawinglayer maDrawinglayerOpt
Definition: svdpntv.hxx:154
bool ImpIsGlueVisible()
Definition: svdpntv.hxx:243
bool IsPreviewRenderer() const
Definition: svdpntv.hxx:392
void SetPreviewRenderer(bool bOn)
Definition: svdpntv.hxx:393
void ImpSetGlueVisible2(bool bOn)
Definition: svdpntv.hxx:238
void SetGridFront(bool bOn)
Definition: svdpntv.hxx:387
bool getHideFormControl() const
Definition: svdpntv.hxx:399
OUString maActualLayer
Definition: svdpntv.hxx:131
virtual bool Command(const CommandEvent &, vcl::Window *)
Definition: svdpntv.hxx:456
This class represents an embedded or linked bitmap graphic object.
Definition: svdograf.hxx:77
Size maGridFin
Definition: svdpntv.hxx:140
Color maGridColor
Definition: svdpntv.hxx:214
Abstract DrawObject.
Definition: svdobj.hxx:312
SdrAnimationMode meAnimationMode
Definition: svdpntv.hxx:146
const Size & GetGridCoarse() const
Definition: svdpntv.hxx:411
SdrModel & mrSdrModelFromSdrView
Definition: svdpntv.hxx:122
SdrAnimationMode
Definition: svdpntv.hxx:62
std::vector< std::unique_ptr< SdrPaintWindow > > maPaintWindows
Definition: svdpntv.hxx:137
void SetPageShadowVisible(bool bOn)
Definition: svdpntv.hxx:383
bool getHideChart() const
Definition: svdpntv.hxx:397
const SvtOptionsDrawinglayer & getOptionsDrawinglayer() const
Definition: svdpntv.hxx:508
Size maGridBig
Definition: svdpntv.hxx:139
bool getHideOle() const
Definition: svdpntv.hxx:396
bool IsSwapAsynchron() const
Execute a swap-in of e.g.
Definition: svdpntv.hxx:448
void setHideFormControl(bool bNew)
Definition: svdpntv.hxx:403
void SetGridVisible(bool bOn)
Definition: svdpntv.hxx:386
#define SVXCORE_DLLPUBLIC
Definition: svxdllapi.h:35
bool IsPageShadowVisible() const
Draw Page shadow or not.
Definition: svdpntv.hxx:361
sal_uInt16 GetHitTolerancePixel() const
Definition: svdpntv.hxx:283
bool IsPrintPreview() const
Definition: svdpntv.hxx:490
void SetActiveLayer(const OUString &rName)
Definition: svdpntv.hxx:422
SdrPageView * GetSdrPageView() const
Definition: svdpntv.hxx:303
void setHideDraw(bool bNew)
Definition: svdpntv.hxx:402
svtools::ColorConfig maColorConfig
Definition: svdpntv.hxx:213
void setHideChart(bool bNew)
Definition: svdpntv.hxx:401
bool IsPageBorderVisible() const
Draw Page as a white area or not.
Definition: svdpntv.hxx:364
void SetPageBorderVisible(bool bOn=true)
Definition: svdpntv.hxx:384
SdrModel & getSdrModelFromSdrView() const
Definition: svdpntv.hxx:261
bool IsAnimationEnabled() const
Enable/disable animations for Paint Is used by e.g.
Definition: svdpntv.hxx:473
A SdrPage contains exactly one SdrObjList and a description of the physical page dimensions (size / m...
Definition: svdpage.hxx:365
virtual void ConfigurationChanged(ConfigurationBroadcaster *p, ConfigurationHints nHint)=0
const OUString & GetActiveLayer() const
Definition: svdpntv.hxx:423
sal_uInt16 getHitTolLog() const
Definition: svdpntv.hxx:286
SdrModel * GetModel() const
Definition: svdpntv.hxx:264
SfxItemSet maDefaultAttr
Definition: svdpntv.hxx:143
bool getHideDraw() const
Definition: svdpntv.hxx:398
Idle maComeBackIdle
Definition: svdpntv.hxx:144
VclPtr< OutputDevice > mpActualOutDev
Definition: svdpntv.hxx:127
void SetHlplFront(bool bOn)
Definition: svdpntv.hxx:389
void setHeight(long nHeight)