wxMaxima
src
graphical_io
Printout.h
Go to the documentation of this file.
1
// -*- mode: c++; c-file-style: "linux"; c-basic-offset: 2; indent-tabs-mode: nil -*-
2
//
3
// Copyright (C) 2004-2015 Andrej Vodopivec <andrej.vodopivec@gmail.com>
4
// (C) 2016 Gunter Königsmann <wxMaxima@physikbuch.de>
5
//
6
// This program is free software; you can redistribute it and/or modify
7
// it under the terms of the GNU General Public License as published by
8
// the Free Software Foundation; either version 2 of the License, or
9
// (at your option) any later version.
10
//
11
// This program is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
// GNU General Public License for more details.
15
//
16
//
17
// You should have received a copy of the GNU General Public License
18
// along with this program; if not, write to the Free Software
19
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
//
21
// SPDX-License-Identifier: GPL-2.0+
22
29
#ifndef MATHPRINTOUT_H
30
#define MATHPRINTOUT_H
31
32
#include "precomp.h"
33
#include <wx/wx.h>
34
#include <wx/print.h>
35
#include <wx/dcmemory.h>
36
37
#include <vector>
38
39
#include "
GroupCell.h
"
40
41
class
Printout
:
public
wxPrintout
42
{
43
public
:
44
Printout
(wxString title,
GroupCell
*tree,
double
scaleFactor);
45
46
~
Printout
();
47
48
void
DestroyTree();
49
50
void
DestroyTree(
GroupCell
*tree);
51
52
void
SetupData();
53
54
void
BreakPages();
55
56
void
Recalculate();
57
58
bool
OnPrintPage(
int
num);
59
60
bool
HasPage(
unsigned
int
num);
61
62
void
GetPageInfo(
int
*minPage,
int
*maxPage,
int
*fromPage,
int
*toPage);
63
64
bool
OnBeginDocument(
int
startPage,
int
endPage);
65
66
void
OnPreparePrinting();
67
68
void
GetPageMargins(
int
*horizontal,
int
*vertical);
69
70
int
GetHeaderHeight();
71
72
void
PrintHeader(
int
pageNum, wxDC *dc);
73
74
private
:
75
wxString m_title;
76
std::unique_ptr<GroupCell> m_tree;
77
std::vector<Cell *> m_pages;
78
Configuration
m_configuration;
79
Configuration
*m_configPointer;
80
double
m_scaleFactor;
81
};
82
83
#endif // MATHPRINTOUT_H
GroupCell.h
Printout
Definition:
Printout.h:41
Configuration
Definition:
Configuration.h:83
GroupCell
Definition:
GroupCell.h:68
Generated by
1.8.17