1 /**************************************************************************
2 *   Copyright (C) 2005-2020 by Oleksandr Shneyder                         *
3 *                              <o.shneyder@phoca-gmbh.de>                 *
4 *                                                                         *
5 *   This program is free software; you can redistribute it and/or modify  *
6 *   it under the terms of the GNU General Public License as published by  *
7 *   the Free Software Foundation; either version 2 of the License, or     *
8 *   (at your option) any later version.                                   *
9 *   This program is distributed in the hope that it will be useful,       *
10 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
11 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
12 *   GNU General Public License for more details.                          *
13 *                                                                         *
14 *   You should have received a copy of the GNU General Public License     *
15 *   along with this program.  If not, see <https://www.gnu.org/licenses/>. *
16 ***************************************************************************/
17 
18 #ifndef PRINTWIDGET_H
19 #define PRINTWIDGET_H
20 
21 #include "x2goclientconfig.h"
22 #include "ui_printwidget.h"
23 /**
24 	@author Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de>
25 */
26 class CUPSPrintWidget;
27 class PrintWidget : public QWidget
28 {
29 		Q_OBJECT
30 	public:
31 		PrintWidget ( QWidget* parent=0l );
32 
33 		~PrintWidget();
34 		void saveSettings();
35 #ifdef Q_OS_WIN
36 		static bool gsInfo ( QString& version, QString& pdf2ps );
37 		static bool gsViewInfo ( QString& version, QString& gsprint );
38 #endif
39 	private:
40 		Ui::PrintWidget ui;
41 		bool printPs;
42 		bool printStdIn;
43 #ifndef Q_OS_WIN
44 		CUPSPrintWidget* pwid;
45 #else
46 		QStringList printers;
47 		QString defaultPrinter;
48 #endif
49 
50 	private slots:
51 		void slot_editPrintCmd();
52 	private:
53 		void loadSettings();
54 	signals:
55 		void dialogShowEnabled ( bool );
56 };
57 
58 #endif
59