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