35 #include <QStackedWidget>
36 #include <QImageWriter>
38 #include <QPushButton>
39 #include <QGridLayout>
43 #include <QCloseEvent>
48 setWindowTitle( tr(
"Choose a filename to save under" ) );
49 setAcceptMode(QFileDialog::AcceptSave);
51 QList<QByteArray> list = QImageWriter::supportedImageFormats();
55 #if QT_VERSION >= 0x040300
60 for(
int i=0 ; i<list.count() ; i++)
61 filters <<
"*."+list[i].toLower();
64 setNameFilters(filters);
65 setFileMode( QFileDialog::AnyFile );
71 #if QT_VERSION >= 0x040300
72 connect(
this, SIGNAL(filterSelected (
const QString & )),
75 QList<QComboBox*> combo_boxes = findChildren<QComboBox*>();
76 if (combo_boxes.size() >= 2)
77 connect(combo_boxes[1], SIGNAL(currentIndexChanged (
const QString & )),
92 vector_layout->addWidget(
new QLabel(tr(
"Resolution (DPI)")), 1, 0);
100 d_color->setText(tr(
"Export in &color"));
102 vector_layout->addWidget(
d_color, 2, 0, 1, 2);
109 d_box_page_size->addItem(tr(
"A0 - 841 x 1189 mm"), QVariant(QPrinter::A0));
110 d_box_page_size->addItem(tr(
"A1 - 594 x 841 mm"), QVariant(QPrinter::A1));
111 d_box_page_size->addItem(tr(
"A2 - 420 x 594 mm"), QVariant(QPrinter::A2));
112 d_box_page_size->addItem(tr(
"A3 - 297 x 420 mm"), QVariant(QPrinter::A3));
113 d_box_page_size->addItem(tr(
"A4 - 210 x 297 mm"), QVariant(QPrinter::A4));
114 d_box_page_size->addItem(tr(
"A5 - 148 x 210 mm"), QVariant(QPrinter::A5));
115 d_box_page_size->addItem(tr(
"A6 - 105 x 148 mm"), QVariant(QPrinter::A6));
116 d_box_page_size->addItem(tr(
"A7 - 74 x 105 mm"), QVariant(QPrinter::A7));
117 d_box_page_size->addItem(tr(
"A8 - 52 x 74 mm"), QVariant(QPrinter::A8));
118 d_box_page_size->addItem(tr(
"A9 - 37 x 52 mm"), QVariant(QPrinter::A9));
119 d_box_page_size->addItem(tr(
"B0 - 1030 x 1456 mm"), QVariant(QPrinter::B0));
120 d_box_page_size->addItem(tr(
"B1 - 728 x 1030 mm"), QVariant(QPrinter::B1));
121 d_box_page_size->addItem(tr(
"B2 - 515 x 728 mm"), QVariant(QPrinter::B2));
122 d_box_page_size->addItem(tr(
"B3 - 364 x 515 mm"), QVariant(QPrinter::B3));
123 d_box_page_size->addItem(tr(
"B4 - 257 x 364 mm"), QVariant(QPrinter::B4));
124 d_box_page_size->addItem(tr(
"B5 - 182 x 257 mm"), QVariant(QPrinter::B5));
125 d_box_page_size->addItem(tr(
"B6 - 128 x 182 mm"), QVariant(QPrinter::B6));
126 d_box_page_size->addItem(tr(
"B7 - 91 x 128 mm"), QVariant(QPrinter::B7));
127 d_box_page_size->addItem(tr(
"B8 - 64 x 91 mm"), QVariant(QPrinter::B8));
128 d_box_page_size->addItem(tr(
"B9 - 45 x 64 mm"), QVariant(QPrinter::B9));
129 d_box_page_size->addItem(tr(
"B10 - 32 x 45 mm"), QVariant(QPrinter::B10));
130 d_box_page_size->addItem(tr(
"C5E - 163 x 226 mm"), QVariant(QPrinter::C5E));
131 d_box_page_size->addItem(tr(
"Comm10E - 105 x 241 mm"), QVariant(QPrinter::Comm10E));
132 d_box_page_size->addItem(tr(
"DLE - 110 x 220 mm"), QVariant(QPrinter::DLE));
133 d_box_page_size->addItem(tr(
"Executive - 191 x 254 mm"), QVariant(QPrinter::Executive));
134 d_box_page_size->addItem(tr(
"Folio 210 x 330 mm"), QVariant(QPrinter::Folio));
135 d_box_page_size->addItem(tr(
"Ledger 432 x 279 mm"), QVariant(QPrinter::Ledger));
136 d_box_page_size->addItem(tr(
"Legal 216 x 356 mm"), QVariant(QPrinter::Legal));
137 d_box_page_size->addItem(tr(
"Letter 216 x 279 mm"), QVariant(QPrinter::Letter));
138 d_box_page_size->addItem(tr(
"Tabloid 279 x 432 mm"), QVariant(QPrinter::Tabloid));
140 vector_layout->addWidget(
new QLabel(tr(
"Page size")), 4, 0);
146 vector_layout->addWidget(
new QLabel(tr(
"Orientation")), 5, 0);
166 raster_layout->addWidget(
new QLabel(tr(
"Image quality")), 1, 0);
170 raster_layout->addWidget(
d_quality, 1, 1);
175 if (filter.contains(
"*.svg")) {
181 if (filter.contains(
"*.eps") || filter.contains(
"*.ps") || filter.contains(
"*.pdf"))
209 return QPrinter::Custom;
211 QPrinter::PageSize size;
226 QPrinter::Orientation orientation;
230 orientation = QPrinter::Portrait;
241 if (size == QPrinter::Custom)
250 Q_ASSERT(index != -1);
266 QFileDialog::selectNameFilter(filter);