File: printSetup.cpp

package info (click to toggle)
kdegraphics 2%3A980312-3
  • links: PTS
  • area: contrib
  • in suites: hamm
  • size: 6,168 kB
  • ctags: 5,778
  • sloc: ansic: 26,607; cpp: 21,205; sh: 5,224; makefile: 1,651; perl: 108
file content (94 lines) | stat: -rw-r--r-- 2,400 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/**********************************************************************

	--- Dlgedit generated file ---

	File: printSetup.cpp
	Last generated: Fri Oct 3 01:51:37 1997

 *********************************************************************/

#include "printSetup.h"
#include <kapp.h>
#include <kconfig.h>
#define Inherited printSetupData
#define translate klocale->translate

printSetup::printSetup
(
	QWidget* parent,
	const char* name
)
	:
	Inherited( parent, name )
{
	setCaption( translate( "Print Setup" ) );
	internal->setEnabled( FALSE );
	okButton->setDefault( TRUE );
	spoolerLabel->setBuddy( spoolerCommand );
	readConfig();
}


printSetup::~printSetup()
{
}

void printSetup::addPrinter()
{
	printers->insertItem( newPrinter->text() );
}

void printSetup::removePrinter()
{
	int i = printers->currentItem();
	if ( i < 2 )
		return;
	printers->removeItem( i );
}

void printSetup::okPressed()
{
	KConfig *config = kapp->getConfig();

	config->setGroup( "Printing" );
	for ( int i = printers->count(); i > 2; i-- )
	{
		QString p;
		p = "Printer" + p.setNum( i - 2 );
		config->writeEntry( p, printers->text( i - 1 ) );
	}
	config->writeEntry( "PrinterCount", printers->count() - 2 );
	config->writeEntry( "NupProgram", psnup->isOn() ? "psnup" : "mpage" );
	config->writeEntry( "PrintMethod", internal->isOn() ? "Internal" : dvips->isOn() ? "dvips" : "dvilj4" );
	config->writeEntry( "SpoolerCommand", spoolerCommand->text() );
	config->setGroup( "kdvi" );
	config->sync();
	accept();
}

void printSetup::readConfig()
{
	KConfig *config = kapp->getConfig();

	printers->clear();
	printers->insertItem( translate( "Default Printer" ) );
	printers->insertItem( translate( "File" ) );
	config->setGroup( "Printing" );
	int n = config->readNumEntry( "PrinterCount" );
	if ( n > 0 )
		for ( int i = 1; i <= n ; i++ )
		{
			QString p;
			p = config->readEntry( "Printer"+p.setNum( i ) );
			printers->insertItem( p );
		}
	QString nupProgram = config->readEntry( "NupProgram", "psnup" );
	if ( nupProgram == "psnup" ) psnup->setChecked( TRUE );
	if ( nupProgram == "mpage" ) mpage->setChecked( TRUE );
	QString printMethod = config->readEntry( "PrintMethod", "dvips" );
	if ( printMethod == "dvips" ) dvips->setChecked( TRUE );
	if ( printMethod == "dvilj4" ) dvilj4->setChecked( TRUE );
	spoolerCommand->setText( config->readEntry( "SpoolerCommand", "lpr" ) );
	
	config->setGroup( "kdvi" );
}