casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
QPExportCanvas.h
Go to the documentation of this file.
1 //# Copyright (C) 2008
2 //# Associated Universities, Inc. Washington DC, USA.
3 //#
4 //# This library is free software; you can redistribute it and/or modify it
5 //# under the terms of the GNU Library General Public License as published by
6 //# the Free Software Foundation; either version 2 of the License, or (at your
7 //# option) any later version.
8 //#
9 //# This library is distributed in the hope that it will be useful, but WITHOUT
10 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
12 //# License for more details.
13 //#
14 //# You should have received a copy of the GNU Library General Public License
15 //# along with this library; if not, write to the Free Software Foundation,
16 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
17 //#
18 //# Correspondence concerning AIPS++ should be addressed as follows:
19 //# Internet email: aips2-request@nrao.edu.
20 //# Postal address: AIPS++ Project Office
21 //# National Radio Astronomy Observatory
22 //# 520 Edgemont Road
23 //# Charlottesville, VA 22903-2475 USA
24 //#
25 
26 #ifndef QPEXPORTCANVAS_H_
27 #define QPEXPORTCANVAS_H_
28 
31 #include <QPrinter>
32 
33 namespace casa {
39 class QPExportCanvas : public PlotCanvas {
40 public:
42  virtual ~QPExportCanvas(){}
43  virtual bool print( QPrinter& printer ) = 0;
44  virtual bool print( QPainter* painter, PlotAreaFillPtr paf, double widthRatio,
45  double heightRatio, int externalAxisWidth, int externalAxisHeight,
46  int rowIndex, int colIndex, QRect imageRect ) = 0;
47  virtual bool printRect( QPainter* painter, QRect printGeom) = 0;
48  virtual QImage grabImageFromCanvas(const PlotExportFormat& format ) = 0;
49  virtual PlotLoggerPtr logger() const = 0;
50  virtual int canvasWidth() const = 0;
51  virtual int canvasHeight() const = 0;
52  virtual const QPalette& palette() const = 0;
53  virtual QPalette::ColorRole backgroundRole() const = 0;
54  virtual PlotFactory* implementationFactory() const = 0;
55  virtual bool isAxis() const {
56  return false;
57  }
58  virtual bool isVertical() const {
59  return false;
60  }
61 };
62 
63 }
64 #endif /* QPEXPORTCANVAS_H_ */
virtual PlotFactory * implementationFactory() const =0
Returns a new instance of a PlotFactory that can create plot items for this implementation.
The idea behind a plot factory is to produce classes that are useful to the underlying implementation...
Definition: PlotFactory.h:52
virtual bool isAxis() const
Interface implemented by classes that can export their draw area (QPAxis &amp; QPCanvas).
virtual const QPalette & palette() const =0
PlotExportFormat contains parameters for exporting a canvas to a file.
Definition: PlotOptions.h:817
virtual QPalette::ColorRole backgroundRole() const =0
virtual PlotLoggerPtr logger() const =0
PlotCanvas is an area for different PlotItems to be attached and drawn.
Definition: PlotCanvas.h:83
virtual bool print(QPrinter &printer)=0
virtual bool isVertical() const
virtual int canvasHeight() const =0
virtual bool printRect(QPainter *painter, QRect printGeom)=0
virtual int canvasWidth() const =0
virtual QImage grabImageFromCanvas(const PlotExportFormat &format)=0