17 |
17 |
18 class PrinterPage(ConfigurationPageBase, Ui_PrinterPage): |
18 class PrinterPage(ConfigurationPageBase, Ui_PrinterPage): |
19 """ |
19 """ |
20 Class implementing the Printer configuration page. |
20 Class implementing the Printer configuration page. |
21 """ |
21 """ |
|
22 |
22 def __init__(self): |
23 def __init__(self): |
23 """ |
24 """ |
24 Constructor |
25 Constructor |
25 """ |
26 """ |
26 super().__init__() |
27 super().__init__() |
27 self.setupUi(self) |
28 self.setupUi(self) |
28 self.setObjectName("PrinterPage") |
29 self.setObjectName("PrinterPage") |
29 |
30 |
30 # set initial values |
31 # set initial values |
31 self.printerNameEdit.setText( |
32 self.printerNameEdit.setText(Preferences.getPrinter("PrinterName")) |
32 Preferences.getPrinter("PrinterName")) |
|
33 if Preferences.getPrinter("ColorMode"): |
33 if Preferences.getPrinter("ColorMode"): |
34 self.printerColorButton.setChecked(True) |
34 self.printerColorButton.setChecked(True) |
35 else: |
35 else: |
36 self.printerGrayscaleButton.setChecked(True) |
36 self.printerGrayscaleButton.setChecked(True) |
37 if Preferences.getPrinter("FirstPageFirst"): |
37 if Preferences.getPrinter("FirstPageFirst"): |
38 self.printFirstPageFirstButton.setChecked(True) |
38 self.printFirstPageFirstButton.setChecked(True) |
39 else: |
39 else: |
40 self.printFirstPageLastButton.setChecked(True) |
40 self.printFirstPageLastButton.setChecked(True) |
41 self.printMagnificationSpinBox.setValue( |
41 self.printMagnificationSpinBox.setValue(Preferences.getPrinter("Magnification")) |
42 Preferences.getPrinter("Magnification")) |
|
43 self.printheaderFont = Preferences.getPrinter("HeaderFont") |
42 self.printheaderFont = Preferences.getPrinter("HeaderFont") |
44 self.printheaderFontSample.setFont(self.printheaderFont) |
43 self.printheaderFontSample.setFont(self.printheaderFont) |
45 self.leftMarginSpinBox.setValue( |
44 self.leftMarginSpinBox.setValue(Preferences.getPrinter("LeftMargin")) |
46 Preferences.getPrinter("LeftMargin")) |
45 self.rightMarginSpinBox.setValue(Preferences.getPrinter("RightMargin")) |
47 self.rightMarginSpinBox.setValue( |
46 self.topMarginSpinBox.setValue(Preferences.getPrinter("TopMargin")) |
48 Preferences.getPrinter("RightMargin")) |
47 self.bottomMarginSpinBox.setValue(Preferences.getPrinter("BottomMargin")) |
49 self.topMarginSpinBox.setValue( |
48 self.resolutionSpinBox.setValue(Preferences.getPrinter("Resolution")) |
50 Preferences.getPrinter("TopMargin")) |
49 |
51 self.bottomMarginSpinBox.setValue( |
|
52 Preferences.getPrinter("BottomMargin")) |
|
53 self.resolutionSpinBox.setValue( |
|
54 Preferences.getPrinter("Resolution")) |
|
55 |
|
56 def save(self): |
50 def save(self): |
57 """ |
51 """ |
58 Public slot to save the Printer configuration. |
52 Public slot to save the Printer configuration. |
59 """ |
53 """ |
60 Preferences.setPrinter( |
54 Preferences.setPrinter("PrinterName", self.printerNameEdit.text()) |
61 "PrinterName", |
|
62 self.printerNameEdit.text()) |
|
63 if self.printerColorButton.isChecked(): |
55 if self.printerColorButton.isChecked(): |
64 Preferences.setPrinter("ColorMode", 1) |
56 Preferences.setPrinter("ColorMode", 1) |
65 else: |
57 else: |
66 Preferences.setPrinter("ColorMode", 0) |
58 Preferences.setPrinter("ColorMode", 0) |
67 if self.printFirstPageFirstButton.isChecked(): |
59 if self.printFirstPageFirstButton.isChecked(): |
68 Preferences.setPrinter("FirstPageFirst", 1) |
60 Preferences.setPrinter("FirstPageFirst", 1) |
69 else: |
61 else: |
70 Preferences.setPrinter("FirstPageFirst", 0) |
62 Preferences.setPrinter("FirstPageFirst", 0) |
71 Preferences.setPrinter( |
63 Preferences.setPrinter("Magnification", self.printMagnificationSpinBox.value()) |
72 "Magnification", |
|
73 self.printMagnificationSpinBox.value()) |
|
74 Preferences.setPrinter("HeaderFont", self.printheaderFont) |
64 Preferences.setPrinter("HeaderFont", self.printheaderFont) |
75 Preferences.setPrinter( |
65 Preferences.setPrinter("LeftMargin", self.leftMarginSpinBox.value()) |
76 "LeftMargin", |
66 Preferences.setPrinter("RightMargin", self.rightMarginSpinBox.value()) |
77 self.leftMarginSpinBox.value()) |
67 Preferences.setPrinter("TopMargin", self.topMarginSpinBox.value()) |
78 Preferences.setPrinter( |
68 Preferences.setPrinter("BottomMargin", self.bottomMarginSpinBox.value()) |
79 "RightMargin", |
69 Preferences.setPrinter("Resolution", self.resolutionSpinBox.value()) |
80 self.rightMarginSpinBox.value()) |
70 |
81 Preferences.setPrinter( |
|
82 "TopMargin", |
|
83 self.topMarginSpinBox.value()) |
|
84 Preferences.setPrinter( |
|
85 "BottomMargin", |
|
86 self.bottomMarginSpinBox.value()) |
|
87 Preferences.setPrinter( |
|
88 "Resolution", |
|
89 self.resolutionSpinBox.value()) |
|
90 |
|
91 @pyqtSlot() |
71 @pyqtSlot() |
92 def on_printheaderFontButton_clicked(self): |
72 def on_printheaderFontButton_clicked(self): |
93 """ |
73 """ |
94 Private method used to select the font for the page header. |
74 Private method used to select the font for the page header. |
95 """ |
75 """ |
96 self.printheaderFont = self.selectFont(self.printheaderFontSample, |
76 self.printheaderFont = self.selectFont( |
97 self.printheaderFont) |
77 self.printheaderFontSample, self.printheaderFont |
98 |
78 ) |
|
79 |
99 def polishPage(self): |
80 def polishPage(self): |
100 """ |
81 """ |
101 Public slot to perform some polishing actions. |
82 Public slot to perform some polishing actions. |
102 """ |
83 """ |
103 self.printheaderFontSample.setFont(self.printheaderFont) |
84 self.printheaderFontSample.setFont(self.printheaderFont) |
104 |
85 |
105 |
86 |
106 def create(dlg): |
87 def create(dlg): |
107 """ |
88 """ |
108 Module function to create the configuration page. |
89 Module function to create the configuration page. |
109 |
90 |
110 @param dlg reference to the configuration dialog |
91 @param dlg reference to the configuration dialog |
111 @return reference to the instantiated page (ConfigurationPageBase) |
92 @return reference to the instantiated page (ConfigurationPageBase) |
112 """ |
93 """ |
113 page = PrinterPage() |
94 page = PrinterPage() |
114 return page |
95 return page |