LibreOffice Module vcl (master) 1
metaact.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_VCL_METAACT_HXX
21#define INCLUDED_VCL_METAACT_HXX
22
23#include <sal/config.h>
24
25#include <config_options.h>
26
27#include <o3tl/span.hxx>
28#include <rtl/ref.hxx>
30#include <tools/poly.hxx>
31
32#include <vcl/dllapi.h>
34#include <vcl/bitmapex.hxx>
35#include <vcl/font.hxx>
36#include <vcl/gdimtf.hxx>
37#include <vcl/gfxlink.hxx>
38#include <vcl/gradient.hxx>
39#include <vcl/hatch.hxx>
40#include <vcl/lineinfo.hxx>
42#include <vcl/region.hxx>
44#include <vcl/wall.hxx>
45
46#include <memory>
47
48class OutputDevice;
49class SvStream;
50enum class DrawTextFlags;
51
53{
54 rtl_TextEncoding meActualCharSet;
56
58 : meActualCharSet(RTL_TEXTENCODING_ASCII_US)
59 , mnParseDepth(0)
60 {}
61};
62
64{
65 rtl_TextEncoding meActualCharSet;
66
68 meActualCharSet( RTL_TEXTENCODING_ASCII_US )
69 {}
70};
71
73{
74private:
76
77protected:
78 virtual ~MetaAction() override;
79
80public:
81 MetaAction();
82 explicit MetaAction( MetaActionType nType );
83 MetaAction( MetaAction const & );
84
85 virtual void Execute( OutputDevice* pOut );
86
87 oslInterlockedCount GetRefCount() const { return m_nCount; }
88
89 virtual rtl::Reference<MetaAction> Clone() const;
90
91 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove );
92 virtual void Scale( double fScaleX, double fScaleY );
93
94 MetaActionType GetType() const { return mnType; }
98 virtual bool IsTransparent() const { return false; }
99};
100
102{
103private:
106
107public:
111 MetaPixelAction & operator =(MetaPixelAction const &) = delete; // due to MetaAction
112 MetaPixelAction & operator =(MetaPixelAction &&) = delete; // due to MetaAction
113private:
114 virtual ~MetaPixelAction() override;
115public:
116 virtual void Execute( OutputDevice* pOut ) override;
117 virtual rtl::Reference<MetaAction> Clone() const override;
118
119 MetaPixelAction( const Point& rPt, const Color& rColor );
120
121 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
122 virtual void Scale( double fScaleX, double fScaleY ) override;
123
124 const Point& GetPoint() const { return maPt; }
125 const Color& GetColor() const { return maColor; }
126 void SetPoint(const Point& rPt) { maPt = rPt; }
127 void SetColor(Color rColor) { maColor = rColor; }
128};
129
131{
132private:
134
135public:
139 MetaPointAction & operator =(MetaPointAction const &) = delete; // due to MetaAction
140 MetaPointAction & operator =(MetaPointAction &&) = delete; // due to MetaAction
141private:
142 virtual ~MetaPointAction() override;
143public:
144 virtual void Execute( OutputDevice* pOut ) override;
145 virtual rtl::Reference<MetaAction> Clone() const override;
146
147 explicit MetaPointAction( const Point& );
148
149 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
150 virtual void Scale( double fScaleX, double fScaleY ) override;
151
152 const Point& GetPoint() const { return maPt; }
153 void SetPoint(const Point& rPt) { maPt = rPt; }
154};
155
157{
158private:
159
163
164public:
166 MetaLineAction(MetaLineAction const &) = default;
168 MetaLineAction & operator =(MetaLineAction const &) = delete; // due to MetaAction
169 MetaLineAction & operator =(MetaLineAction &&) = delete; // due to MetaAction
170private:
171 virtual ~MetaLineAction() override;
172public:
173 virtual void Execute( OutputDevice* pOut ) override;
174 virtual rtl::Reference<MetaAction> Clone() const override;
175
176 MetaLineAction( const Point& rStart, const Point& rEnd );
177 MetaLineAction( const Point& rStart, const Point& rEnd,
178 LineInfo aLineInfo );
179
180 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
181 virtual void Scale( double fScaleX, double fScaleY ) override;
182
183 const Point& GetStartPoint() const { return maStartPt; }
184 const Point& GetEndPoint() const { return maEndPt; }
185 const LineInfo& GetLineInfo() const { return maLineInfo; }
186 void SetStartPoint(const Point& rPoint) { maStartPt = rPoint; }
187 void SetEndPoint(const Point& rPoint) { maEndPt = rPoint; }
188 void SetLineInfo(const LineInfo& rLineInfo) { maLineInfo = rLineInfo; }
189};
190
192{
193private:
194
196
197public:
199 MetaRectAction(MetaRectAction const &) = default;
201 MetaRectAction & operator =(MetaRectAction const &) = delete; // due to MetaAction
202 MetaRectAction & operator =(MetaRectAction &&) = delete; // due to MetaAction
203private:
204 virtual ~MetaRectAction() override;
205public:
206 virtual void Execute( OutputDevice* pOut ) override;
207 virtual rtl::Reference<MetaAction> Clone() const override;
208
209 explicit MetaRectAction( const tools::Rectangle& );
210
211 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
212 virtual void Scale( double fScaleX, double fScaleY ) override;
213
214 const tools::Rectangle& GetRect() const { return maRect; }
215 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
216};
217
219{
220private:
221
223 sal_uInt32 mnHorzRound;
224 sal_uInt32 mnVertRound;
225
226public:
230 MetaRoundRectAction & operator =(MetaRoundRectAction const &) = delete; // due to MetaAction
231 MetaRoundRectAction & operator =(MetaRoundRectAction &&) = delete; // due to MetaAction
232private:
233 virtual ~MetaRoundRectAction() override;
234public:
235 virtual void Execute( OutputDevice* pOut ) override;
236 virtual rtl::Reference<MetaAction> Clone() const override;
237
239 sal_uInt32 nHorzRound, sal_uInt32 nVertRound );
240
241 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
242 virtual void Scale( double fScaleX, double fScaleY ) override;
243
244 const tools::Rectangle& GetRect() const { return maRect; }
245 sal_uInt32 GetHorzRound() const { return mnHorzRound; }
246 sal_uInt32 GetVertRound() const { return mnVertRound; }
247 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
248 void SetHorzRound(sal_uInt32 rHorzRound) { mnHorzRound = rHorzRound; }
249 void SetVertRound(sal_uInt32 rVertRound) { mnVertRound = rVertRound; }
250};
251
253{
254private:
255
257
258public:
262 MetaEllipseAction & operator =(MetaEllipseAction const &) = delete; // due to MetaAction
263 MetaEllipseAction & operator =(MetaEllipseAction &&) = delete; // due to MetaAction
264private:
265 virtual ~MetaEllipseAction() override;
266public:
267 virtual void Execute( OutputDevice* pOut ) override;
268 virtual rtl::Reference<MetaAction> Clone() const override;
269
270 explicit MetaEllipseAction( const tools::Rectangle& );
271
272 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
273 virtual void Scale( double fScaleX, double fScaleY ) override;
274
275 const tools::Rectangle& GetRect() const { return maRect; }
276 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
277};
278
280{
281private:
282
286
287public:
289 MetaArcAction(MetaArcAction const &) = default;
291 MetaArcAction & operator =(MetaArcAction const &) = delete; // due to MetaAction
292 MetaArcAction & operator =(MetaArcAction &&) = delete; // due to MetaAction
293private:
294 virtual ~MetaArcAction() override;
295public:
296 virtual void Execute( OutputDevice* pOut ) override;
297 virtual rtl::Reference<MetaAction> Clone() const override;
298
299 MetaArcAction( const tools::Rectangle& rRect,
300 const Point& rStart, const Point& rEnd );
301
302 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
303 virtual void Scale( double fScaleX, double fScaleY ) override;
304
305 const tools::Rectangle& GetRect() const { return maRect; }
306 const Point& GetStartPoint() const { return maStartPt; }
307 const Point& GetEndPoint() const { return maEndPt; }
308 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
309 void SetStartPoint(const Point& rPoint) { maStartPt = rPoint; }
310 void SetEndPoint(const Point& rPoint) { maEndPt = rPoint; }
311};
312
314{
315private:
316
320
321public:
323 MetaPieAction(MetaPieAction const &) = default;
325 MetaPieAction & operator =(MetaPieAction const &) = delete; // due to MetaAction
326 MetaPieAction & operator =(MetaPieAction &&) = delete; // due to MetaAction
327private:
328 virtual ~MetaPieAction() override;
329public:
330 virtual void Execute( OutputDevice* pOut ) override;
331 virtual rtl::Reference<MetaAction> Clone() const override;
332
333 MetaPieAction( const tools::Rectangle& rRect,
334 const Point& rStart, const Point& rEnd );
335
336 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
337 virtual void Scale( double fScaleX, double fScaleY ) override;
338
339 const tools::Rectangle& GetRect() const { return maRect; }
340 const Point& GetStartPoint() const { return maStartPt; }
341 const Point& GetEndPoint() const { return maEndPt; }
342 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
343 void SetStartPoint(const Point& rPoint) { maStartPt = rPoint; }
344 void SetEndPoint(const Point& rPoint) { maEndPt = rPoint; }
345};
346
348{
349private:
350
354
355public:
359 MetaChordAction & operator =(MetaChordAction const &) = delete; // due to MetaAction
360 MetaChordAction & operator =(MetaChordAction &&) = delete; // due to MetaAction
361private:
362 virtual ~MetaChordAction() override;
363public:
364 virtual void Execute( OutputDevice* pOut ) override;
365 virtual rtl::Reference<MetaAction> Clone() const override;
366
367 MetaChordAction( const tools::Rectangle& rRect,
368 const Point& rStart, const Point& rEnd );
369
370 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
371 virtual void Scale( double fScaleX, double fScaleY ) override;
372
373 const tools::Rectangle& GetRect() const { return maRect; }
374 const Point& GetStartPoint() const { return maStartPt; }
375 const Point& GetEndPoint() const { return maEndPt; }
376 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
377 void SetStartPoint(const Point& rPoint) { maStartPt = rPoint; }
378 void SetEndPoint(const Point& rPoint) { maEndPt = rPoint; }
379};
380
382{
383private:
384
387
388public:
392 MetaPolyLineAction & operator =(MetaPolyLineAction const &) = delete; // due to MetaAction
393 MetaPolyLineAction & operator =(MetaPolyLineAction &&) = delete; // due to MetaAction
394private:
395 virtual ~MetaPolyLineAction() override;
396public:
397 virtual void Execute( OutputDevice* pOut ) override;
398 virtual rtl::Reference<MetaAction> Clone() const override;
399
402
403 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
404 virtual void Scale( double fScaleX, double fScaleY ) override;
405
406 const tools::Polygon& GetPolygon() const { return maPoly; }
407 const LineInfo& GetLineInfo() const { return maLineInfo; }
408 void SetLineInfo(const LineInfo& rLineInfo) { maLineInfo = rLineInfo; }
409 void SetPolygon(const tools::Polygon& rPoly) { maPoly = rPoly; }
410};
411
413{
414private:
415
417
418public:
422 MetaPolygonAction & operator =(MetaPolygonAction const &) = delete; // due to MetaAction
423 MetaPolygonAction & operator =(MetaPolygonAction &&) = delete; // due to MetaAction
424private:
425 virtual ~MetaPolygonAction() override;
426public:
427 virtual void Execute( OutputDevice* pOut ) override;
428 virtual rtl::Reference<MetaAction> Clone() const override;
429
431
432 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
433 virtual void Scale( double fScaleX, double fScaleY ) override;
434
435 const tools::Polygon& GetPolygon() const { return maPoly; }
436 void SetPolygon(const tools::Polygon& rPoly) { maPoly = rPoly; }
437};
438
440{
441private:
442
444
445public:
449 MetaPolyPolygonAction & operator =(MetaPolyPolygonAction const &) = delete; // due to MetaAction
450 MetaPolyPolygonAction & operator =(MetaPolyPolygonAction &&) = delete; // due to MetaAction
451private:
452 virtual ~MetaPolyPolygonAction() override;
453public:
454 virtual void Execute( OutputDevice* pOut ) override;
455 virtual rtl::Reference<MetaAction> Clone() const override;
456
458
459 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
460 virtual void Scale( double fScaleX, double fScaleY ) override;
461
462 const tools::PolyPolygon& GetPolyPolygon() const { return maPolyPoly; }
463 void SetPolyPolygon(const tools::PolyPolygon& rPolyPoly) { maPolyPoly = rPolyPoly; }
464};
465
466class SAL_DLLPUBLIC_RTTI MetaTextAction final : public MetaAction
467{
468private:
469
471 OUString maStr;
472 sal_Int32 mnIndex;
473 sal_Int32 mnLen;
474
475public:
477 MetaTextAction(MetaTextAction const &) = default;
479 MetaTextAction & operator =(MetaTextAction const &) = delete; // due to MetaAction
480 MetaTextAction & operator =(MetaTextAction &&) = delete; // due to MetaAction
481private:
482 virtual ~MetaTextAction() override;
483public:
484 virtual void Execute( OutputDevice* pOut ) override;
485 virtual rtl::Reference<MetaAction> Clone() const override;
486
487 MetaTextAction( const Point& rPt, OUString aStr,
488 sal_Int32 nIndex, sal_Int32 nLen );
489
490 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
491 virtual void Scale( double fScaleX, double fScaleY ) override;
492
493 const Point& GetPoint() const { return maPt; }
494 const OUString& GetText() const { return maStr; }
495 sal_Int32 GetIndex() const { return mnIndex; }
496 sal_Int32 GetLen() const { return mnLen; }
497 void SetPoint(const Point& rPt) { maPt = rPt; }
498 void SetText(const OUString& rStr) { maStr = rStr; }
499 void SetIndex(sal_Int32 rIndex) { mnIndex = rIndex; }
500 void SetLen(sal_Int32 rLen) { mnLen = rLen; }
501};
502
503class UNLESS_MERGELIBS(VCL_DLLPUBLIC) MetaTextArrayAction final : public MetaAction
504{
505private:
506
507 Point maStartPt;
508 OUString maStr;
509 std::vector<sal_Int32> maDXAry;
510 std::vector<sal_Bool> maKashidaAry;
511 sal_Int32 mnIndex;
512 sal_Int32 mnLen;
513
514 virtual ~MetaTextArrayAction() override;
515
516public:
517 MetaTextArrayAction();
518 MetaTextArrayAction( const MetaTextArrayAction& rAction );
519 MetaTextArrayAction( const Point& rStartPt, OUString aStr,
520 std::vector<sal_Int32> rDXAry,
521 std::vector<sal_Bool> pKashidaAry,
522 sal_Int32 nIndex,
523 sal_Int32 nLen );
524 MetaTextArrayAction( const Point& rStartPt, OUString aStr,
526 o3tl::span<const sal_Bool> pKashidaAry,
527 sal_Int32 nIndex,
528 sal_Int32 nLen );
529
530 virtual void Execute( OutputDevice* pOut ) override;
531
532 virtual rtl::Reference<MetaAction> Clone() const override;
533
534 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
535 virtual void Scale( double fScaleX, double fScaleY ) override;
536
537 const Point& GetPoint() const { return maStartPt; }
538 const OUString& GetText() const { return maStr; }
539 sal_Int32 GetIndex() const { return mnIndex; }
540 sal_Int32 GetLen() const { return mnLen; }
541 const std::vector<sal_Int32> & GetDXArray() const { return maDXAry; }
542 const std::vector<sal_Bool> & GetKashidaArray() const { return maKashidaAry; }
543 void SetPoint(const Point& rPt) { maStartPt = rPt; }
544 void SetText(const OUString& rStr) { maStr = rStr; }
545 void SetIndex(sal_Int32 rIndex) { mnIndex = rIndex; }
546 void SetLen(sal_Int32 rLen) { mnLen = rLen; }
547 void SetDXArray(std::vector<sal_Int32> aArray);
548 void SetKashidaArray(std::vector<sal_Bool> aArray);
549};
550
551class SAL_DLLPUBLIC_RTTI MetaStretchTextAction final : public MetaAction
552{
553private:
554
556 OUString maStr;
557 sal_uInt32 mnWidth;
558 sal_Int32 mnIndex;
559 sal_Int32 mnLen;
560
561public:
565 MetaStretchTextAction & operator =(MetaStretchTextAction const &) = delete; // due to MetaAction
566 MetaStretchTextAction & operator =(MetaStretchTextAction &&) = delete; // due to MetaAction
567private:
568 virtual ~MetaStretchTextAction() override;
569public:
570 virtual void Execute( OutputDevice* pOut ) override;
571 virtual rtl::Reference<MetaAction> Clone() const override;
572
573 MetaStretchTextAction( const Point& rPt, sal_uInt32 nWidth,
574 OUString aStr,
575 sal_Int32 nIndex, sal_Int32 nLen );
576
577 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
578 virtual void Scale( double fScaleX, double fScaleY ) override;
579
580 const Point& GetPoint() const { return maPt; }
581 const OUString& GetText() const { return maStr; }
582 sal_uInt32 GetWidth() const { return mnWidth; }
583 sal_Int32 GetIndex() const { return mnIndex; }
584 sal_Int32 GetLen() const { return mnLen; }
585 void SetPoint(const Point& rPt) { maPt = rPt; }
586 void SetText(const OUString& rStr) { maStr = rStr; }
587 void SetWidth(sal_uInt32 rWidth) { mnWidth = rWidth; }
588 void SetIndex(sal_uInt32 rIndex) { mnIndex = rIndex; }
589 void SetLen(sal_uInt32 rLen) { mnLen = rLen; }
590};
591
592class SAL_DLLPUBLIC_RTTI MetaTextRectAction final : public MetaAction
593{
594private:
595
597 OUString maStr;
599
600public:
604 MetaTextRectAction & operator =(MetaTextRectAction const &) = delete; // due to MetaAction
605 MetaTextRectAction & operator =(MetaTextRectAction &&) = delete; // due to MetaAction
606private:
607 virtual ~MetaTextRectAction() override;
608public:
609 virtual void Execute( OutputDevice* pOut ) override;
610 virtual rtl::Reference<MetaAction> Clone() const override;
611
613 OUString aStr, DrawTextFlags nStyle );
614
615 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
616 virtual void Scale( double fScaleX, double fScaleY ) override;
617
618 const tools::Rectangle& GetRect() const { return maRect; }
619 const OUString& GetText() const { return maStr; }
620 DrawTextFlags GetStyle() const { return mnStyle; }
621 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
622 void SetText(const OUString& rStr) { maStr = rStr; }
623 void SetStyle(DrawTextFlags rStyle) { mnStyle = rStyle; }
624};
625
626class SAL_DLLPUBLIC_RTTI MetaTextLineAction final : public MetaAction
627{
628private:
629
635
636public:
640 MetaTextLineAction & operator =(MetaTextLineAction const &) = delete; // due to MetaAction
641 MetaTextLineAction & operator =(MetaTextLineAction &&) = delete; // due to MetaAction
642private:
643 virtual ~MetaTextLineAction() override;
644public:
645 virtual void Execute( OutputDevice* pOut ) override;
646 virtual rtl::Reference<MetaAction> Clone() const override;
647
648 MetaTextLineAction( const Point& rPos, tools::Long nWidth,
649 FontStrikeout eStrikeout,
650 FontLineStyle eUnderline,
651 FontLineStyle eOverline );
652 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
653 virtual void Scale( double fScaleX, double fScaleY ) override;
654
655 const Point& GetStartPoint() const { return maPos; }
656 tools::Long GetWidth() const { return mnWidth; }
657 FontStrikeout GetStrikeout() const { return meStrikeout; }
658 FontLineStyle GetUnderline() const { return meUnderline; }
659 FontLineStyle GetOverline() const { return meOverline; }
660 void SetStartPoint(const Point& rPos) { maPos = rPos; }
661 void SetWidth(tools::Long rWidth) { mnWidth = rWidth; }
662 void SetStrikeout(FontStrikeout eStrikeout) { meStrikeout = eStrikeout; }
663 void SetUnderline(FontLineStyle eUnderline) { meUnderline = eUnderline; }
664 void SetOverline(FontLineStyle eOverline) { meOverline = eOverline; }
665};
666
668{
669private:
670
673
674public:
676 MetaBmpAction(MetaBmpAction const &) = default;
678 MetaBmpAction & operator =(MetaBmpAction const &) = delete; // due to MetaAction
679 MetaBmpAction & operator =(MetaBmpAction &&) = delete; // due to MetaAction
680private:
681 virtual ~MetaBmpAction() override;
682public:
683 virtual void Execute( OutputDevice* pOut ) override;
684 virtual rtl::Reference<MetaAction> Clone() const override;
685
686 MetaBmpAction( const Point& rPt, const Bitmap& rBmp );
687
688 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
689 virtual void Scale( double fScaleX, double fScaleY ) override;
690
691 const Bitmap& GetBitmap() const { return maBmp; }
692 const Point& GetPoint() const { return maPt; }
693 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
694 void SetPoint(const Point& rPt) { maPt = rPt; }
695};
696
698{
699private:
700
704
705public:
709 MetaBmpScaleAction & operator =(MetaBmpScaleAction const &) = delete; // due to MetaAction
710 MetaBmpScaleAction & operator =(MetaBmpScaleAction &&) = delete; // due to MetaAction
711private:
712 virtual ~MetaBmpScaleAction() override;
713public:
714 virtual void Execute( OutputDevice* pOut ) override;
715 virtual rtl::Reference<MetaAction> Clone() const override;
716
717 MetaBmpScaleAction( const Point& rPt, const Size& rSz,
718 const Bitmap& rBmp );
719
720 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
721 virtual void Scale( double fScaleX, double fScaleY ) override;
722
723 const Bitmap& GetBitmap() const { return maBmp; }
724 const Point& GetPoint() const { return maPt; }
725 const Size& GetSize() const { return maSz; }
726 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
727 void SetPoint(const Point& rPt) { maPt = rPt; }
728 void SetSize(const Size& rSz) { maSz = rSz; }
729};
730
731class UNLESS_MERGELIBS(VCL_DLLPUBLIC) MetaBmpScalePartAction final : public MetaAction
732{
733private:
734
735 Bitmap maBmp;
736 Point maDstPt;
737 Size maDstSz;
738 Point maSrcPt;
739 Size maSrcSz;
740
741public:
742 MetaBmpScalePartAction();
743 MetaBmpScalePartAction(MetaBmpScalePartAction const &) = default;
744 MetaBmpScalePartAction(MetaBmpScalePartAction &&) = default;
745 MetaBmpScalePartAction & operator =(MetaBmpScalePartAction const &) = delete; // due to MetaAction
746 MetaBmpScalePartAction & operator =(MetaBmpScalePartAction &&) = delete; // due to MetaAction
747private:
748 virtual ~MetaBmpScalePartAction() override;
749public:
750 virtual void Execute( OutputDevice* pOut ) override;
751 virtual rtl::Reference<MetaAction> Clone() const override;
752
753 MetaBmpScalePartAction( const Point& rDstPt, const Size& rDstSz,
754 const Point& rSrcPt, const Size& rSrcSz,
755 const Bitmap& rBmp );
756
757 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
758 virtual void Scale( double fScaleX, double fScaleY ) override;
759
760 const Bitmap& GetBitmap() const { return maBmp; }
761 const Point& GetDestPoint() const { return maDstPt; }
762 const Size& GetDestSize() const { return maDstSz; }
763 const Point& GetSrcPoint() const { return maSrcPt; }
764 const Size& GetSrcSize() const { return maSrcSz; }
765 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
766 void SetDestPoint(const Point& rPt) { maDstPt = rPt; }
767 void SetDestSize(const Size& rSz) { maDstSz = rSz; }
768 void SetSrcPoint(const Point& rPt) { maSrcPt = rPt; }
769 void SetSrcSize(const Size& rSz) { maSrcSz = rSz; }
770};
771
773{
774private:
775
778
779public:
783 MetaBmpExAction & operator =(MetaBmpExAction const &) = delete; // due to MetaAction
784 MetaBmpExAction & operator =(MetaBmpExAction &&) = delete; // due to MetaAction
785private:
786 virtual ~MetaBmpExAction() override;
787public:
788 virtual void Execute( OutputDevice* pOut ) override;
789 virtual rtl::Reference<MetaAction> Clone() const override;
790
791 MetaBmpExAction( const Point& rPt, const BitmapEx& rBmpEx );
792
793 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
794 virtual void Scale( double fScaleX, double fScaleY ) override;
795
796 const BitmapEx& GetBitmapEx() const { return maBmpEx; }
797 const Point& GetPoint() const { return maPt; }
798 void SetBitmapEx(BitmapEx rBmpEx) { maBmpEx = rBmpEx; }
799 void SetPoint(const Point& rPt) { maPt = rPt; }
800 bool IsTransparent() const override { return GetBitmapEx().IsAlpha(); }
801};
802
804{
805private:
806
810
811public:
815 MetaBmpExScaleAction & operator =(MetaBmpExScaleAction const &) = delete; // due to MetaAction
816 MetaBmpExScaleAction & operator =(MetaBmpExScaleAction &&) = delete; // due to MetaAction
817private:
818 virtual ~MetaBmpExScaleAction() override;
819public:
820 virtual void Execute( OutputDevice* pOut ) override;
821 virtual rtl::Reference<MetaAction> Clone() const override;
822
823 MetaBmpExScaleAction( const Point& rPt, const Size& rSz,
824 const BitmapEx& rBmpEx ) ;
825
826 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
827 virtual void Scale( double fScaleX, double fScaleY ) override;
828
829 const BitmapEx& GetBitmapEx() const { return maBmpEx; }
830 const Point& GetPoint() const { return maPt; }
831 const Size& GetSize() const { return maSz; }
832 void SetBitmapEx(const BitmapEx& rBmpEx) { maBmpEx = rBmpEx; }
833 void SetPoint(const Point& rPt) { maPt = rPt; }
834 void SetSize(const Size& rSz) { maSz = rSz; }
835 bool IsTransparent() const override { return GetBitmapEx().IsAlpha(); }
836};
837
838class UNLESS_MERGELIBS(VCL_DLLPUBLIC) MetaBmpExScalePartAction final : public MetaAction
839{
840private:
841
842 BitmapEx maBmpEx;
843 Point maDstPt;
844 Size maDstSz;
845 Point maSrcPt;
846 Size maSrcSz;
847
848public:
849 MetaBmpExScalePartAction();
850 MetaBmpExScalePartAction(MetaBmpExScalePartAction const &) = default;
851 MetaBmpExScalePartAction(MetaBmpExScalePartAction &&) = default;
852 MetaBmpExScalePartAction & operator =(MetaBmpExScalePartAction const &) = delete; // due to MetaAction
853 MetaBmpExScalePartAction & operator =(MetaBmpExScalePartAction &&) = delete; // due to MetaAction
854private:
855 virtual ~MetaBmpExScalePartAction() override;
856public:
857 virtual void Execute( OutputDevice* pOut ) override;
858 virtual rtl::Reference<MetaAction> Clone() const override;
859
860 MetaBmpExScalePartAction( const Point& rDstPt, const Size& rDstSz,
861 const Point& rSrcPt, const Size& rSrcSz,
862 const BitmapEx& rBmpEx );
863
864 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
865 virtual void Scale( double fScaleX, double fScaleY ) override;
866
867 const BitmapEx& GetBitmapEx() const { return maBmpEx; }
868 const Point& GetDestPoint() const { return maDstPt; }
869 const Size& GetDestSize() const { return maDstSz; }
870 const Point& GetSrcPoint() const { return maSrcPt; }
871 const Size& GetSrcSize() const { return maSrcSz; }
872 void SetBitmapEx(const BitmapEx& rBmpEx) { maBmpEx = rBmpEx; }
873 void SetDestPoint(const Point& rDstPt) { maDstPt = rDstPt; }
874 void SetDestSize(const Size& rDstSz) { maDstSz = rDstSz; }
875 void SetSrcPoint(const Point& rSrcPt) { maSrcPt = rSrcPt; }
876 void SetSrcSize(const Size& rSrcSz) { maSrcSz = rSrcSz; }
877 bool IsTransparent() const override { return GetBitmapEx().IsAlpha(); }
878};
879
880class SAL_DLLPUBLIC_RTTI MetaMaskAction final : public MetaAction
881{
882private:
883
887
888public:
890 MetaMaskAction(MetaMaskAction const &) = default;
892 MetaMaskAction & operator =(MetaMaskAction const &) = delete; // due to MetaAction
893 MetaMaskAction & operator =(MetaMaskAction &&) = delete; // due to MetaAction
894private:
895 virtual ~MetaMaskAction() override;
896public:
897 virtual void Execute( OutputDevice* pOut ) override;
898 virtual rtl::Reference<MetaAction> Clone() const override;
899
900 MetaMaskAction( const Point& rPt,
901 const Bitmap& rBmp,
902 const Color& rColor );
903
904 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
905 virtual void Scale( double fScaleX, double fScaleY ) override;
906
907 const Bitmap& GetBitmap() const { return maBmp; }
908 const Color& GetColor() const { return maColor; }
909 const Point& GetPoint() const { return maPt; }
910 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
911 void SetPoint(const Point& rPt) { maPt = rPt; }
912};
913
914class SAL_DLLPUBLIC_RTTI MetaMaskScaleAction final : public MetaAction
915{
916private:
917
922
923public:
927 MetaMaskScaleAction & operator =(MetaMaskScaleAction const &) = delete; // due to MetaAction
928 MetaMaskScaleAction & operator =(MetaMaskScaleAction &&) = delete; // due to MetaAction
929private:
930 virtual ~MetaMaskScaleAction() override;
931public:
932 virtual void Execute( OutputDevice* pOut ) override;
933 virtual rtl::Reference<MetaAction> Clone() const override;
934
935 MetaMaskScaleAction( const Point& rPt, const Size& rSz,
936 const Bitmap& rBmp,
937 const Color& rColor );
938
939 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
940 virtual void Scale( double fScaleX, double fScaleY ) override;
941
942 const Bitmap& GetBitmap() const { return maBmp; }
943 const Color& GetColor() const { return maColor; }
944 const Point& GetPoint() const { return maPt; }
945 const Size& GetSize() const { return maSz; }
946 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
947 void SetPoint(const Point& rPt) { maPt = rPt; }
948 void SetSize(const Size& rSz) { maSz = rSz; }
949};
950
951class SAL_DLLPUBLIC_RTTI MetaMaskScalePartAction final : public MetaAction
952{
953private:
954
961
962public:
966 MetaMaskScalePartAction & operator =(MetaMaskScalePartAction const &) = delete; // due to MetaAction
967 MetaMaskScalePartAction & operator =(MetaMaskScalePartAction &&) = delete; // due to MetaAction
968private:
969 virtual ~MetaMaskScalePartAction() override;
970public:
971 virtual void Execute( OutputDevice* pOut ) override;
972 virtual rtl::Reference<MetaAction> Clone() const override;
973
974 MetaMaskScalePartAction( const Point& rDstPt, const Size& rDstSz,
975 const Point& rSrcPt, const Size& rSrcSz,
976 const Bitmap& rBmp,
977 const Color& rColor );
978
979 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
980 virtual void Scale( double fScaleX, double fScaleY ) override;
981
982 const Bitmap& GetBitmap() const { return maBmp; }
983 const Color& GetColor() const { return maColor; }
984 const Point& GetDestPoint() const { return maDstPt; }
985 const Size& GetDestSize() const { return maDstSz; }
986 const Point& GetSrcPoint() const { return maSrcPt; }
987 const Size& GetSrcSize() const { return maSrcSz; }
988 void SetBitmap(const Bitmap& rBmp) { maBmp = rBmp; }
989 void SetColor(Color rColor) { maColor = rColor; }
990 void SetDestPoint(const Point& rPt) { maDstPt = rPt; }
991 void SetDestSize(const Size& rSz) { maDstSz = rSz; }
992 void SetSrcPoint(const Point& rPt) { maSrcPt = rPt; }
993 void SetSrcSize(const Size& rSz) { maSrcSz = rSz; }
994};
995
996class SAL_DLLPUBLIC_RTTI MetaGradientAction final : public MetaAction
997{
998private:
999
1002
1003public:
1007 MetaGradientAction & operator =(MetaGradientAction const &) = delete; // due to MetaAction
1008 MetaGradientAction & operator =(MetaGradientAction &&) = delete; // due to MetaAction
1009private:
1010 virtual ~MetaGradientAction() override;
1011public:
1012 virtual void Execute( OutputDevice* pOut ) override;
1013 virtual rtl::Reference<MetaAction> Clone() const override;
1014
1015 MetaGradientAction( const tools::Rectangle& rRect, Gradient aGradient );
1016
1017 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1018 virtual void Scale( double fScaleX, double fScaleY ) override;
1019
1020 const tools::Rectangle& GetRect() const { return maRect; }
1021 const Gradient& GetGradient() const { return maGradient; }
1022 void SetGradient(const Gradient& rGradient) { maGradient = rGradient; }
1023 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
1024};
1025
1027{
1028private:
1029
1032
1033public:
1037 MetaGradientExAction & operator =(MetaGradientExAction const &) = delete; // due to MetaAction
1038 MetaGradientExAction & operator =(MetaGradientExAction &&) = delete; // due to MetaAction
1039private:
1040 virtual ~MetaGradientExAction() override;
1041public:
1042 virtual void Execute( OutputDevice* pOut ) override;
1043 virtual rtl::Reference<MetaAction> Clone() const override;
1044
1045 MetaGradientExAction( tools::PolyPolygon rPolyPoly, Gradient aGradient );
1046
1047 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1048 virtual void Scale( double fScaleX, double fScaleY ) override;
1049
1050 const tools::PolyPolygon& GetPolyPolygon() const { return maPolyPoly; }
1051 const Gradient& GetGradient() const { return maGradient; }
1052 void SetPolyPolygon(const tools::PolyPolygon& rPolyPoly) { maPolyPoly = rPolyPoly; }
1053 void SetGradient(const Gradient& rGradient) { maGradient = rGradient; }
1054};
1055
1056class SAL_DLLPUBLIC_RTTI MetaHatchAction final : public MetaAction
1057{
1058private:
1059
1062
1063public:
1067 MetaHatchAction & operator =(MetaHatchAction const &) = delete; // due to MetaAction
1068 MetaHatchAction & operator =(MetaHatchAction &&) = delete; // due to MetaAction
1069private:
1070 virtual ~MetaHatchAction() override;
1071public:
1072 virtual void Execute( OutputDevice* pOut ) override;
1073 virtual rtl::Reference<MetaAction> Clone() const override;
1074
1075 MetaHatchAction( tools::PolyPolygon aPolyPoly, const Hatch& rHatch );
1076
1077 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1078 virtual void Scale( double fScaleX, double fScaleY ) override;
1079
1080 const tools::PolyPolygon& GetPolyPolygon() const { return maPolyPoly; }
1081 const Hatch& GetHatch() const { return maHatch; }
1082 void SetPolyPolygon(const tools::PolyPolygon& rPolyPoly) { maPolyPoly = rPolyPoly; }
1083 void SetHatch(const Hatch& rHatch) { maHatch = rHatch; }
1084};
1085
1086class UNLESS_MERGELIBS(VCL_DLLPUBLIC) MetaWallpaperAction final : public MetaAction
1087{
1088private:
1089
1090 tools::Rectangle maRect;
1091 Wallpaper maWallpaper;
1092
1093public:
1094 MetaWallpaperAction();
1095 MetaWallpaperAction(MetaWallpaperAction const &) = default;
1096 MetaWallpaperAction(MetaWallpaperAction &&) = default;
1097 MetaWallpaperAction & operator =(MetaWallpaperAction const &) = delete; // due to MetaAction
1098 MetaWallpaperAction & operator =(MetaWallpaperAction &&) = delete; // due to MetaAction
1099private:
1100 virtual ~MetaWallpaperAction() override;
1101public:
1102 virtual void Execute( OutputDevice* pOut ) override;
1103 virtual rtl::Reference<MetaAction> Clone() const override;
1104
1105 MetaWallpaperAction( const tools::Rectangle& rRect,
1106 const Wallpaper& rPaper );
1107
1108 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1109 virtual void Scale( double fScaleX, double fScaleY ) override;
1110
1111 const tools::Rectangle& GetRect() const { return maRect; }
1112 const Wallpaper& GetWallpaper() const { return maWallpaper; }
1113 void SetWallpaper(const Wallpaper& rWallpaper) { maWallpaper = rWallpaper; }
1114};
1115
1117{
1118private:
1119
1122
1123public:
1127 MetaClipRegionAction & operator =(MetaClipRegionAction const &) = delete; // due to MetaAction
1128 MetaClipRegionAction & operator =(MetaClipRegionAction &&) = delete; // due to MetaAction
1129private:
1130 virtual ~MetaClipRegionAction() override;
1131public:
1132 virtual void Execute( OutputDevice* pOut ) override;
1133 virtual rtl::Reference<MetaAction> Clone() const override;
1134
1135 MetaClipRegionAction( vcl::Region aRegion, bool bClip );
1136
1137 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1138 virtual void Scale( double fScaleX, double fScaleY ) override;
1139
1140 const vcl::Region& GetRegion() const { return maRegion; }
1141 bool IsClipping() const { return mbClip; }
1142 void SetRegion(const vcl::Region& rRegion) { maRegion = rRegion; }
1143 void SetClipping(bool bClip) { mbClip = bClip; }
1144};
1145
1147{
1148private:
1149
1151
1152public:
1156 MetaISectRectClipRegionAction & operator =(MetaISectRectClipRegionAction const &) = delete; // due to MetaAction
1157 MetaISectRectClipRegionAction & operator =(MetaISectRectClipRegionAction &&) = delete; // due to MetaAction
1158private:
1159 virtual ~MetaISectRectClipRegionAction() override;
1160public:
1161 virtual void Execute( OutputDevice* pOut ) override;
1162 virtual rtl::Reference<MetaAction> Clone() const override;
1163
1165
1166 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1167 virtual void Scale( double fScaleX, double fScaleY ) override;
1168
1169 const tools::Rectangle& GetRect() const { return maRect; }
1170 void SetRect(const tools::Rectangle& rRect) { maRect = rRect; }
1171};
1172
1174{
1175private:
1176
1178
1179public:
1183 MetaISectRegionClipRegionAction & operator =(MetaISectRegionClipRegionAction const &) = delete; // due to MetaAction
1184 MetaISectRegionClipRegionAction & operator =(MetaISectRegionClipRegionAction &&) = delete; // due to MetaAction
1185private:
1186 virtual ~MetaISectRegionClipRegionAction() override;
1187public:
1188 virtual void Execute( OutputDevice* pOut ) override;
1189 virtual rtl::Reference<MetaAction> Clone() const override;
1190
1192
1193 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1194 virtual void Scale( double fScaleX, double fScaleY ) override;
1195
1196 const vcl::Region& GetRegion() const { return maRegion; }
1197 void SetRegion(const vcl::Region& rRegion) { maRegion = rRegion; }
1198};
1199
1201{
1202private:
1203
1206
1207public:
1211 MetaMoveClipRegionAction & operator =(MetaMoveClipRegionAction const &) = delete; // due to MetaAction
1212 MetaMoveClipRegionAction & operator =(MetaMoveClipRegionAction &&) = delete; // due to MetaAction
1213private:
1214 virtual ~MetaMoveClipRegionAction() override;
1215public:
1216 virtual void Execute( OutputDevice* pOut ) override;
1217 virtual rtl::Reference<MetaAction> Clone() const override;
1218
1219 MetaMoveClipRegionAction( tools::Long nHorzMove, tools::Long nVertMove );
1220
1221 virtual void Scale( double fScaleX, double fScaleY ) override;
1222
1223 tools::Long GetHorzMove() const { return mnHorzMove; }
1224 tools::Long GetVertMove() const { return mnVertMove; }
1225 void SetHorzMove(tools::Long nHorzMove) { mnHorzMove = nHorzMove; }
1226 void SetVertMove(tools::Long nVertMove) { mnVertMove = nVertMove; }
1227};
1228
1230{
1231private:
1232
1234 bool mbSet;
1235
1236public:
1240 MetaLineColorAction & operator =(MetaLineColorAction const &) = delete; // due to MetaAction
1241 MetaLineColorAction & operator =(MetaLineColorAction &&) = delete; // due to MetaAction
1242private:
1243 virtual ~MetaLineColorAction() override;
1244public:
1245 virtual void Execute( OutputDevice* pOut ) override;
1246 virtual rtl::Reference<MetaAction> Clone() const override;
1247
1248 MetaLineColorAction( const Color& rColor, bool bSet );
1249
1250 const Color& GetColor() const { return maColor; }
1251 bool IsSetting() const { return mbSet; }
1252 void SetColor(const Color& rColor) { maColor = rColor; }
1253 void SetSetting(bool rSet) { mbSet = rSet; }
1254};
1255
1257{
1258private:
1259
1261 bool mbSet;
1262
1263public:
1267 MetaFillColorAction & operator =(MetaFillColorAction const &) = delete; // due to MetaAction
1268 MetaFillColorAction & operator =(MetaFillColorAction &&) = delete; // due to MetaAction
1269private:
1270 virtual ~MetaFillColorAction() override;
1271public:
1272 virtual void Execute( OutputDevice* pOut ) override;
1273 virtual rtl::Reference<MetaAction> Clone() const override;
1274
1275 MetaFillColorAction( const Color& rColor, bool bSet );
1276
1277 const Color& GetColor() const { return maColor; }
1278 bool IsSetting() const { return mbSet; }
1279 void SetSetting(bool rSet) { mbSet = rSet; }
1280 void SetColor(Color rColor) { maColor = rColor; }
1281
1282};
1283
1285{
1286private:
1287
1289
1290public:
1294 MetaTextColorAction & operator =(MetaTextColorAction const &) = delete; // due to MetaAction
1295 MetaTextColorAction & operator =(MetaTextColorAction &&) = delete; // due to MetaAction
1296private:
1297 virtual ~MetaTextColorAction() override;
1298public:
1299 virtual void Execute( OutputDevice* pOut ) override;
1300 virtual rtl::Reference<MetaAction> Clone() const override;
1301
1302 explicit MetaTextColorAction( const Color& );
1303
1304 const Color& GetColor() const { return maColor; }
1305 void SetColor(Color rColor) { maColor = rColor; }
1306};
1307
1309{
1310private:
1311
1313 bool mbSet;
1314
1315public:
1319 MetaTextFillColorAction & operator =(MetaTextFillColorAction const &) = delete; // due to MetaAction
1320 MetaTextFillColorAction & operator =(MetaTextFillColorAction &&) = delete; // due to MetaAction
1321private:
1322 virtual ~MetaTextFillColorAction() override;
1323public:
1324 virtual void Execute( OutputDevice* pOut ) override;
1325 virtual rtl::Reference<MetaAction> Clone() const override;
1326
1327 MetaTextFillColorAction( const Color& rColor, bool bSet );
1328
1329 const Color& GetColor() const { return maColor; }
1330 void SetColor(Color rColor) { maColor = rColor; }
1331 void SetSetting(bool bSet) { mbSet = bSet; }
1332 bool IsSetting() const { return mbSet; }
1333
1334};
1335
1337{
1338private:
1339
1341 bool mbSet;
1342
1343public:
1347 MetaTextLineColorAction & operator =(MetaTextLineColorAction const &) = delete; // due to MetaAction
1348 MetaTextLineColorAction & operator =(MetaTextLineColorAction &&) = delete; // due to MetaAction
1349private:
1350 virtual ~MetaTextLineColorAction() override;
1351public:
1352 virtual void Execute( OutputDevice* pOut ) override;
1353 virtual rtl::Reference<MetaAction> Clone() const override;
1354
1355 MetaTextLineColorAction( const Color& rColor, bool bSet );
1356
1357 const Color& GetColor() const { return maColor; }
1358 void SetColor(const Color& rColor) { maColor = rColor; }
1359 void SetSetting(bool bSet) { mbSet = bSet; }
1360 bool IsSetting() const { return mbSet; }
1361};
1362
1364{
1365private:
1366
1368 bool mbSet;
1369
1370public:
1374 MetaOverlineColorAction & operator =(MetaOverlineColorAction const &) = delete; // due to MetaAction
1375 MetaOverlineColorAction & operator =(MetaOverlineColorAction &&) = delete; // due to MetaAction
1376private:
1377 virtual ~MetaOverlineColorAction() override;
1378public:
1379 virtual void Execute( OutputDevice* pOut ) override;
1380 virtual rtl::Reference<MetaAction> Clone() const override;
1381
1382 MetaOverlineColorAction( const Color& rColor, bool bSet );
1383
1384 const Color& GetColor() const { return maColor; }
1385 void SetColor(const Color& rColor) { maColor = rColor; }
1386 void SetSetting(bool bSet) { mbSet = bSet; }
1387 bool IsSetting() const { return mbSet; }
1388};
1389
1391{
1392private:
1393
1395
1396public:
1400 MetaTextAlignAction & operator =(MetaTextAlignAction const &) = delete; // due to MetaAction
1401 MetaTextAlignAction & operator =(MetaTextAlignAction &&) = delete; // due to MetaAction
1402private:
1403 virtual ~MetaTextAlignAction() override;
1404public:
1405 virtual void Execute( OutputDevice* pOut ) override;
1406 virtual rtl::Reference<MetaAction> Clone() const override;
1407
1408 explicit MetaTextAlignAction( TextAlign eAlign );
1409
1410 TextAlign GetTextAlign() const { return maAlign; }
1411 void SetTextAlign(TextAlign eAlign) { maAlign = eAlign; }
1412};
1413
1415{
1416private:
1417
1419
1420public:
1424 MetaMapModeAction & operator =(MetaMapModeAction const &) = delete; // due to MetaAction
1425 MetaMapModeAction & operator =(MetaMapModeAction &&) = delete; // due to MetaAction
1426private:
1427 virtual ~MetaMapModeAction() override;
1428public:
1429 virtual void Execute( OutputDevice* pOut ) override;
1430 virtual rtl::Reference<MetaAction> Clone() const override;
1431
1432 explicit MetaMapModeAction( const MapMode& );
1433
1434 virtual void Scale( double fScaleX, double fScaleY ) override;
1435
1436 const MapMode& GetMapMode() const { return maMapMode; }
1437 void SetMapMode(const MapMode& rMapMode) { maMapMode = rMapMode; }
1438};
1439
1440// tdf#127471 decl for friend below
1441namespace emfio { class ScaledFontDetectCorrectHelper; }
1442
1444{
1445private:
1446
1448
1449 // tdf#127471 for import correction of own wrong written EMF/WMF files allow correction
1450 // of FontScale after import. Only from there, so use a friend here and keep the method private
1452 void correctFontScale(tools::Long nNewFontScale) { maFont.SetAverageFontWidth(nNewFontScale); }
1453
1454public:
1456 MetaFontAction(MetaFontAction const &) = default;
1458 MetaFontAction & operator =(MetaFontAction const &) = delete; // due to MetaAction
1459 MetaFontAction & operator =(MetaFontAction &&) = delete; // due to MetaAction
1460private:
1461 virtual ~MetaFontAction() override;
1462public:
1463 virtual void Execute( OutputDevice* pOut ) override;
1464 virtual rtl::Reference<MetaAction> Clone() const override;
1465
1466 explicit MetaFontAction( vcl::Font );
1467
1468 virtual void Scale( double fScaleX, double fScaleY ) override;
1469
1470 const vcl::Font& GetFont() const { return maFont; }
1471 void SetFont(const vcl::Font& rFont) { maFont = rFont; }
1472
1473};
1474
1476{
1477private:
1478
1480
1481public:
1483 MetaPushAction(MetaPushAction const &) = default;
1485 MetaPushAction & operator =(MetaPushAction const &) = delete; // due to MetaAction
1486 MetaPushAction & operator =(MetaPushAction &&) = delete; // due to MetaAction
1487private:
1488 virtual ~MetaPushAction() override;
1489public:
1490 virtual void Execute( OutputDevice* pOut ) override;
1491 virtual rtl::Reference<MetaAction> Clone() const override;
1492
1493 explicit MetaPushAction( vcl::PushFlags nFlags );
1494
1495 vcl::PushFlags GetFlags() const { return mnFlags; }
1496 void SetPushFlags(const vcl::PushFlags nFlags) { mnFlags = nFlags; }
1497};
1498
1500{
1501public:
1502
1503 MetaPopAction();
1504 MetaPopAction(MetaPopAction const &) = default;
1506 MetaPopAction & operator =(MetaPopAction const &) = delete; // due to MetaAction
1507 MetaPopAction & operator =(MetaPopAction &&) = delete; // due to MetaAction
1508private:
1509 virtual ~MetaPopAction() override;
1510public:
1511 virtual void Execute( OutputDevice* pOut ) override;
1512 virtual rtl::Reference<MetaAction> Clone() const override;
1513};
1514
1516{
1517private:
1518
1520
1521public:
1525 MetaRasterOpAction & operator =(MetaRasterOpAction const &) = delete; // due to MetaAction
1526 MetaRasterOpAction & operator =(MetaRasterOpAction &&) = delete; // due to MetaAction
1527private:
1528 virtual ~MetaRasterOpAction() override;
1529public:
1530 virtual void Execute( OutputDevice* pOut ) override;
1531 virtual rtl::Reference<MetaAction> Clone() const override;
1532
1533 explicit MetaRasterOpAction( RasterOp eRasterOp );
1534
1535 RasterOp GetRasterOp() const { return meRasterOp; }
1536 void SetRasterOp(const RasterOp eRasterOp) { meRasterOp = eRasterOp; }
1537};
1538
1539class SAL_DLLPUBLIC_RTTI MetaTransparentAction final : public MetaAction
1540{
1541private:
1542
1544 sal_uInt16 mnTransPercent;
1545
1546public:
1550 MetaTransparentAction & operator =(MetaTransparentAction const &) = delete; // due to MetaAction
1551 MetaTransparentAction & operator =(MetaTransparentAction &&) = delete; // due to MetaAction
1552private:
1553 virtual ~MetaTransparentAction() override;
1554public:
1555 virtual void Execute( OutputDevice* pOut ) override;
1556 virtual rtl::Reference<MetaAction> Clone() const override;
1557
1558 MetaTransparentAction( tools::PolyPolygon aPolyPoly, sal_uInt16 nTransPercent );
1559
1560 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1561 virtual void Scale( double fScaleX, double fScaleY ) override;
1562
1563 const tools::PolyPolygon& GetPolyPolygon() const { return maPolyPoly; }
1564 sal_uInt16 GetTransparence() const { return mnTransPercent; }
1565 void SetPolyPolygon(const tools::PolyPolygon& rPolyPoly) { maPolyPoly = rPolyPoly; }
1566 void SetTransparence(const sal_uInt16 nTransPercent) { mnTransPercent = nTransPercent; }
1567
1568 bool IsTransparent() const override { return true; }
1569};
1570
1571class SAL_DLLPUBLIC_RTTI MetaFloatTransparentAction final : public MetaAction
1572{
1573private:
1574
1579
1580public:
1584 MetaFloatTransparentAction & operator =(MetaFloatTransparentAction const &) = delete; // due to MetaAction
1585 MetaFloatTransparentAction & operator =(MetaFloatTransparentAction &&) = delete; // due to MetaAction
1586private:
1587 virtual ~MetaFloatTransparentAction() override;
1588public:
1589 virtual void Execute( OutputDevice* pOut ) override;
1590 virtual rtl::Reference<MetaAction> Clone() const override;
1591
1592 MetaFloatTransparentAction( const GDIMetaFile& rMtf, const Point& rPos,
1593 const Size& rSize, Gradient aGradient );
1594
1595 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1596 virtual void Scale( double fScaleX, double fScaleY ) override;
1597
1598 const GDIMetaFile& GetGDIMetaFile() const { return maMtf; }
1599 const Point& GetPoint() const { return maPoint; }
1600 const Size& GetSize() const { return maSize; }
1601 const Gradient& GetGradient() const { return maGradient; }
1602 void SetGDIMetaFile(const GDIMetaFile &rMtf) { maMtf = rMtf; }
1603 void SetPoint(const Point& rPoint) { maPoint = rPoint; }
1604 void SetSize(const Size& rSize) { maSize = rSize; }
1605 void SetGradient(const Gradient& rGradient) { maGradient = rGradient; }
1606 bool IsTransparent() const override { return true; }
1607};
1608
1610{
1611private:
1612
1617
1618public:
1619 MetaEPSAction();
1620 MetaEPSAction(MetaEPSAction const &) = default;
1622 MetaEPSAction & operator =(MetaEPSAction const &) = delete; // due to MetaAction
1623 MetaEPSAction & operator =(MetaEPSAction &&) = delete; // due to MetaAction
1624private:
1625 virtual ~MetaEPSAction() override;
1626public:
1627 virtual void Execute( OutputDevice* pOut ) override;
1628 virtual rtl::Reference<MetaAction> Clone() const override;
1629
1630 MetaEPSAction( const Point& rPoint, const Size& rSize,
1631 GfxLink aGfxLink, const GDIMetaFile& rSubst );
1632
1633 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1634 virtual void Scale( double fScaleX, double fScaleY ) override;
1635
1636 const GfxLink& GetLink() const { return maGfxLink; }
1637 const GDIMetaFile& GetSubstitute() const { return maSubst; }
1638 const Point& GetPoint() const { return maPoint; }
1639 const Size& GetSize() const { return maSize; }
1640 void SetLink(const GfxLink& rGfxLink) { maGfxLink = rGfxLink; }
1641 void SetSubstitute(const GDIMetaFile& rSubst) { maSubst = rSubst; }
1642 void SetPoint(const Point& rPoint) { maPoint = rPoint; }
1643 void SetSize(const Size& rSize) { maSize = rSize; }
1644};
1645
1647{
1648private:
1649
1651 bool mbSet;
1652
1653public:
1657 MetaRefPointAction & operator =(MetaRefPointAction const &) = delete; // due to MetaAction
1658 MetaRefPointAction & operator =(MetaRefPointAction &&) = delete; // due to MetaAction
1659private:
1660 virtual ~MetaRefPointAction() override;
1661public:
1662 virtual void Execute( OutputDevice* pOut ) override;
1663 virtual rtl::Reference<MetaAction> Clone() const override;
1664
1665 MetaRefPointAction( const Point& rRefPoint, bool bSet );
1666
1667 const Point& GetRefPoint() const { return maRefPoint; }
1668 void SetRefPoint(const Point& rRefPoint) { maRefPoint = rRefPoint; }
1669 void SetSetting(const bool bSet) { mbSet = bSet; }
1670 bool IsSetting() const { return mbSet; }
1671};
1672
1674{
1675private:
1676
1677 OString maComment;
1678 sal_Int32 mnValue;
1679 sal_uInt32 mnDataSize;
1680 std::unique_ptr<sal_uInt8[]>
1682
1683 SAL_DLLPRIVATE void ImplInitDynamicData( const sal_uInt8* pData, sal_uInt32 nDataSize );
1684
1685private:
1686 virtual ~MetaCommentAction() override;
1687
1688public:
1689 explicit MetaCommentAction();
1690 explicit MetaCommentAction( const MetaCommentAction& rAct );
1691 explicit MetaCommentAction( OString aComment, sal_Int32 nValue = 0, const sal_uInt8* pData = nullptr, sal_uInt32 nDataSize = 0 );
1692
1693 virtual void Move( tools::Long nHorzMove, tools::Long nVertMove ) override;
1694 virtual void Scale( double fScaleX, double fScaleY ) override;
1695
1696 virtual void Execute( OutputDevice* pOut ) override;
1697 virtual rtl::Reference<MetaAction> Clone() const override;
1698
1699 const OString& GetComment() const { return maComment; }
1700 sal_Int32 GetValue() const { return mnValue; }
1701 sal_uInt32 GetDataSize() const { return mnDataSize; }
1702 const sal_uInt8* GetData() const { return mpData.get(); }
1703 void SetComment(const OString& rComment) { maComment = rComment; }
1704 void SetValue(const sal_Int32 nValue) { mnValue = nValue; }
1705 void SetDataSize(const sal_Int32 nDataSize) { mnDataSize = nDataSize; }
1706 void SetData(const sal_uInt8* pData, const sal_uInt32 nDataSize) { ImplInitDynamicData(pData, nDataSize); }
1707};
1708
1710{
1711private:
1712
1714
1715public:
1719 MetaLayoutModeAction & operator =(MetaLayoutModeAction const &) = delete; // due to MetaAction
1720 MetaLayoutModeAction & operator =(MetaLayoutModeAction &&) = delete; // due to MetaAction
1721private:
1722 virtual ~MetaLayoutModeAction() override;
1723public:
1724 virtual void Execute( OutputDevice* pOut ) override;
1725 virtual rtl::Reference<MetaAction> Clone() const override;
1726
1728
1729 vcl::text::ComplexTextLayoutFlags GetLayoutMode() const { return mnLayoutMode; }
1730 void SetLayoutMode(const vcl::text::ComplexTextLayoutFlags nLayoutMode) { mnLayoutMode = nLayoutMode; }
1731};
1732
1734{
1735private:
1736
1738
1739public:
1743 MetaTextLanguageAction & operator =(MetaTextLanguageAction const &) = delete; // due to MetaAction
1744 MetaTextLanguageAction & operator =(MetaTextLanguageAction &&) = delete; // due to MetaAction
1745private:
1746 virtual ~MetaTextLanguageAction() override;
1747public:
1748 virtual void Execute( OutputDevice* pOut ) override;
1749 virtual rtl::Reference<MetaAction> Clone() const override;
1750
1752
1753 LanguageType GetTextLanguage() const { return meTextLanguage; }
1754 void SetTextLanguage(const LanguageType eTextLanguage) { meTextLanguage = eTextLanguage; }
1755};
1756
1757#endif // INCLUDED_VCL_METAACT_HXX
1758
1759/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
basegfx::BColor maColor
int mnIndex
DrawTextFlags
RasterOp
Definition: RasterOp.hxx:23
B2DPoint maPoint
bool IsAlpha() const
Definition: BitmapEx.cxx:193
Definition: hatch.hxx:47
virtual bool IsTransparent() const
#i10613# Extracted from Printer::GetPreparedMetaFile.
Definition: metaact.hxx:98
MetaActionType mnType
Definition: metaact.hxx:75
MetaActionType GetType() const
Definition: metaact.hxx:94
virtual void Execute(OutputDevice *pOut)
Definition: metaact.cxx:99
virtual void Scale(double fScaleX, double fScaleY)
Definition: metaact.cxx:112
virtual void Move(tools::Long nHorzMove, tools::Long nVertMove)
Definition: metaact.cxx:108
virtual rtl::Reference< MetaAction > Clone() const
Definition: metaact.cxx:103
oslInterlockedCount GetRefCount() const
Definition: metaact.hxx:87
Point maStartPt
Definition: metaact.hxx:284
void SetStartPoint(const Point &rPoint)
Definition: metaact.hxx:309
MetaArcAction(MetaArcAction &&)=default
const Point & GetStartPoint() const
Definition: metaact.hxx:306
void SetEndPoint(const Point &rPoint)
Definition: metaact.hxx:310
Point maEndPt
Definition: metaact.hxx:285
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:305
tools::Rectangle maRect
Definition: metaact.hxx:283
MetaArcAction(MetaArcAction const &)=default
const Point & GetEndPoint() const
Definition: metaact.hxx:307
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:308
Bitmap maBmp
Definition: metaact.hxx:671
MetaBmpAction(MetaBmpAction const &)=default
const Bitmap & GetBitmap() const
Definition: metaact.hxx:691
MetaBmpAction(MetaBmpAction &&)=default
void SetBitmap(const Bitmap &rBmp)
Definition: metaact.hxx:693
const Point & GetPoint() const
Definition: metaact.hxx:692
void SetPoint(const Point &rPt)
Definition: metaact.hxx:694
void SetBitmapEx(BitmapEx rBmpEx)
Definition: metaact.hxx:798
MetaBmpExAction(MetaBmpExAction &&)=default
MetaBmpExAction(MetaBmpExAction const &)=default
bool IsTransparent() const override
#i10613# Extracted from Printer::GetPreparedMetaFile.
Definition: metaact.hxx:800
void SetPoint(const Point &rPt)
Definition: metaact.hxx:799
const BitmapEx & GetBitmapEx() const
Definition: metaact.hxx:796
const Point & GetPoint() const
Definition: metaact.hxx:797
BitmapEx maBmpEx
Definition: metaact.hxx:776
const Size & GetSize() const
Definition: metaact.hxx:831
MetaBmpExScaleAction(MetaBmpExScaleAction const &)=default
const Point & GetPoint() const
Definition: metaact.hxx:830
MetaBmpExScaleAction(MetaBmpExScaleAction &&)=default
void SetPoint(const Point &rPt)
Definition: metaact.hxx:833
const BitmapEx & GetBitmapEx() const
Definition: metaact.hxx:829
void SetBitmapEx(const BitmapEx &rBmpEx)
Definition: metaact.hxx:832
bool IsTransparent() const override
#i10613# Extracted from Printer::GetPreparedMetaFile.
Definition: metaact.hxx:835
void SetSize(const Size &rSz)
Definition: metaact.hxx:834
void SetBitmap(const Bitmap &rBmp)
Definition: metaact.hxx:726
MetaBmpScaleAction(MetaBmpScaleAction const &)=default
const Point & GetPoint() const
Definition: metaact.hxx:724
const Size & GetSize() const
Definition: metaact.hxx:725
MetaBmpScaleAction(MetaBmpScaleAction &&)=default
const Bitmap & GetBitmap() const
Definition: metaact.hxx:723
void SetSize(const Size &rSz)
Definition: metaact.hxx:728
void SetPoint(const Point &rPt)
Definition: metaact.hxx:727
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:373
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:376
MetaChordAction(MetaChordAction const &)=default
const Point & GetStartPoint() const
Definition: metaact.hxx:374
tools::Rectangle maRect
Definition: metaact.hxx:351
void SetStartPoint(const Point &rPoint)
Definition: metaact.hxx:377
void SetEndPoint(const Point &rPoint)
Definition: metaact.hxx:378
const Point & GetEndPoint() const
Definition: metaact.hxx:375
MetaChordAction(MetaChordAction &&)=default
vcl::Region maRegion
Definition: metaact.hxx:1120
const vcl::Region & GetRegion() const
Definition: metaact.hxx:1140
void SetRegion(const vcl::Region &rRegion)
Definition: metaact.hxx:1142
MetaClipRegionAction(MetaClipRegionAction &&)=default
bool IsClipping() const
Definition: metaact.hxx:1141
void SetClipping(bool bClip)
Definition: metaact.hxx:1143
MetaClipRegionAction(MetaClipRegionAction const &)=default
sal_uInt32 mnDataSize
Definition: metaact.hxx:1679
sal_Int32 GetValue() const
Definition: metaact.hxx:1700
const sal_uInt8 * GetData() const
Definition: metaact.hxx:1702
const OString & GetComment() const
Definition: metaact.hxx:1699
void SetValue(const sal_Int32 nValue)
Definition: metaact.hxx:1704
void SetData(const sal_uInt8 *pData, const sal_uInt32 nDataSize)
Definition: metaact.hxx:1706
void SetComment(const OString &rComment)
Definition: metaact.hxx:1703
std::unique_ptr< sal_uInt8[]> mpData
Definition: metaact.hxx:1681
sal_Int32 mnValue
Definition: metaact.hxx:1678
void SetDataSize(const sal_Int32 nDataSize)
Definition: metaact.hxx:1705
sal_uInt32 GetDataSize() const
Definition: metaact.hxx:1701
void SetSize(const Size &rSize)
Definition: metaact.hxx:1643
GfxLink maGfxLink
Definition: metaact.hxx:1613
const GDIMetaFile & GetSubstitute() const
Definition: metaact.hxx:1637
const Point & GetPoint() const
Definition: metaact.hxx:1638
void SetSubstitute(const GDIMetaFile &rSubst)
Definition: metaact.hxx:1641
MetaEPSAction(MetaEPSAction const &)=default
MetaEPSAction(MetaEPSAction &&)=default
void SetLink(const GfxLink &rGfxLink)
Definition: metaact.hxx:1640
GDIMetaFile maSubst
Definition: metaact.hxx:1614
const Size & GetSize() const
Definition: metaact.hxx:1639
void SetPoint(const Point &rPoint)
Definition: metaact.hxx:1642
const GfxLink & GetLink() const
Definition: metaact.hxx:1636
MetaEllipseAction(MetaEllipseAction const &)=default
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:276
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:275
tools::Rectangle maRect
Definition: metaact.hxx:256
MetaEllipseAction(MetaEllipseAction &&)=default
void SetColor(Color rColor)
Definition: metaact.hxx:1280
void SetSetting(bool rSet)
Definition: metaact.hxx:1279
MetaFillColorAction(MetaFillColorAction const &)=default
const Color & GetColor() const
Definition: metaact.hxx:1277
bool IsSetting() const
Definition: metaact.hxx:1278
MetaFillColorAction(MetaFillColorAction &&)=default
void SetPoint(const Point &rPoint)
Definition: metaact.hxx:1603
void SetSize(const Size &rSize)
Definition: metaact.hxx:1604
void SetGDIMetaFile(const GDIMetaFile &rMtf)
Definition: metaact.hxx:1602
const Gradient & GetGradient() const
Definition: metaact.hxx:1601
const Size & GetSize() const
Definition: metaact.hxx:1600
void SetGradient(const Gradient &rGradient)
Definition: metaact.hxx:1605
MetaFloatTransparentAction(MetaFloatTransparentAction &&)=default
const GDIMetaFile & GetGDIMetaFile() const
Definition: metaact.hxx:1598
bool IsTransparent() const override
#i10613# Extracted from Printer::GetPreparedMetaFile.
Definition: metaact.hxx:1606
const Point & GetPoint() const
Definition: metaact.hxx:1599
MetaFloatTransparentAction(MetaFloatTransparentAction const &)=default
const vcl::Font & GetFont() const
Definition: metaact.hxx:1470
void SetFont(const vcl::Font &rFont)
Definition: metaact.hxx:1471
vcl::Font maFont
Definition: metaact.hxx:1447
MetaFontAction(MetaFontAction const &)=default
MetaFontAction(MetaFontAction &&)=default
void correctFontScale(tools::Long nNewFontScale)
Definition: metaact.hxx:1452
MetaGradientAction(MetaGradientAction &&)=default
Gradient maGradient
Definition: metaact.hxx:1001
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:1023
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:1020
MetaGradientAction(MetaGradientAction const &)=default
tools::Rectangle maRect
Definition: metaact.hxx:1000
const Gradient & GetGradient() const
Definition: metaact.hxx:1021
void SetGradient(const Gradient &rGradient)
Definition: metaact.hxx:1022
MetaGradientExAction(MetaGradientExAction &&)=default
MetaGradientExAction(MetaGradientExAction const &)=default
const tools::PolyPolygon & GetPolyPolygon() const
Definition: metaact.hxx:1050
void SetGradient(const Gradient &rGradient)
Definition: metaact.hxx:1053
const Gradient & GetGradient() const
Definition: metaact.hxx:1051
tools::PolyPolygon maPolyPoly
Definition: metaact.hxx:1030
void SetPolyPolygon(const tools::PolyPolygon &rPolyPoly)
Definition: metaact.hxx:1052
void SetPolyPolygon(const tools::PolyPolygon &rPolyPoly)
Definition: metaact.hxx:1082
MetaHatchAction(MetaHatchAction &&)=default
const tools::PolyPolygon & GetPolyPolygon() const
Definition: metaact.hxx:1080
const Hatch & GetHatch() const
Definition: metaact.hxx:1081
tools::PolyPolygon maPolyPoly
Definition: metaact.hxx:1060
MetaHatchAction(MetaHatchAction const &)=default
void SetHatch(const Hatch &rHatch)
Definition: metaact.hxx:1083
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:1170
MetaISectRectClipRegionAction(MetaISectRectClipRegionAction const &)=default
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:1169
MetaISectRectClipRegionAction(MetaISectRectClipRegionAction &&)=default
const vcl::Region & GetRegion() const
Definition: metaact.hxx:1196
MetaISectRegionClipRegionAction(MetaISectRegionClipRegionAction const &)=default
void SetRegion(const vcl::Region &rRegion)
Definition: metaact.hxx:1197
MetaISectRegionClipRegionAction(MetaISectRegionClipRegionAction &&)=default
void SetLayoutMode(const vcl::text::ComplexTextLayoutFlags nLayoutMode)
Definition: metaact.hxx:1730
MetaLayoutModeAction(MetaLayoutModeAction const &)=default
vcl::text::ComplexTextLayoutFlags GetLayoutMode() const
Definition: metaact.hxx:1729
vcl::text::ComplexTextLayoutFlags mnLayoutMode
Definition: metaact.hxx:1713
MetaLayoutModeAction(MetaLayoutModeAction &&)=default
LineInfo maLineInfo
Definition: metaact.hxx:160
void SetEndPoint(const Point &rPoint)
Definition: metaact.hxx:187
const LineInfo & GetLineInfo() const
Definition: metaact.hxx:185
void SetLineInfo(const LineInfo &rLineInfo)
Definition: metaact.hxx:188
MetaLineAction(MetaLineAction &&)=default
const Point & GetEndPoint() const
Definition: metaact.hxx:184
const Point & GetStartPoint() const
Definition: metaact.hxx:183
void SetStartPoint(const Point &rPoint)
Definition: metaact.hxx:186
Point maStartPt
Definition: metaact.hxx:161
MetaLineAction(MetaLineAction const &)=default
MetaLineColorAction(MetaLineColorAction const &)=default
void SetSetting(bool rSet)
Definition: metaact.hxx:1253
MetaLineColorAction(MetaLineColorAction &&)=default
bool IsSetting() const
Definition: metaact.hxx:1251
const Color & GetColor() const
Definition: metaact.hxx:1250
void SetColor(const Color &rColor)
Definition: metaact.hxx:1252
MetaMapModeAction(MetaMapModeAction const &)=default
void SetMapMode(const MapMode &rMapMode)
Definition: metaact.hxx:1437
const MapMode & GetMapMode() const
Definition: metaact.hxx:1436
MetaMapModeAction(MetaMapModeAction &&)=default
const Point & GetPoint() const
Definition: metaact.hxx:909
Bitmap maBmp
Definition: metaact.hxx:884
MetaMaskAction(MetaMaskAction const &)=default
MetaMaskAction(MetaMaskAction &&)=default
void SetBitmap(const Bitmap &rBmp)
Definition: metaact.hxx:910
const Bitmap & GetBitmap() const
Definition: metaact.hxx:907
void SetPoint(const Point &rPt)
Definition: metaact.hxx:911
const Color & GetColor() const
Definition: metaact.hxx:908
void SetPoint(const Point &rPt)
Definition: metaact.hxx:947
void SetBitmap(const Bitmap &rBmp)
Definition: metaact.hxx:946
MetaMaskScaleAction(MetaMaskScaleAction const &)=default
void SetSize(const Size &rSz)
Definition: metaact.hxx:948
const Bitmap & GetBitmap() const
Definition: metaact.hxx:942
const Point & GetPoint() const
Definition: metaact.hxx:944
MetaMaskScaleAction(MetaMaskScaleAction &&)=default
const Color & GetColor() const
Definition: metaact.hxx:943
const Size & GetSize() const
Definition: metaact.hxx:945
void SetSrcSize(const Size &rSz)
Definition: metaact.hxx:993
void SetColor(Color rColor)
Definition: metaact.hxx:989
void SetDestPoint(const Point &rPt)
Definition: metaact.hxx:990
const Bitmap & GetBitmap() const
Definition: metaact.hxx:982
const Point & GetSrcPoint() const
Definition: metaact.hxx:986
void SetSrcPoint(const Point &rPt)
Definition: metaact.hxx:992
const Color & GetColor() const
Definition: metaact.hxx:983
const Size & GetSrcSize() const
Definition: metaact.hxx:987
void SetBitmap(const Bitmap &rBmp)
Definition: metaact.hxx:988
MetaMaskScalePartAction(MetaMaskScalePartAction const &)=default
MetaMaskScalePartAction(MetaMaskScalePartAction &&)=default
const Point & GetDestPoint() const
Definition: metaact.hxx:984
void SetDestSize(const Size &rSz)
Definition: metaact.hxx:991
const Size & GetDestSize() const
Definition: metaact.hxx:985
MetaMoveClipRegionAction(MetaMoveClipRegionAction const &)=default
tools::Long GetVertMove() const
Definition: metaact.hxx:1224
tools::Long GetHorzMove() const
Definition: metaact.hxx:1223
void SetHorzMove(tools::Long nHorzMove)
Definition: metaact.hxx:1225
void SetVertMove(tools::Long nVertMove)
Definition: metaact.hxx:1226
MetaMoveClipRegionAction(MetaMoveClipRegionAction &&)=default
MetaOverlineColorAction(MetaOverlineColorAction &&)=default
void SetSetting(bool bSet)
Definition: metaact.hxx:1386
const Color & GetColor() const
Definition: metaact.hxx:1384
void SetColor(const Color &rColor)
Definition: metaact.hxx:1385
bool IsSetting() const
Definition: metaact.hxx:1387
MetaOverlineColorAction(MetaOverlineColorAction const &)=default
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:342
MetaPieAction(MetaPieAction &&)=default
Point maStartPt
Definition: metaact.hxx:318
void SetEndPoint(const Point &rPoint)
Definition: metaact.hxx:344
MetaPieAction(MetaPieAction const &)=default
void SetStartPoint(const Point &rPoint)
Definition: metaact.hxx:343
const Point & GetEndPoint() const
Definition: metaact.hxx:341
const Point & GetStartPoint() const
Definition: metaact.hxx:340
tools::Rectangle maRect
Definition: metaact.hxx:317
Point maEndPt
Definition: metaact.hxx:319
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:339
void SetPoint(const Point &rPt)
Definition: metaact.hxx:126
MetaPixelAction(MetaPixelAction &&)=default
const Point & GetPoint() const
Definition: metaact.hxx:124
void SetColor(Color rColor)
Definition: metaact.hxx:127
MetaPixelAction(MetaPixelAction const &)=default
const Color & GetColor() const
Definition: metaact.hxx:125
MetaPointAction(MetaPointAction &&)=default
MetaPointAction(MetaPointAction const &)=default
void SetPoint(const Point &rPt)
Definition: metaact.hxx:153
const Point & GetPoint() const
Definition: metaact.hxx:152
MetaPolyLineAction(MetaPolyLineAction &&)=default
void SetPolygon(const tools::Polygon &rPoly)
Definition: metaact.hxx:409
tools::Polygon maPoly
Definition: metaact.hxx:386
const LineInfo & GetLineInfo() const
Definition: metaact.hxx:407
LineInfo maLineInfo
Definition: metaact.hxx:385
void SetLineInfo(const LineInfo &rLineInfo)
Definition: metaact.hxx:408
MetaPolyLineAction(MetaPolyLineAction const &)=default
const tools::Polygon & GetPolygon() const
Definition: metaact.hxx:406
tools::PolyPolygon maPolyPoly
Definition: metaact.hxx:443
void SetPolyPolygon(const tools::PolyPolygon &rPolyPoly)
Definition: metaact.hxx:463
MetaPolyPolygonAction(MetaPolyPolygonAction const &)=default
const tools::PolyPolygon & GetPolyPolygon() const
Definition: metaact.hxx:462
MetaPolyPolygonAction(MetaPolyPolygonAction &&)=default
tools::Polygon maPoly
Definition: metaact.hxx:416
MetaPolygonAction(MetaPolygonAction const &)=default
MetaPolygonAction(MetaPolygonAction &&)=default
const tools::Polygon & GetPolygon() const
Definition: metaact.hxx:435
void SetPolygon(const tools::Polygon &rPoly)
Definition: metaact.hxx:436
MetaPopAction(MetaPopAction &&)=default
MetaPopAction(MetaPopAction const &)=default
MetaPushAction(MetaPushAction &&)=default
MetaPushAction(MetaPushAction const &)=default
void SetPushFlags(const vcl::PushFlags nFlags)
Definition: metaact.hxx:1496
vcl::PushFlags mnFlags
Definition: metaact.hxx:1479
vcl::PushFlags GetFlags() const
Definition: metaact.hxx:1495
RasterOp GetRasterOp() const
Definition: metaact.hxx:1535
MetaRasterOpAction(MetaRasterOpAction &&)=default
void SetRasterOp(const RasterOp eRasterOp)
Definition: metaact.hxx:1536
MetaRasterOpAction(MetaRasterOpAction const &)=default
RasterOp meRasterOp
Definition: metaact.hxx:1519
MetaRectAction(MetaRectAction &&)=default
MetaRectAction(MetaRectAction const &)=default
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:214
tools::Rectangle maRect
Definition: metaact.hxx:195
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:215
void SetRefPoint(const Point &rRefPoint)
Definition: metaact.hxx:1668
bool IsSetting() const
Definition: metaact.hxx:1670
void SetSetting(const bool bSet)
Definition: metaact.hxx:1669
const Point & GetRefPoint() const
Definition: metaact.hxx:1667
MetaRefPointAction(MetaRefPointAction const &)=default
MetaRefPointAction(MetaRefPointAction &&)=default
MetaRoundRectAction(MetaRoundRectAction &&)=default
tools::Rectangle maRect
Definition: metaact.hxx:222
sal_uInt32 mnHorzRound
Definition: metaact.hxx:223
MetaRoundRectAction(MetaRoundRectAction const &)=default
void SetHorzRound(sal_uInt32 rHorzRound)
Definition: metaact.hxx:248
sal_uInt32 mnVertRound
Definition: metaact.hxx:224
sal_uInt32 GetHorzRound() const
Definition: metaact.hxx:245
void SetVertRound(sal_uInt32 rVertRound)
Definition: metaact.hxx:249
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:247
sal_uInt32 GetVertRound() const
Definition: metaact.hxx:246
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:244
sal_uInt32 GetWidth() const
Definition: metaact.hxx:582
sal_Int32 GetLen() const
Definition: metaact.hxx:584
void SetWidth(sal_uInt32 rWidth)
Definition: metaact.hxx:587
sal_Int32 GetIndex() const
Definition: metaact.hxx:583
const OUString & GetText() const
Definition: metaact.hxx:581
sal_uInt32 mnWidth
Definition: metaact.hxx:557
void SetIndex(sal_uInt32 rIndex)
Definition: metaact.hxx:588
void SetLen(sal_uInt32 rLen)
Definition: metaact.hxx:589
MetaStretchTextAction(MetaStretchTextAction &&)=default
void SetText(const OUString &rStr)
Definition: metaact.hxx:586
MetaStretchTextAction(MetaStretchTextAction const &)=default
const Point & GetPoint() const
Definition: metaact.hxx:580
void SetPoint(const Point &rPt)
Definition: metaact.hxx:585
const Point & GetPoint() const
Definition: metaact.hxx:493
MetaTextAction(MetaTextAction const &)=default
sal_Int32 GetLen() const
Definition: metaact.hxx:496
OUString maStr
Definition: metaact.hxx:471
void SetIndex(sal_Int32 rIndex)
Definition: metaact.hxx:499
void SetText(const OUString &rStr)
Definition: metaact.hxx:498
void SetLen(sal_Int32 rLen)
Definition: metaact.hxx:500
MetaTextAction(MetaTextAction &&)=default
const OUString & GetText() const
Definition: metaact.hxx:494
sal_Int32 mnIndex
Definition: metaact.hxx:472
void SetPoint(const Point &rPt)
Definition: metaact.hxx:497
sal_Int32 GetIndex() const
Definition: metaact.hxx:495
sal_Int32 mnLen
Definition: metaact.hxx:473
MetaTextAlignAction(MetaTextAlignAction &&)=default
MetaTextAlignAction(MetaTextAlignAction const &)=default
void SetTextAlign(TextAlign eAlign)
Definition: metaact.hxx:1411
TextAlign GetTextAlign() const
Definition: metaact.hxx:1410
MetaTextColorAction(MetaTextColorAction const &)=default
void SetColor(Color rColor)
Definition: metaact.hxx:1305
MetaTextColorAction(MetaTextColorAction &&)=default
const Color & GetColor() const
Definition: metaact.hxx:1304
void SetColor(Color rColor)
Definition: metaact.hxx:1330
MetaTextFillColorAction(MetaTextFillColorAction &&)=default
MetaTextFillColorAction(MetaTextFillColorAction const &)=default
bool IsSetting() const
Definition: metaact.hxx:1332
const Color & GetColor() const
Definition: metaact.hxx:1329
void SetSetting(bool bSet)
Definition: metaact.hxx:1331
MetaTextLanguageAction(MetaTextLanguageAction const &)=default
LanguageType meTextLanguage
Definition: metaact.hxx:1737
LanguageType GetTextLanguage() const
Definition: metaact.hxx:1753
MetaTextLanguageAction(MetaTextLanguageAction &&)=default
void SetTextLanguage(const LanguageType eTextLanguage)
Definition: metaact.hxx:1754
const Point & GetStartPoint() const
Definition: metaact.hxx:655
tools::Long GetWidth() const
Definition: metaact.hxx:656
FontLineStyle GetUnderline() const
Definition: metaact.hxx:658
void SetWidth(tools::Long rWidth)
Definition: metaact.hxx:661
void SetStartPoint(const Point &rPos)
Definition: metaact.hxx:660
void SetStrikeout(FontStrikeout eStrikeout)
Definition: metaact.hxx:662
FontLineStyle GetOverline() const
Definition: metaact.hxx:659
MetaTextLineAction(MetaTextLineAction &&)=default
FontStrikeout meStrikeout
Definition: metaact.hxx:632
void SetOverline(FontLineStyle eOverline)
Definition: metaact.hxx:664
tools::Long mnWidth
Definition: metaact.hxx:631
FontLineStyle meUnderline
Definition: metaact.hxx:633
FontStrikeout GetStrikeout() const
Definition: metaact.hxx:657
FontLineStyle meOverline
Definition: metaact.hxx:634
MetaTextLineAction(MetaTextLineAction const &)=default
void SetUnderline(FontLineStyle eUnderline)
Definition: metaact.hxx:663
bool IsSetting() const
Definition: metaact.hxx:1360
MetaTextLineColorAction(MetaTextLineColorAction &&)=default
void SetSetting(bool bSet)
Definition: metaact.hxx:1359
const Color & GetColor() const
Definition: metaact.hxx:1357
MetaTextLineColorAction(MetaTextLineColorAction const &)=default
void SetColor(const Color &rColor)
Definition: metaact.hxx:1358
void SetText(const OUString &rStr)
Definition: metaact.hxx:622
DrawTextFlags GetStyle() const
Definition: metaact.hxx:620
MetaTextRectAction(MetaTextRectAction const &)=default
DrawTextFlags mnStyle
Definition: metaact.hxx:598
MetaTextRectAction(MetaTextRectAction &&)=default
const tools::Rectangle & GetRect() const
Definition: metaact.hxx:618
void SetRect(const tools::Rectangle &rRect)
Definition: metaact.hxx:621
tools::Rectangle maRect
Definition: metaact.hxx:596
void SetStyle(DrawTextFlags rStyle)
Definition: metaact.hxx:623
const OUString & GetText() const
Definition: metaact.hxx:619
sal_uInt16 GetTransparence() const
Definition: metaact.hxx:1564
sal_uInt16 mnTransPercent
Definition: metaact.hxx:1544
bool IsTransparent() const override
#i10613# Extracted from Printer::GetPreparedMetaFile.
Definition: metaact.hxx:1568
MetaTransparentAction(MetaTransparentAction &&)=default
MetaTransparentAction(MetaTransparentAction const &)=default
void SetTransparence(const sal_uInt16 nTransPercent)
Definition: metaact.hxx:1566
const tools::PolyPolygon & GetPolyPolygon() const
Definition: metaact.hxx:1563
tools::PolyPolygon maPolyPoly
Definition: metaact.hxx:1543
void SetPolyPolygon(const tools::PolyPolygon &rPolyPoly)
Definition: metaact.hxx:1565
Some things multiple-inherit from VclAbstractDialog and OutputDevice, so we need to use virtual inher...
Definition: outdev.hxx:171
oslInterlockedCount m_nCount
void operator=(SimpleReferenceObject) SAL_DELETED_FUNCTION
void SetAverageFontWidth(tools::Long nWidth)
Definition: font/font.cxx:934
virtual void SetText(const OUString &rStr) override
#define VCL_DLLPUBLIC
Definition: dllapi.h:29
::basegfx::B2IVector maSize
sal_Int16 nValue
FontLineStyle
FontStrikeout
FuncFlags mnFlags
MetaActionType
std::unique_ptr< sal_Int32[]> pData
css::uno::Reference< css::animations::XAnimationNode > Clone(const css::uno::Reference< css::animations::XAnimationNode > &xSourceNode, const SdPage *pSource=nullptr, const SdPage *pTarget=nullptr)
TextAlign
const ::avmedia::MediaItem * Execute(const SdrMarkView *pSdrView, SfxRequest const &rReq)
long Long
BitmapEx GetBitmapEx(BitmapEx const &rBitmapEx, DrawModeFlags nDrawMode)
Definition: drawmode.cxx:224
ComplexTextLayoutFlags
Definition: State.hxx:76
PushFlags
Definition: State.hxx:40
OUString maComment
sal_Int32 mnType
double mnWidth
static SfxItemSet & rSet
const double mnValue
rtl_TextEncoding meActualCharSet
Definition: metaact.hxx:54
rtl_TextEncoding meActualCharSet
Definition: metaact.hxx:65
tools::Long GetLen(const Point &rPnt)
unsigned char sal_uInt8