Status: | Merged | ||||||||
---|---|---|---|---|---|---|---|---|---|
Merged at revision: | not available | ||||||||
Proposed branch: | lp:~trb143/openlp/bugfixes | ||||||||
Merge into: | lp:openlp | ||||||||
Diff against target: | None lines | ||||||||
To merge this branch: | bzr merge lp:~trb143/openlp/bugfixes | ||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Raoul Snyman | Approve | ||
Review via email: mp+9656@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Revision history for this message
Tim Bentley (trb143) wrote : | # |
Revision history for this message
Raoul Snyman (raoul-snyman) wrote : | # |
Looks fine to me.
review:
Approve
lp:~trb143/openlp/bugfixes
updated
- 499. By Tim Bentley
-
New features and fixes.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'openlp/core/lib/renderer.py' | |||
2 | --- openlp/core/lib/renderer.py 2009-07-21 20:04:27 +0000 | |||
3 | +++ openlp/core/lib/renderer.py 2009-08-03 19:49:21 +0000 | |||
4 | @@ -556,15 +556,21 @@ | |||
5 | 556 | """ | 556 | """ |
6 | 557 | Set the fonts from the current theme settings. | 557 | Set the fonts from the current theme settings. |
7 | 558 | """ | 558 | """ |
8 | 559 | footer_weight = 50 | ||
9 | 560 | if self._theme.font_footer_weight == u'Bold': | ||
10 | 561 | footer_weight = 75 | ||
11 | 559 | self.footerFont = QtGui.QFont(self._theme.font_footer_name, | 562 | self.footerFont = QtGui.QFont(self._theme.font_footer_name, |
12 | 560 | int(self._theme.font_footer_proportion), # size | 563 | int(self._theme.font_footer_proportion), # size |
15 | 561 | QtGui.QFont.Normal, # weight | 564 | int(footer_weight), # weight |
16 | 562 | 0)# italic | 565 | self._theme.font_footer_italics)# italic |
17 | 563 | self.footerFont.setPixelSize(int(self._theme.font_footer_proportion)) | 566 | self.footerFont.setPixelSize(int(self._theme.font_footer_proportion)) |
18 | 567 | main_weight = 50 | ||
19 | 568 | if self._theme.font_main_weight == u'Bold': | ||
20 | 569 | main_weight = 75 | ||
21 | 564 | self.mainFont = QtGui.QFont(self._theme.font_main_name, | 570 | self.mainFont = QtGui.QFont(self._theme.font_main_name, |
22 | 565 | int(self._theme.font_main_proportion), # size | 571 | int(self._theme.font_main_proportion), # size |
25 | 566 | QtGui.QFont.Normal, # weight | 572 | int(main_weight), # weight |
26 | 567 | 0)# italic | 573 | self._theme.font_main_italics)# italic |
27 | 568 | self.mainFont.setPixelSize(int(self._theme.font_main_proportion)) | 574 | self.mainFont.setPixelSize(int(self._theme.font_main_proportion)) |
28 | 569 | 575 | ||
29 | 570 | def _get_extent_and_render(self, line, footer, tlcorner=(0, 0), draw=False, color=None): | 576 | def _get_extent_and_render(self, line, footer, tlcorner=(0, 0), draw=False, color=None): |
30 | 571 | 577 | ||
31 | === modified file 'openlp/core/lib/themexmlhandler.py' | |||
32 | --- openlp/core/lib/themexmlhandler.py 2009-07-10 13:16:15 +0000 | |||
33 | +++ openlp/core/lib/themexmlhandler.py 2009-08-03 19:49:21 +0000 | |||
34 | @@ -46,12 +46,16 @@ | |||
35 | 46 | <name>Arial</name> | 46 | <name>Arial</name> |
36 | 47 | <color>#000000</color> | 47 | <color>#000000</color> |
37 | 48 | <proportion>30</proportion> | 48 | <proportion>30</proportion> |
38 | 49 | <weight>Normal</weight> | ||
39 | 50 | <italics>False</italics> | ||
40 | 49 | <location override="False" x="0" y="0" width="0" height="0"/> | 51 | <location override="False" x="0" y="0" width="0" height="0"/> |
41 | 50 | </font> | 52 | </font> |
42 | 51 | <font type="footer"> | 53 | <font type="footer"> |
43 | 52 | <name>Arial</name> | 54 | <name>Arial</name> |
44 | 53 | <color>#000000</color> | 55 | <color>#000000</color> |
45 | 54 | <proportion>12</proportion> | 56 | <proportion>12</proportion> |
46 | 57 | <weight>Normal</weight> | ||
47 | 58 | <italics>False</italics> | ||
48 | 55 | <location override="False" x="0" y="0" width="0" height="0"/> | 59 | <location override="False" x="0" y="0" width="0" height="0"/> |
49 | 56 | </font> | 60 | </font> |
50 | 57 | <display> | 61 | <display> |
51 | @@ -157,7 +161,7 @@ | |||
52 | 157 | #Create Filename element | 161 | #Create Filename element |
53 | 158 | self.child_element(background, u'filename', filename) | 162 | self.child_element(background, u'filename', filename) |
54 | 159 | 163 | ||
56 | 160 | def add_font(self, name, color, proportion, override, fonttype=u'main', | 164 | def add_font(self, name, color, proportion, override, fonttype=u'main', weight=u'Bold', italics=False, |
57 | 161 | xpos=0, ypos=0, width=0, height=0): | 165 | xpos=0, ypos=0, width=0, height=0): |
58 | 162 | """ | 166 | """ |
59 | 163 | Add a Font. | 167 | Add a Font. |
60 | @@ -177,6 +181,12 @@ | |||
61 | 177 | ``fonttype`` | 181 | ``fonttype`` |
62 | 178 | The type of font, ``main`` or ``footer``. Defaults to ``main``. | 182 | The type of font, ``main`` or ``footer``. Defaults to ``main``. |
63 | 179 | 183 | ||
64 | 184 | ``weight`` | ||
65 | 185 | The weight of then font Defaults to 50 Normal | ||
66 | 186 | |||
67 | 187 | ``italics`` | ||
68 | 188 | Does the font render to italics Defaults to 0 Normal | ||
69 | 189 | |||
70 | 180 | ``xpos`` | 190 | ``xpos`` |
71 | 181 | The X position of the text block. | 191 | The X position of the text block. |
72 | 182 | 192 | ||
73 | @@ -198,8 +208,10 @@ | |||
74 | 198 | self.child_element(background, u'color', color) | 208 | self.child_element(background, u'color', color) |
75 | 199 | #Create Proportion name element | 209 | #Create Proportion name element |
76 | 200 | self.child_element(background, u'proportion', proportion) | 210 | self.child_element(background, u'proportion', proportion) |
79 | 201 | #Create Proportion name element | 211 | #Create weight name element |
80 | 202 | self.child_element(background, u'proportion', proportion) | 212 | self.child_element(background, u'weight', weight) |
81 | 213 | #Create italics name element | ||
82 | 214 | self.child_element(background, u'italics', italics) | ||
83 | 203 | #Create Location element | 215 | #Create Location element |
84 | 204 | element = self.theme_xml.createElement(u'location') | 216 | element = self.theme_xml.createElement(u'location') |
85 | 205 | element.setAttribute(u'override',override) | 217 | element.setAttribute(u'override',override) |
86 | @@ -329,14 +341,17 @@ | |||
87 | 329 | setattr(self, master + element.tag + u'_'+ e[0], e[1]) | 341 | setattr(self, master + element.tag + u'_'+ e[0], e[1]) |
88 | 330 | else: | 342 | else: |
89 | 331 | field = master + e[0] | 343 | field = master + e[0] |
90 | 332 | e1 = e[1] | ||
91 | 333 | if e[1] == u'True' or e[1] == u'False': | 344 | if e[1] == u'True' or e[1] == u'False': |
94 | 334 | e1 = str_to_bool(e[1]) | 345 | setattr(self, field, str_to_bool(e[1])) |
95 | 335 | setattr(self, field, e1) | 346 | else: |
96 | 347 | setattr(self, field, e[1]) | ||
97 | 336 | else: | 348 | else: |
98 | 337 | if element.tag is not None: | 349 | if element.tag is not None: |
99 | 338 | field = master + element.tag | 350 | field = master + element.tag |
101 | 339 | setattr(self, field, element.text) | 351 | if element.text == u'True' or element.text == u'False': |
102 | 352 | setattr(self, field, str_to_bool(element.text)) | ||
103 | 353 | else: | ||
104 | 354 | setattr(self, field, element.text) | ||
105 | 340 | 355 | ||
106 | 341 | def __str__(self): | 356 | def __str__(self): |
107 | 342 | """ | 357 | """ |
108 | 343 | 358 | ||
109 | === modified file 'openlp/core/ui/amendthemedialog.py' | |||
110 | --- openlp/core/ui/amendthemedialog.py 2009-06-16 18:21:24 +0000 | |||
111 | +++ openlp/core/ui/amendthemedialog.py 2009-08-01 18:03:07 +0000 | |||
112 | @@ -165,6 +165,16 @@ | |||
113 | 165 | self.FontMainSizeSpinBox.setMaximum(999) | 165 | self.FontMainSizeSpinBox.setMaximum(999) |
114 | 166 | self.FontMainSizeSpinBox.setObjectName(u'FontMainSizeSpinBox') | 166 | self.FontMainSizeSpinBox.setObjectName(u'FontMainSizeSpinBox') |
115 | 167 | self.MainFontLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.FontMainSizeSpinBox) | 167 | self.MainFontLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.FontMainSizeSpinBox) |
116 | 168 | self.FontMainWeightComboBox = QtGui.QComboBox(self.FontMainGroupBox) | ||
117 | 169 | self.FontMainWeightComboBox.setObjectName("FontMainWeightComboBox") | ||
118 | 170 | self.FontMainWeightComboBox.addItem(QtCore.QString()) | ||
119 | 171 | self.FontMainWeightComboBox.addItem(QtCore.QString()) | ||
120 | 172 | self.FontMainWeightComboBox.addItem(QtCore.QString()) | ||
121 | 173 | self.FontMainWeightComboBox.addItem(QtCore.QString()) | ||
122 | 174 | self.MainFontLayout.setWidget(3, QtGui.QFormLayout.FieldRole, self.FontMainWeightComboBox) | ||
123 | 175 | self.FontMainWeightLabel = QtGui.QLabel(self.FontMainGroupBox) | ||
124 | 176 | self.FontMainWeightLabel.setObjectName("FontMainWeightLabel") | ||
125 | 177 | self.MainFontLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.FontMainWeightLabel) | ||
126 | 168 | self.MainLeftLayout.addWidget(self.FontMainGroupBox) | 178 | self.MainLeftLayout.addWidget(self.FontMainGroupBox) |
127 | 169 | spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) | 179 | spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) |
128 | 170 | self.MainLeftLayout.addItem(spacerItem1) | 180 | self.MainLeftLayout.addItem(spacerItem1) |
129 | @@ -292,6 +302,16 @@ | |||
130 | 292 | self.FontFooterSizeSpinBox.setMaximum(999) | 302 | self.FontFooterSizeSpinBox.setMaximum(999) |
131 | 293 | self.FontFooterSizeSpinBox.setObjectName(u'FontFooterSizeSpinBox') | 303 | self.FontFooterSizeSpinBox.setObjectName(u'FontFooterSizeSpinBox') |
132 | 294 | self.FooterFontLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.FontFooterSizeSpinBox) | 304 | self.FooterFontLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.FontFooterSizeSpinBox) |
133 | 305 | self.FontFooterWeightComboBox = QtGui.QComboBox(self.FooterFontGroupBox) | ||
134 | 306 | self.FontFooterWeightComboBox.setObjectName("FontFooterWeightComboBox") | ||
135 | 307 | self.FontFooterWeightComboBox.addItem(QtCore.QString()) | ||
136 | 308 | self.FontFooterWeightComboBox.addItem(QtCore.QString()) | ||
137 | 309 | self.FontFooterWeightComboBox.addItem(QtCore.QString()) | ||
138 | 310 | self.FontFooterWeightComboBox.addItem(QtCore.QString()) | ||
139 | 311 | self.FooterFontLayout.setWidget(3, QtGui.QFormLayout.FieldRole, self.FontFooterWeightComboBox) | ||
140 | 312 | self.FontFooterWeightLabel = QtGui.QLabel(self.FooterFontGroupBox) | ||
141 | 313 | self.FontFooterWeightLabel.setObjectName("FontFooterWeightLabel") | ||
142 | 314 | self.FooterFontLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.FontFooterWeightLabel) | ||
143 | 295 | self.FooterLeftLayout.addWidget(self.FooterFontGroupBox) | 315 | self.FooterLeftLayout.addWidget(self.FooterFontGroupBox) |
144 | 296 | spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) | 316 | spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) |
145 | 297 | self.FooterLeftLayout.addItem(spacerItem3) | 317 | self.FooterLeftLayout.addItem(spacerItem3) |
146 | @@ -550,6 +570,11 @@ | |||
147 | 550 | self.FontMainColorLabel.setText(translate(u'AmendThemeDialog', u'Font Color:')) | 570 | self.FontMainColorLabel.setText(translate(u'AmendThemeDialog', u'Font Color:')) |
148 | 551 | self.FontMainSize.setText(translate(u'AmendThemeDialog', u'Size:')) | 571 | self.FontMainSize.setText(translate(u'AmendThemeDialog', u'Size:')) |
149 | 552 | self.FontMainSizeSpinBox.setSuffix(translate(u'AmendThemeDialog', u'pt')) | 572 | self.FontMainSizeSpinBox.setSuffix(translate(u'AmendThemeDialog', u'pt')) |
150 | 573 | self.FontMainWeightComboBox.setItemText(0, translate("AmendThemeDialog", u'Normal')) | ||
151 | 574 | self.FontMainWeightComboBox.setItemText(1, translate("AmendThemeDialog", u'Bold')) | ||
152 | 575 | self.FontMainWeightComboBox.setItemText(2, translate("AmendThemeDialog", u'Italics')) | ||
153 | 576 | self.FontMainWeightComboBox.setItemText(3, translate("AmendThemeDialog", u'Bold/Italics')) | ||
154 | 577 | self.FontMainWeightLabel.setText(translate("AmendThemeDialog", u'Font Weight:')) | ||
155 | 553 | self.MainLocationGroupBox.setTitle(translate(u'AmendThemeDialog', u'Display Location')) | 578 | self.MainLocationGroupBox.setTitle(translate(u'AmendThemeDialog', u'Display Location')) |
156 | 554 | self.DefaultLocationLabel.setText(translate(u'AmendThemeDialog', u'Use Default Location:')) | 579 | self.DefaultLocationLabel.setText(translate(u'AmendThemeDialog', u'Use Default Location:')) |
157 | 555 | self.FontMainXLabel.setText(translate(u'AmendThemeDialog', u'X Position:')) | 580 | self.FontMainXLabel.setText(translate(u'AmendThemeDialog', u'X Position:')) |
158 | @@ -566,6 +591,11 @@ | |||
159 | 566 | self.FontFooterColorLabel.setText(translate(u'AmendThemeDialog', u'Font Color:')) | 591 | self.FontFooterColorLabel.setText(translate(u'AmendThemeDialog', u'Font Color:')) |
160 | 567 | self.FontFooterSizeLabel.setText(translate(u'AmendThemeDialog', u'Size:')) | 592 | self.FontFooterSizeLabel.setText(translate(u'AmendThemeDialog', u'Size:')) |
161 | 568 | self.FontFooterSizeSpinBox.setSuffix(translate(u'AmendThemeDialog', u'pt')) | 593 | self.FontFooterSizeSpinBox.setSuffix(translate(u'AmendThemeDialog', u'pt')) |
162 | 594 | self.FontFooterWeightComboBox.setItemText(0, translate("AmendThemeDialog", u'Normal')) | ||
163 | 595 | self.FontFooterWeightComboBox.setItemText(1, translate("AmendThemeDialog", u'Bold')) | ||
164 | 596 | self.FontFooterWeightComboBox.setItemText(2, translate("AmendThemeDialog", u'Italics')) | ||
165 | 597 | self.FontFooterWeightComboBox.setItemText(3, translate("AmendThemeDialog", u'Bold/Italics')) | ||
166 | 598 | self.FontFooterWeightLabel.setText(translate("AmendThemeDialog", u'Font Weight:')) | ||
167 | 569 | self.LocationFooterGroupBox.setTitle(translate(u'AmendThemeDialog', u'Display Location')) | 599 | self.LocationFooterGroupBox.setTitle(translate(u'AmendThemeDialog', u'Display Location')) |
168 | 570 | self.FontFooterDefaultLabel.setText(translate(u'AmendThemeDialog', u'Use Default Location:')) | 600 | self.FontFooterDefaultLabel.setText(translate(u'AmendThemeDialog', u'Use Default Location:')) |
169 | 571 | self.FontFooterXLabel.setText(translate(u'AmendThemeDialog', u'X Position:')) | 601 | self.FontFooterXLabel.setText(translate(u'AmendThemeDialog', u'X Position:')) |
170 | 572 | 602 | ||
171 | === modified file 'openlp/core/ui/amendthemeform.py' | |||
172 | --- openlp/core/ui/amendthemeform.py 2009-07-14 19:41:44 +0000 | |||
173 | +++ openlp/core/ui/amendthemeform.py 2009-08-03 19:49:21 +0000 | |||
174 | @@ -53,7 +53,6 @@ | |||
175 | 53 | QtCore.SIGNAL(u'pressed()'), self.onShadowColorPushButtonClicked) | 53 | QtCore.SIGNAL(u'pressed()'), self.onShadowColorPushButtonClicked) |
176 | 54 | QtCore.QObject.connect(self.ImageToolButton, | 54 | QtCore.QObject.connect(self.ImageToolButton, |
177 | 55 | QtCore.SIGNAL(u'pressed()'), self.onImageToolButtonClicked) | 55 | QtCore.SIGNAL(u'pressed()'), self.onImageToolButtonClicked) |
178 | 56 | |||
179 | 57 | #Combo boxes | 56 | #Combo boxes |
180 | 58 | QtCore.QObject.connect(self.BackgroundComboBox, | 57 | QtCore.QObject.connect(self.BackgroundComboBox, |
181 | 59 | QtCore.SIGNAL(u'activated(int)'), self.onBackgroundComboBoxSelected) | 58 | QtCore.SIGNAL(u'activated(int)'), self.onBackgroundComboBoxSelected) |
182 | @@ -63,13 +62,17 @@ | |||
183 | 63 | QtCore.SIGNAL(u'activated(int)'), self.onGradientComboBoxSelected) | 62 | QtCore.SIGNAL(u'activated(int)'), self.onGradientComboBoxSelected) |
184 | 64 | QtCore.QObject.connect(self.FontMainComboBox, | 63 | QtCore.QObject.connect(self.FontMainComboBox, |
185 | 65 | QtCore.SIGNAL(u'activated(int)'), self.onFontMainComboBoxSelected) | 64 | QtCore.SIGNAL(u'activated(int)'), self.onFontMainComboBoxSelected) |
186 | 65 | QtCore.QObject.connect(self.FontMainWeightComboBox, | ||
187 | 66 | QtCore.SIGNAL(u'activated(int)'), self.onFontMainWeightComboBoxSelected) | ||
188 | 66 | QtCore.QObject.connect(self.FontFooterComboBox, | 67 | QtCore.QObject.connect(self.FontFooterComboBox, |
189 | 67 | QtCore.SIGNAL(u'activated(int)'), self.onFontFooterComboBoxSelected) | 68 | QtCore.SIGNAL(u'activated(int)'), self.onFontFooterComboBoxSelected) |
190 | 69 | QtCore.QObject.connect(self.FontFooterWeightComboBox, | ||
191 | 70 | QtCore.SIGNAL(u'activated(int)'), self.onFontFooterWeightComboBoxSelected) | ||
192 | 68 | QtCore.QObject.connect(self.HorizontalComboBox, | 71 | QtCore.QObject.connect(self.HorizontalComboBox, |
193 | 69 | QtCore.SIGNAL(u'activated(int)'), self.onHorizontalComboBoxSelected) | 72 | QtCore.SIGNAL(u'activated(int)'), self.onHorizontalComboBoxSelected) |
194 | 70 | QtCore.QObject.connect(self.VerticalComboBox, | 73 | QtCore.QObject.connect(self.VerticalComboBox, |
195 | 71 | QtCore.SIGNAL(u'activated(int)'), self.onVerticalComboBoxSelected) | 74 | QtCore.SIGNAL(u'activated(int)'), self.onVerticalComboBoxSelected) |
197 | 72 | 75 | #Spin boxes | |
198 | 73 | QtCore.QObject.connect(self.FontMainSizeSpinBox, | 76 | QtCore.QObject.connect(self.FontMainSizeSpinBox, |
199 | 74 | QtCore.SIGNAL(u'editingFinished()'), self.onFontMainSizeSpinBoxChanged) | 77 | QtCore.SIGNAL(u'editingFinished()'), self.onFontMainSizeSpinBoxChanged) |
200 | 75 | QtCore.QObject.connect(self.FontFooterSizeSpinBox, | 78 | QtCore.QObject.connect(self.FontFooterSizeSpinBox, |
201 | @@ -118,10 +121,12 @@ | |||
202 | 118 | 121 | ||
203 | 119 | new_theme.add_font(unicode(self.theme.font_main_name), unicode(self.theme.font_main_color), | 122 | new_theme.add_font(unicode(self.theme.font_main_name), unicode(self.theme.font_main_color), |
204 | 120 | unicode(self.theme.font_main_proportion), unicode(self.theme.font_main_override), u'main', | 123 | unicode(self.theme.font_main_proportion), unicode(self.theme.font_main_override), u'main', |
205 | 124 | unicode(self.theme.font_main_weight), unicode(self.theme.font_main_italics), | ||
206 | 121 | unicode(self.theme.font_main_x), unicode(self.theme.font_main_y), unicode(self.theme.font_main_width), | 125 | unicode(self.theme.font_main_x), unicode(self.theme.font_main_y), unicode(self.theme.font_main_width), |
207 | 122 | unicode(self.theme.font_main_height)) | 126 | unicode(self.theme.font_main_height)) |
208 | 123 | new_theme.add_font(unicode(self.theme.font_footer_name), unicode(self.theme.font_footer_color), | 127 | new_theme.add_font(unicode(self.theme.font_footer_name), unicode(self.theme.font_footer_color), |
209 | 124 | unicode(self.theme.font_footer_proportion), unicode(self.theme.font_footer_override), u'footer', | 128 | unicode(self.theme.font_footer_proportion), unicode(self.theme.font_footer_override), u'footer', |
210 | 129 | unicode(self.theme.font_footer_weight), unicode(self.theme.font_footer_italics), | ||
211 | 125 | unicode(self.theme.font_footer_x), unicode(self.theme.font_footer_y), unicode(self.theme.font_footer_width), | 130 | unicode(self.theme.font_footer_x), unicode(self.theme.font_footer_y), unicode(self.theme.font_footer_width), |
212 | 126 | unicode(self.theme.font_footer_height) ) | 131 | unicode(self.theme.font_footer_height) ) |
213 | 127 | new_theme.add_display(unicode(self.theme.display_shadow), unicode(self.theme.display_shadow_color), | 132 | new_theme.add_display(unicode(self.theme.display_shadow), unicode(self.theme.display_shadow_color), |
214 | @@ -159,6 +164,21 @@ | |||
215 | 159 | self.theme.font_main_name = self.FontMainComboBox.currentFont().family() | 164 | self.theme.font_main_name = self.FontMainComboBox.currentFont().family() |
216 | 160 | self.previewTheme(self.theme) | 165 | self.previewTheme(self.theme) |
217 | 161 | 166 | ||
218 | 167 | def onFontMainWeightComboBoxSelected(self, value): | ||
219 | 168 | if value ==0: | ||
220 | 169 | self.theme.font_main_weight = u'Normal' | ||
221 | 170 | self.theme.font_main_italics = False | ||
222 | 171 | elif value == 1: | ||
223 | 172 | self.theme.font_main_weight = u'Bold' | ||
224 | 173 | self.theme.font_main_italics = False | ||
225 | 174 | elif value == 2: | ||
226 | 175 | self.theme.font_main_weight = u'Normal' | ||
227 | 176 | self.theme.font_main_italics = True | ||
228 | 177 | else: | ||
229 | 178 | self.theme.font_main_weight = u'Bold' | ||
230 | 179 | self.theme.font_main_italics = True | ||
231 | 180 | self.previewTheme(self.theme) | ||
232 | 181 | |||
233 | 162 | def onFontMainColorPushButtonClicked(self): | 182 | def onFontMainColorPushButtonClicked(self): |
234 | 163 | self.theme.font_main_color = QtGui.QColorDialog.getColor( | 183 | self.theme.font_main_color = QtGui.QColorDialog.getColor( |
235 | 164 | QtGui.QColor(self.theme.font_main_color), self).name() | 184 | QtGui.QColor(self.theme.font_main_color), self).name() |
236 | @@ -217,6 +237,21 @@ | |||
237 | 217 | self.theme.font_footer_name = self.FontFooterComboBox.currentFont().family() | 237 | self.theme.font_footer_name = self.FontFooterComboBox.currentFont().family() |
238 | 218 | self.previewTheme(self.theme) | 238 | self.previewTheme(self.theme) |
239 | 219 | 239 | ||
240 | 240 | def onFontFooterWeightComboBoxSelected(self, value): | ||
241 | 241 | if value == 0: | ||
242 | 242 | self.theme.font_footer_weight = u'Normal' | ||
243 | 243 | self.theme.font_footer_italics = False | ||
244 | 244 | elif value == 1: | ||
245 | 245 | self.theme.font_footer_weight = u'Bold' | ||
246 | 246 | self.theme.font_footer_italics = False | ||
247 | 247 | elif value == 2: | ||
248 | 248 | self.theme.font_footer_weight = u'Normal' | ||
249 | 249 | self.theme.font_footer_italics = True | ||
250 | 250 | else: | ||
251 | 251 | self.theme.font_footer_weight = u'Bold' | ||
252 | 252 | self.theme.font_footer_italics = True | ||
253 | 253 | self.previewTheme(self.theme) | ||
254 | 254 | |||
255 | 220 | def onFontFooterColorPushButtonClicked(self): | 255 | def onFontFooterColorPushButtonClicked(self): |
256 | 221 | self.theme.font_footer_color = QtGui.QColorDialog.getColor( | 256 | self.theme.font_footer_color = QtGui.QColorDialog.getColor( |
257 | 222 | QtGui.QColor(self.theme.font_footer_color), self).name() | 257 | QtGui.QColor(self.theme.font_footer_color), self).name() |
258 | @@ -410,11 +445,28 @@ | |||
259 | 410 | self.GradientComboBox.setCurrentIndex(2) | 445 | self.GradientComboBox.setCurrentIndex(2) |
260 | 411 | 446 | ||
261 | 412 | self.FontMainSizeSpinBox.setValue(int(self.theme.font_main_proportion)) | 447 | self.FontMainSizeSpinBox.setValue(int(self.theme.font_main_proportion)) |
262 | 448 | if not self.theme.font_main_italics and self.theme.font_main_weight == u'Normal': | ||
263 | 449 | self.FontMainWeightComboBox.setCurrentIndex(0) | ||
264 | 450 | elif not self.theme.font_main_italics and self.theme.font_main_weight == u'Bold': | ||
265 | 451 | self.FontMainWeightComboBox.setCurrentIndex(1) | ||
266 | 452 | elif self.theme.font_main_italics and self.theme.font_main_weight == u'Normal': | ||
267 | 453 | self.FontMainWeightComboBox.setCurrentIndex(2) | ||
268 | 454 | else: | ||
269 | 455 | self.FontMainWeightComboBox.setCurrentIndex(3) | ||
270 | 456 | |||
271 | 413 | self.FontMainXSpinBox.setValue(int(self.theme.font_main_x)) | 457 | self.FontMainXSpinBox.setValue(int(self.theme.font_main_x)) |
272 | 414 | self.FontMainYSpinBox.setValue(int(self.theme.font_main_y)) | 458 | self.FontMainYSpinBox.setValue(int(self.theme.font_main_y)) |
273 | 415 | self.FontMainWidthSpinBox.setValue(int(self.theme.font_main_width)) | 459 | self.FontMainWidthSpinBox.setValue(int(self.theme.font_main_width)) |
274 | 416 | self.FontMainHeightSpinBox.setValue(int(self.theme.font_main_height)) | 460 | self.FontMainHeightSpinBox.setValue(int(self.theme.font_main_height)) |
275 | 417 | self.FontFooterSizeSpinBox.setValue(int(self.theme.font_footer_proportion)) | 461 | self.FontFooterSizeSpinBox.setValue(int(self.theme.font_footer_proportion)) |
276 | 462 | if not self.theme.font_footer_italics and self.theme.font_footer_weight == u'Normal': | ||
277 | 463 | self.FontFooterWeightComboBox.setCurrentIndex(0) | ||
278 | 464 | elif not self.theme.font_footer_italics and self.theme.font_footer_weight == u'Bold': | ||
279 | 465 | self.FontFooterWeightComboBox.setCurrentIndex(1) | ||
280 | 466 | elif self.theme.font_footer_italics and self.theme.font_footer_weight == u'Normal': | ||
281 | 467 | self.FontFooterWeightComboBox.setCurrentIndex(2) | ||
282 | 468 | else: | ||
283 | 469 | self.FontFooterWeightComboBox.setCurrentIndex(3) | ||
284 | 418 | self.FontFooterXSpinBox.setValue(int(self.theme.font_footer_x)) | 470 | self.FontFooterXSpinBox.setValue(int(self.theme.font_footer_x)) |
285 | 419 | self.FontFooterYSpinBox.setValue(int(self.theme.font_footer_y)) | 471 | self.FontFooterYSpinBox.setValue(int(self.theme.font_footer_y)) |
286 | 420 | self.FontFooterWidthSpinBox.setValue(int(self.theme.font_footer_width)) | 472 | self.FontFooterWidthSpinBox.setValue(int(self.theme.font_footer_width)) |
287 | @@ -529,7 +581,6 @@ | |||
288 | 529 | else: | 581 | else: |
289 | 530 | self.ShadowColorPushButton.setEnabled(False) | 582 | self.ShadowColorPushButton.setEnabled(False) |
290 | 531 | 583 | ||
291 | 532 | |||
292 | 533 | def previewTheme(self, theme): | 584 | def previewTheme(self, theme): |
293 | 534 | if self.allowPreview: | 585 | if self.allowPreview: |
294 | 535 | frame = self.thememanager.generateImage(theme) | 586 | frame = self.thememanager.generateImage(theme) |
295 | 536 | 587 | ||
296 | === modified file 'openlp/core/ui/servicemanager.py' | |||
297 | --- openlp/core/ui/servicemanager.py 2009-07-21 20:04:27 +0000 | |||
298 | +++ openlp/core/ui/servicemanager.py 2009-08-02 16:13:59 +0000 | |||
299 | @@ -300,7 +300,7 @@ | |||
300 | 300 | Used when moving items as the move takes place in supporting array, | 300 | Used when moving items as the move takes place in supporting array, |
301 | 301 | and when regenerating all the items due to theme changes | 301 | and when regenerating all the items due to theme changes |
302 | 302 | """ | 302 | """ |
304 | 303 | #Correct order of idems in array | 303 | #Correct order of items in array |
305 | 304 | count = 1 | 304 | count = 1 |
306 | 305 | for item in self.serviceItems: | 305 | for item in self.serviceItems: |
307 | 306 | item[u'order'] = count | 306 | item[u'order'] = count |
308 | @@ -398,7 +398,7 @@ | |||
309 | 398 | """ | 398 | """ |
310 | 399 | Set the theme for the current service | 399 | Set the theme for the current service |
311 | 400 | """ | 400 | """ |
313 | 401 | self.service_theme = self.ThemeComboBox.currentText() | 401 | self.service_theme = unicode(self.ThemeComboBox.currentText()) |
314 | 402 | self.parent.RenderManager.set_service_theme(self.service_theme) | 402 | self.parent.RenderManager.set_service_theme(self.service_theme) |
315 | 403 | self.config.set_config(u'theme service theme', self.service_theme) | 403 | self.config.set_config(u'theme service theme', self.service_theme) |
316 | 404 | self.regenerateServiceItems() | 404 | self.regenerateServiceItems() |
317 | 405 | 405 | ||
318 | === modified file 'openlp/core/ui/thememanager.py' | |||
319 | --- openlp/core/ui/thememanager.py 2009-07-06 16:34:13 +0000 | |||
320 | +++ openlp/core/ui/thememanager.py 2009-08-02 16:13:59 +0000 | |||
321 | @@ -100,6 +100,10 @@ | |||
322 | 100 | except: | 100 | except: |
323 | 101 | #if not present do not worry | 101 | #if not present do not worry |
324 | 102 | pass | 102 | pass |
325 | 103 | #As we do not reload the themes push out the change | ||
326 | 104 | self.parent.EventManager.post_event(Event(EventType.ThemeListChanged)) | ||
327 | 105 | self.parent.ServiceManagerContents.updateThemeList(self.getThemes()) | ||
328 | 106 | self.parent.settingsForm.ThemesTab.updateThemeList(self.getThemes()) | ||
329 | 103 | 107 | ||
330 | 104 | def onExportTheme(self): | 108 | def onExportTheme(self): |
331 | 105 | pass | 109 | pass |
332 | 106 | 110 | ||
333 | === modified file 'openlp/migration/migratesongs.py' | |||
334 | --- openlp/migration/migratesongs.py 2009-07-18 07:30:26 +0000 | |||
335 | +++ openlp/migration/migratesongs.py 2009-08-02 16:13:59 +0000 | |||
336 | @@ -155,6 +155,8 @@ | |||
337 | 155 | if bb is None: | 155 | if bb is None: |
338 | 156 | author = Author() | 156 | author = Author() |
339 | 157 | author.display_name = authors_temp.authorname | 157 | author.display_name = authors_temp.authorname |
340 | 158 | author.first_name = u'' | ||
341 | 159 | author.last_name = u'' | ||
342 | 158 | else: | 160 | else: |
343 | 159 | id = int(bb[0]) | 161 | id = int(bb[0]) |
344 | 160 | author = self.session.query(Author).get(bb[0]) | 162 | author = self.session.query(Author).get(bb[0]) |
345 | 161 | 163 | ||
346 | === modified file 'openlp/plugins/bibles/lib/bibleHTTPimpl.py' | |||
347 | --- openlp/plugins/bibles/lib/bibleHTTPimpl.py 2009-07-13 20:11:36 +0000 | |||
348 | +++ openlp/plugins/bibles/lib/bibleHTTPimpl.py 2009-08-02 13:44:41 +0000 | |||
349 | @@ -96,7 +96,7 @@ | |||
350 | 96 | chapter - chapter number | 96 | chapter - chapter number |
351 | 97 | """ | 97 | """ |
352 | 98 | log.debug(u'get_bible_chapter %s,%s,%s,%s', version, bookid, bookname, chapter) | 98 | log.debug(u'get_bible_chapter %s,%s,%s,%s', version, bookid, bookname, chapter) |
354 | 99 | bookname = bookname.replace(u' ', '') | 99 | bookname = bookname.replace(u' ', u'') |
355 | 100 | urlstring = u'http://bible.crosswalk.com/OnlineStudyBible/bible.cgi?word=%s+%d&version=%s' % (bookname, chapter, version) | 100 | urlstring = u'http://bible.crosswalk.com/OnlineStudyBible/bible.cgi?word=%s+%d&version=%s' % (bookname, chapter, version) |
356 | 101 | xml_string = self._get_web_text(urlstring, self.proxyurl) | 101 | xml_string = self._get_web_text(urlstring, self.proxyurl) |
357 | 102 | #log.debug(u'Return data %s', xml_string) | 102 | #log.debug(u'Return data %s', xml_string) |
358 | @@ -151,8 +151,8 @@ | |||
359 | 151 | verseText = xml_string[versePos: i] | 151 | verseText = xml_string[versePos: i] |
360 | 152 | versePos = i | 152 | versePos = i |
361 | 153 | #print verseText | 153 | #print verseText |
362 | 154 | #print self._clean_text(verseText) | ||
363 | 154 | bible[verse] = self._clean_text(verseText) | 155 | bible[verse] = self._clean_text(verseText) |
364 | 155 | #bible[verse] = verseText | ||
365 | 156 | 156 | ||
366 | 157 | #log.debug( bible) | 157 | #log.debug( bible) |
367 | 158 | return SearchResults(book_title, book_chapter, bible) | 158 | return SearchResults(book_title, book_chapter, bible) |
368 | 159 | 159 | ||
369 | === modified file 'openlp/plugins/bibles/lib/biblestab.py' | |||
370 | --- openlp/plugins/bibles/lib/biblestab.py 2009-06-16 18:21:24 +0000 | |||
371 | +++ openlp/plugins/bibles/lib/biblestab.py 2009-07-23 05:17:26 +0000 | |||
372 | @@ -56,22 +56,9 @@ | |||
373 | 56 | self.VerseDisplayLayout = QtGui.QGridLayout(self.VerseDisplayGroupBox) | 56 | self.VerseDisplayLayout = QtGui.QGridLayout(self.VerseDisplayGroupBox) |
374 | 57 | self.VerseDisplayLayout.setMargin(8) | 57 | self.VerseDisplayLayout.setMargin(8) |
375 | 58 | self.VerseDisplayLayout.setObjectName(u'VerseDisplayLayout') | 58 | self.VerseDisplayLayout.setObjectName(u'VerseDisplayLayout') |
376 | 59 | self.VerseTypeWidget = QtGui.QWidget(self.VerseDisplayGroupBox) | ||
377 | 60 | self.VerseTypeWidget.setObjectName(u'VerseTypeWidget') | ||
378 | 61 | self.VerseTypeLayout = QtGui.QHBoxLayout(self.VerseTypeWidget) | ||
379 | 62 | self.VerseTypeLayout.setSpacing(8) | ||
380 | 63 | self.VerseTypeLayout.setMargin(0) | ||
381 | 64 | self.VerseTypeLayout.setObjectName(u'VerseTypeLayout') | ||
382 | 65 | self.VerseRadioButton = QtGui.QRadioButton(self.VerseTypeWidget) | ||
383 | 66 | self.VerseRadioButton.setObjectName(u'VerseRadioButton') | ||
384 | 67 | self.VerseTypeLayout.addWidget(self.VerseRadioButton) | ||
385 | 68 | self.ParagraphRadioButton = QtGui.QRadioButton(self.VerseTypeWidget) | ||
386 | 69 | self.ParagraphRadioButton.setObjectName(u'ParagraphRadioButton') | ||
387 | 70 | self.VerseTypeLayout.addWidget(self.ParagraphRadioButton) | ||
388 | 71 | self.VerseDisplayLayout.addWidget(self.VerseTypeWidget, 0, 0, 1, 1) | ||
389 | 72 | self.NewChaptersCheckBox = QtGui.QCheckBox(self.VerseDisplayGroupBox) | 59 | self.NewChaptersCheckBox = QtGui.QCheckBox(self.VerseDisplayGroupBox) |
390 | 73 | self.NewChaptersCheckBox.setObjectName(u'NewChaptersCheckBox') | 60 | self.NewChaptersCheckBox.setObjectName(u'NewChaptersCheckBox') |
392 | 74 | self.VerseDisplayLayout.addWidget(self.NewChaptersCheckBox, 1, 0, 1, 1) | 61 | self.VerseDisplayLayout.addWidget(self.NewChaptersCheckBox, 0, 0, 1, 1) |
393 | 75 | self.DisplayStyleWidget = QtGui.QWidget(self.VerseDisplayGroupBox) | 62 | self.DisplayStyleWidget = QtGui.QWidget(self.VerseDisplayGroupBox) |
394 | 76 | self.DisplayStyleWidget.setObjectName(u'DisplayStyleWidget') | 63 | self.DisplayStyleWidget.setObjectName(u'DisplayStyleWidget') |
395 | 77 | self.DisplayStyleLayout = QtGui.QHBoxLayout(self.DisplayStyleWidget) | 64 | self.DisplayStyleLayout = QtGui.QHBoxLayout(self.DisplayStyleWidget) |
396 | @@ -88,7 +75,24 @@ | |||
397 | 88 | self.DisplayStyleComboBox.addItem(QtCore.QString()) | 75 | self.DisplayStyleComboBox.addItem(QtCore.QString()) |
398 | 89 | self.DisplayStyleComboBox.addItem(QtCore.QString()) | 76 | self.DisplayStyleComboBox.addItem(QtCore.QString()) |
399 | 90 | self.DisplayStyleLayout.addWidget(self.DisplayStyleComboBox) | 77 | self.DisplayStyleLayout.addWidget(self.DisplayStyleComboBox) |
401 | 91 | self.VerseDisplayLayout.addWidget(self.DisplayStyleWidget, 2, 0, 1, 1) | 78 | self.VerseDisplayLayout.addWidget(self.DisplayStyleWidget, 1, 0, 1, 1) |
402 | 79 | self.LayoutStyleWidget = QtGui.QWidget(self.VerseDisplayGroupBox) | ||
403 | 80 | self.LayoutStyleWidget.setObjectName(u'LayoutStyleWidget') | ||
404 | 81 | self.LayoutStyleLayout = QtGui.QHBoxLayout(self.LayoutStyleWidget) | ||
405 | 82 | self.LayoutStyleLayout.setSpacing(8) | ||
406 | 83 | self.LayoutStyleLayout.setMargin(0) | ||
407 | 84 | self.LayoutStyleLayout.setObjectName(u'LayoutStyleLayout') | ||
408 | 85 | self.LayoutStyleLabel = QtGui.QLabel(self.LayoutStyleWidget) | ||
409 | 86 | self.LayoutStyleLabel.setObjectName(u'LayoutStyleLabel') | ||
410 | 87 | self.LayoutStyleLayout.addWidget(self.LayoutStyleLabel) | ||
411 | 88 | self.LayoutStyleComboBox = QtGui.QComboBox(self.LayoutStyleWidget) | ||
412 | 89 | self.LayoutStyleComboBox.setObjectName(u'LayoutStyleComboBox') | ||
413 | 90 | self.LayoutStyleComboBox.addItem(QtCore.QString()) | ||
414 | 91 | self.LayoutStyleComboBox.addItem(QtCore.QString()) | ||
415 | 92 | self.LayoutStyleComboBox.addItem(QtCore.QString()) | ||
416 | 93 | self.LayoutStyleLayout.addWidget(self.LayoutStyleComboBox) | ||
417 | 94 | self.VerseDisplayLayout.addWidget(self.LayoutStyleWidget, 2, 0, 1, 1) | ||
418 | 95 | |||
419 | 92 | self.BibleThemeWidget = QtGui.QWidget(self.VerseDisplayGroupBox) | 96 | self.BibleThemeWidget = QtGui.QWidget(self.VerseDisplayGroupBox) |
420 | 93 | self.BibleThemeWidget.setObjectName(u'BibleThemeWidget') | 97 | self.BibleThemeWidget.setObjectName(u'BibleThemeWidget') |
421 | 94 | self.BibleThemeLayout = QtGui.QHBoxLayout(self.BibleThemeWidget) | 98 | self.BibleThemeLayout = QtGui.QHBoxLayout(self.BibleThemeWidget) |
422 | @@ -136,22 +140,22 @@ | |||
423 | 136 | QtCore.SIGNAL(u'stateChanged(int)'), self.onNewChaptersCheckBoxChanged) | 140 | QtCore.SIGNAL(u'stateChanged(int)'), self.onNewChaptersCheckBoxChanged) |
424 | 137 | QtCore.QObject.connect(self.BibleSearchCheckBox, | 141 | QtCore.QObject.connect(self.BibleSearchCheckBox, |
425 | 138 | QtCore.SIGNAL(u'stateChanged(int)'), self.onBibleSearchCheckBoxChanged) | 142 | QtCore.SIGNAL(u'stateChanged(int)'), self.onBibleSearchCheckBoxChanged) |
426 | 139 | QtCore.QObject.connect(self.VerseRadioButton, | ||
427 | 140 | QtCore.SIGNAL(u'pressed()'), self.onVerseRadioButtonPressed) | ||
428 | 141 | QtCore.QObject.connect(self.ParagraphRadioButton, | ||
429 | 142 | QtCore.SIGNAL(u'pressed()'), self.onParagraphRadioButtonPressed) | ||
430 | 143 | QtCore.QObject.connect(self.DisplayStyleComboBox, | 143 | QtCore.QObject.connect(self.DisplayStyleComboBox, |
431 | 144 | QtCore.SIGNAL(u'activated(int)'), self.onDisplayStyleComboBoxChanged) | 144 | QtCore.SIGNAL(u'activated(int)'), self.onDisplayStyleComboBoxChanged) |
432 | 145 | QtCore.QObject.connect(self.BibleThemeComboBox, | 145 | QtCore.QObject.connect(self.BibleThemeComboBox, |
433 | 146 | QtCore.SIGNAL(u'activated(int)'), self.onBibleThemeComboBoxChanged) | 146 | QtCore.SIGNAL(u'activated(int)'), self.onBibleThemeComboBoxChanged) |
434 | 147 | QtCore.QObject.connect(self.LayoutStyleComboBox, | ||
435 | 148 | QtCore.SIGNAL(u'activated(int)'), self.onLayoutStyleComboBoxChanged) | ||
436 | 147 | 149 | ||
437 | 148 | def retranslateUi(self): | 150 | def retranslateUi(self): |
438 | 149 | self.VerseDisplayGroupBox.setTitle(translate(u'SettingsForm', u'Verse Display')) | 151 | self.VerseDisplayGroupBox.setTitle(translate(u'SettingsForm', u'Verse Display')) |
439 | 150 | self.VerseRadioButton.setText(translate(u'SettingsForm', u'Verse style')) | ||
440 | 151 | self.ParagraphRadioButton.setText(translate(u'SettingsForm', u'Paragraph style')) | ||
441 | 152 | self.NewChaptersCheckBox.setText(translate(u'SettingsForm', u'Only show new chapter numbers')) | 152 | self.NewChaptersCheckBox.setText(translate(u'SettingsForm', u'Only show new chapter numbers')) |
442 | 153 | self.LayoutStyleLabel.setText(translate(u'SettingsForm', u'Layout Style:')) | ||
443 | 153 | self.DisplayStyleLabel.setText(translate(u'SettingsForm', u'Display Style:')) | 154 | self.DisplayStyleLabel.setText(translate(u'SettingsForm', u'Display Style:')) |
444 | 154 | self.BibleThemeLabel.setText(translate(u'SettingsForm', u'Bible Theme:')) | 155 | self.BibleThemeLabel.setText(translate(u'SettingsForm', u'Bible Theme:')) |
445 | 156 | self.LayoutStyleComboBox.setItemText(0, translate(u'SettingsForm', u'verse per slide')) | ||
446 | 157 | self.LayoutStyleComboBox.setItemText(1, translate(u'SettingsForm', u'verse per line')) | ||
447 | 158 | self.LayoutStyleComboBox.setItemText(2, translate(u'SettingsForm', u'continuous')) | ||
448 | 155 | self.DisplayStyleComboBox.setItemText(0, translate(u'SettingsForm', u'No brackets')) | 159 | self.DisplayStyleComboBox.setItemText(0, translate(u'SettingsForm', u'No brackets')) |
449 | 156 | self.DisplayStyleComboBox.setItemText(1, translate(u'SettingsForm', u'( and )')) | 160 | self.DisplayStyleComboBox.setItemText(1, translate(u'SettingsForm', u'( and )')) |
450 | 157 | self.DisplayStyleComboBox.setItemText(2, translate(u'SettingsForm', u'{ and }')) | 161 | self.DisplayStyleComboBox.setItemText(2, translate(u'SettingsForm', u'{ and }')) |
451 | @@ -166,11 +170,8 @@ | |||
452 | 166 | def onDisplayStyleComboBoxChanged(self): | 170 | def onDisplayStyleComboBoxChanged(self): |
453 | 167 | self.display_style = self.DisplayStyleComboBox.currentIndex() | 171 | self.display_style = self.DisplayStyleComboBox.currentIndex() |
454 | 168 | 172 | ||
460 | 169 | def onVerseRadioButtonPressed(self): | 173 | def onLayoutStyleComboBoxChanged(self): |
461 | 170 | self.paragraph_style = False | 174 | self.layout_style = self.LayoutStyleComboBox.currentIndex() |
457 | 171 | |||
458 | 172 | def onParagraphRadioButtonPressed(self): | ||
459 | 173 | self.paragraph_style = True | ||
462 | 174 | 175 | ||
463 | 175 | def onNewChaptersCheckBoxChanged(self): | 176 | def onNewChaptersCheckBoxChanged(self): |
464 | 176 | check_state = self.NewChaptersCheckBox.checkState() | 177 | check_state = self.NewChaptersCheckBox.checkState() |
465 | @@ -187,23 +188,20 @@ | |||
466 | 187 | self.bible_search = True | 188 | self.bible_search = True |
467 | 188 | 189 | ||
468 | 189 | def load(self): | 190 | def load(self): |
469 | 190 | self.paragraph_style = str_to_bool(self.config.get_config(u'paragraph style', u'True')) | ||
470 | 191 | self.show_new_chapters = str_to_bool(self.config.get_config(u'display new chapter', u'False')) | 191 | self.show_new_chapters = str_to_bool(self.config.get_config(u'display new chapter', u'False')) |
471 | 192 | self.display_style = int(self.config.get_config(u'display brackets', u'0')) | 192 | self.display_style = int(self.config.get_config(u'display brackets', u'0')) |
472 | 193 | self.layout_style = int(self.config.get_config(u'verse layout style', u'0')) | ||
473 | 193 | self.bible_theme = self.config.get_config(u'bible theme', u'0') | 194 | self.bible_theme = self.config.get_config(u'bible theme', u'0') |
474 | 194 | self.bible_search = str_to_bool(self.config.get_config(u'search as type', u'True')) | 195 | self.bible_search = str_to_bool(self.config.get_config(u'search as type', u'True')) |
475 | 195 | if self.paragraph_style: | ||
476 | 196 | self.ParagraphRadioButton.setChecked(True) | ||
477 | 197 | else: | ||
478 | 198 | self.VerseRadioButton.setChecked(True) | ||
479 | 199 | self.NewChaptersCheckBox.setChecked(self.show_new_chapters) | 196 | self.NewChaptersCheckBox.setChecked(self.show_new_chapters) |
480 | 200 | self.DisplayStyleComboBox.setCurrentIndex(self.display_style) | 197 | self.DisplayStyleComboBox.setCurrentIndex(self.display_style) |
481 | 198 | self.LayoutStyleComboBox.setCurrentIndex(self.layout_style) | ||
482 | 201 | self.BibleSearchCheckBox.setChecked(self.bible_search) | 199 | self.BibleSearchCheckBox.setChecked(self.bible_search) |
483 | 202 | 200 | ||
484 | 203 | def save(self): | 201 | def save(self): |
485 | 204 | self.config.set_config(u'paragraph style', unicode(self.paragraph_style)) | ||
486 | 205 | self.config.set_config(u'display new chapter', unicode(self.show_new_chapters)) | 202 | self.config.set_config(u'display new chapter', unicode(self.show_new_chapters)) |
487 | 206 | self.config.set_config(u'display brackets', unicode(self.display_style)) | 203 | self.config.set_config(u'display brackets', unicode(self.display_style)) |
488 | 204 | self.config.set_config(u'verse layout style', unicode(self.layout_style)) | ||
489 | 207 | self.config.set_config(u'search as type', unicode(self.bible_search)) | 205 | self.config.set_config(u'search as type', unicode(self.bible_search)) |
490 | 208 | self.config.set_config(u'bible theme', unicode(self.bible_theme)) | 206 | self.config.set_config(u'bible theme', unicode(self.bible_theme)) |
491 | 209 | 207 | ||
492 | @@ -220,4 +218,4 @@ | |||
493 | 220 | # Not Found | 218 | # Not Found |
494 | 221 | id = 0 | 219 | id = 0 |
495 | 222 | self.bible_theme = u'' | 220 | self.bible_theme = u'' |
496 | 223 | self.BibleThemeComboBox.setCurrentIndex(id) | ||
497 | 224 | \ No newline at end of file | 221 | \ No newline at end of file |
498 | 222 | self.BibleThemeComboBox.setCurrentIndex(id) | ||
499 | 225 | 223 | ||
500 | === modified file 'openlp/plugins/bibles/lib/manager.py' | |||
501 | --- openlp/plugins/bibles/lib/manager.py 2009-07-18 05:43:50 +0000 | |||
502 | +++ openlp/plugins/bibles/lib/manager.py 2009-08-02 13:44:41 +0000 | |||
503 | @@ -28,9 +28,7 @@ | |||
504 | 28 | from bibleCSVimpl import BibleCSVImpl | 28 | from bibleCSVimpl import BibleCSVImpl |
505 | 29 | from bibleDBimpl import BibleDBImpl | 29 | from bibleDBimpl import BibleDBImpl |
506 | 30 | from bibleHTTPimpl import BibleHTTPImpl | 30 | from bibleHTTPimpl import BibleHTTPImpl |
510 | 31 | 31 | from openlp.core.lib import Receiver | |
508 | 32 | #from openlp.plugins.bibles.lib.tables import * | ||
509 | 33 | #from openlp.plugins.bibles.lib.classes import * | ||
511 | 34 | 32 | ||
512 | 35 | class BibleMode(object): | 33 | class BibleMode(object): |
513 | 36 | Full = 1 | 34 | Full = 1 |
514 | @@ -68,6 +66,15 @@ | |||
515 | 68 | self.dialogobject = None | 66 | self.dialogobject = None |
516 | 69 | self.reload_bibles() | 67 | self.reload_bibles() |
517 | 70 | 68 | ||
518 | 69 | def set_media_manager(self, media): | ||
519 | 70 | """ | ||
520 | 71 | Sets the reference to the media manager. | ||
521 | 72 | |||
522 | 73 | ``media`` | ||
523 | 74 | The reference to the media manager. | ||
524 | 75 | """ | ||
525 | 76 | self.media = media | ||
526 | 77 | |||
527 | 71 | def reload_bibles(self): | 78 | def reload_bibles(self): |
528 | 72 | log.debug(u'Reload bibles') | 79 | log.debug(u'Reload bibles') |
529 | 73 | files = self.config.get_files(self.bibleSuffix) | 80 | files = self.config.get_files(self.bibleSuffix) |
530 | @@ -228,8 +235,7 @@ | |||
531 | 228 | Advanced Search, and when the mode is ``BibleMode.Partial`` | 235 | Advanced Search, and when the mode is ``BibleMode.Partial`` |
532 | 229 | this method returns all the bibles for the Quick Search. | 236 | this method returns all the bibles for the Quick Search. |
533 | 230 | 237 | ||
536 | 231 | ``mode`` | 238 | c |
535 | 232 | Defaults to ``BibleMode.Full``. The Bible mode. | ||
537 | 233 | """ | 239 | """ |
538 | 234 | log.debug(u'get_bibles') | 240 | log.debug(u'get_bibles') |
539 | 235 | bible_list = [] | 241 | bible_list = [] |
540 | @@ -293,17 +299,24 @@ | |||
541 | 293 | Returns a list of verses for a given Book, Chapter and ranges of verses. | 299 | Returns a list of verses for a given Book, Chapter and ranges of verses. |
542 | 294 | If the end verse(everse) is less then the start verse(sverse) | 300 | If the end verse(everse) is less then the start verse(sverse) |
543 | 295 | then only one verse is returned | 301 | then only one verse is returned |
545 | 296 | bible - Which bible to use. | 302 | |
546 | 303 | ``bible`` | ||
547 | 304 | The name of the bible to be used | ||
548 | 305 | |||
549 | 297 | Rest can be guessed at ! | 306 | Rest can be guessed at ! |
550 | 298 | """ | 307 | """ |
551 | 299 | text = [] | 308 | text = [] |
552 | 309 | self.media.setQuickMsg1(u'') | ||
553 | 310 | self.media.setQuickMsg2(u'') | ||
554 | 300 | log.debug(u'get_verse_text %s,%s,%s,%s,%s,%s', bible, bookname, schapter, echapter, sverse, everse) | 311 | log.debug(u'get_verse_text %s,%s,%s,%s,%s,%s', bible, bookname, schapter, echapter, sverse, everse) |
557 | 301 | if not self.bible_http_cache[bible] == None: | 312 | # check to see if book/chapter exists fow HTTP bibles and load cache if necessary |
558 | 302 | # check to see if book/chapter exists | 313 | if self.bible_http_cache[bible] is not None: |
559 | 303 | book= self.bible_db_cache[bible].get_bible_book(bookname) | 314 | book= self.bible_db_cache[bible].get_bible_book(bookname) |
560 | 304 | if book == None: | 315 | if book == None: |
561 | 316 | self.media.setQuickMsg1(u'Downloading') | ||
562 | 305 | log.debug(u'get_verse_text : new book') | 317 | log.debug(u'get_verse_text : new book') |
564 | 306 | for chapter in range(schapter, echapter+1): | 318 | for chapter in range(schapter, echapter + 1): |
565 | 319 | self.media.setQuickMsg2(u'%s: %s'% (bookname, chapter)) | ||
566 | 307 | search_results = self.bible_http_cache [bible].get_bible_chapter(bible, 0, bookname, chapter) | 320 | search_results = self.bible_http_cache [bible].get_bible_chapter(bible, 0, bookname, chapter) |
567 | 308 | if search_results.has_verselist() : | 321 | if search_results.has_verselist() : |
568 | 309 | ## We have found a book of the bible lets check to see if it was there. | 322 | ## We have found a book of the bible lets check to see if it was there. |
569 | @@ -325,35 +338,39 @@ | |||
570 | 325 | ## Book exists check chapter and texts only. | 338 | ## Book exists check chapter and texts only. |
571 | 326 | v = self.bible_db_cache[bible].get_bible_chapter(book.id, chapter) | 339 | v = self.bible_db_cache[bible].get_bible_chapter(book.id, chapter) |
572 | 327 | if v == None: | 340 | if v == None: |
573 | 341 | self.media.setQuickMsg2(u'%s: %s'%(bookname, chapter)) | ||
574 | 328 | self.bible_db_cache[bible].create_chapter(book.id, \ | 342 | self.bible_db_cache[bible].create_chapter(book.id, \ |
575 | 329 | chapter, \ | 343 | chapter, \ |
576 | 330 | search_results.get_verselist()) | 344 | search_results.get_verselist()) |
577 | 331 | else: | 345 | else: |
578 | 332 | log.debug(u'get_verse_text : old book') | 346 | log.debug(u'get_verse_text : old book') |
580 | 333 | for chapter in range(schapter, echapter+1): | 347 | for chapter in range(schapter, echapter + 1): |
581 | 334 | v = self.bible_db_cache[bible].get_bible_chapter(book.id, chapter) | 348 | v = self.bible_db_cache[bible].get_bible_chapter(book.id, chapter) |
582 | 335 | if v == None: | 349 | if v == None: |
583 | 336 | try: | 350 | try: |
584 | 351 | self.media.setQuickMsg1(u'Downloading') | ||
585 | 352 | self.media.setQuickMsg2(u'%s: %s'% (bookname, chapter)) | ||
586 | 337 | search_results = self.bible_http_cache [bible].get_bible_chapter(bible, book.id, bookname, chapter) | 353 | search_results = self.bible_http_cache [bible].get_bible_chapter(bible, book.id, bookname, chapter) |
590 | 338 | self.bible_db_cache[bible].create_chapter(book.id, \ | 354 | if search_results.has_verselist(): |
591 | 339 | search_results.get_chapter(),\ | 355 | self.bible_db_cache[bible].create_chapter(book.id, \ |
592 | 340 | search_results.get_verselist()) | 356 | search_results.get_chapter(),\ |
593 | 357 | search_results.get_verselist()) | ||
594 | 341 | except : | 358 | except : |
595 | 342 | log.error(u'Errow thrown %s', sys.exc_info()[1]) | 359 | log.error(u'Errow thrown %s', sys.exc_info()[1]) |
597 | 343 | 360 | #Now get verses from database | |
598 | 344 | if schapter == echapter: | 361 | if schapter == echapter: |
599 | 345 | text = self.bible_db_cache[bible].get_bible_text(bookname, schapter, sverse, everse) | 362 | text = self.bible_db_cache[bible].get_bible_text(bookname, schapter, sverse, everse) |
600 | 346 | else: | 363 | else: |
601 | 347 | for i in range (schapter, echapter + 1): | 364 | for i in range (schapter, echapter + 1): |
602 | 348 | if i == schapter: | 365 | if i == schapter: |
603 | 349 | start = sverse | 366 | start = sverse |
605 | 350 | end = self.get_book_verse_count(bible, bookname,i )[0] | 367 | end = self.get_book_verse_count(bible, bookname, i) |
606 | 351 | elif i == echapter: | 368 | elif i == echapter: |
607 | 352 | start = 1 | 369 | start = 1 |
608 | 353 | end = everse | 370 | end = everse |
609 | 354 | else: | 371 | else: |
610 | 355 | start = 1 | 372 | start = 1 |
612 | 356 | end = self.get_book_verse_count(bible, bookname,i )[0] | 373 | end = self.get_book_verse_count(bible, bookname, i) |
613 | 357 | 374 | ||
614 | 358 | txt = self.bible_db_cache[bible].get_bible_text(bookname, i, start, end) | 375 | txt = self.bible_db_cache[bible].get_bible_text(bookname, i, start, end) |
615 | 359 | text.extend(txt) | 376 | text.extend(txt) |
616 | 360 | 377 | ||
617 | === modified file 'openlp/plugins/bibles/lib/mediaitem.py' | |||
618 | --- openlp/plugins/bibles/lib/mediaitem.py 2009-07-13 20:11:36 +0000 | |||
619 | +++ openlp/plugins/bibles/lib/mediaitem.py 2009-08-02 13:44:41 +0000 | |||
620 | @@ -135,6 +135,12 @@ | |||
621 | 135 | self.ClearQuickSearchComboBox = QtGui.QComboBox(self.QuickTab) | 135 | self.ClearQuickSearchComboBox = QtGui.QComboBox(self.QuickTab) |
622 | 136 | self.ClearQuickSearchComboBox.setObjectName(u'ClearQuickSearchComboBox') | 136 | self.ClearQuickSearchComboBox.setObjectName(u'ClearQuickSearchComboBox') |
623 | 137 | self.QuickLayout.addWidget(self.ClearQuickSearchComboBox, 3, 1, 1, 1) | 137 | self.QuickLayout.addWidget(self.ClearQuickSearchComboBox, 3, 1, 1, 1) |
624 | 138 | self.QuickMsg1 = QtGui.QLabel(self.QuickTab) | ||
625 | 139 | self.QuickMsg1.setObjectName(u'QuickSearchLabel') | ||
626 | 140 | self.QuickLayout.addWidget(self.QuickMsg1, 4, 0, 1, 1) | ||
627 | 141 | self.QuickMsg2 = QtGui.QLabel(self.QuickTab) | ||
628 | 142 | self.QuickMsg2.setObjectName(u'QuickSearchLabel') | ||
629 | 143 | self.QuickLayout.addWidget(self.QuickMsg2, 4, 1, 1, 1) | ||
630 | 138 | self.SearchTabWidget.addTab(self.QuickTab, 'Quick') | 144 | self.SearchTabWidget.addTab(self.QuickTab, 'Quick') |
631 | 139 | QuickSpacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, | 145 | QuickSpacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, |
632 | 140 | QtGui.QSizePolicy.Expanding) | 146 | QtGui.QSizePolicy.Expanding) |
633 | @@ -254,6 +260,14 @@ | |||
634 | 254 | def initialise(self): | 260 | def initialise(self): |
635 | 255 | log.debug(u'initialise') | 261 | log.debug(u'initialise') |
636 | 256 | self.loadBibles() | 262 | self.loadBibles() |
637 | 263 | self.parent.biblemanager.set_media_manager(self) | ||
638 | 264 | |||
639 | 265 | def setQuickMsg1(self, text): | ||
640 | 266 | self.QuickMsg1.setText(translate(u'BibleMediaItem', unicode(text))) | ||
641 | 267 | |||
642 | 268 | def setQuickMsg2(self, text): | ||
643 | 269 | self.QuickMsg2.setText(translate(u'BibleMediaItem', unicode(text))) | ||
644 | 270 | Receiver().send_message(u'openlpprocessevents') | ||
645 | 257 | 271 | ||
646 | 258 | def loadBibles(self): | 272 | def loadBibles(self): |
647 | 259 | log.debug(u'Loading Bibles') | 273 | log.debug(u'Loading Bibles') |
648 | @@ -355,7 +369,7 @@ | |||
649 | 355 | verse = unicode(self.search_results[0].verse) | 369 | verse = unicode(self.search_results[0].verse) |
650 | 356 | text = self.search_results[0].text | 370 | text = self.search_results[0].text |
651 | 357 | #Paragraph style force new line per verse | 371 | #Paragraph style force new line per verse |
653 | 358 | if self.parent.bibles_tab.paragraph_style: | 372 | if self.parent.bibles_tab.layout_style == 1: |
654 | 359 | text = text + u'\n\n' | 373 | text = text + u'\n\n' |
655 | 360 | if self.parent.bibles_tab.display_style == 1: | 374 | if self.parent.bibles_tab.display_style == 1: |
656 | 361 | loc = self.formatVerse(old_chapter, chapter, verse, u'(u', u')') | 375 | loc = self.formatVerse(old_chapter, chapter, verse, u'(u', u')') |
657 | @@ -367,8 +381,13 @@ | |||
658 | 367 | loc = self.formatVerse(old_chapter, chapter, verse, u'', u'') | 381 | loc = self.formatVerse(old_chapter, chapter, verse, u'', u'') |
659 | 368 | old_chapter = chapter | 382 | old_chapter = chapter |
660 | 369 | bible_text = bible_text + u' '+ loc + u' '+ text | 383 | bible_text = bible_text + u' '+ loc + u' '+ text |
661 | 384 | #if we are verse per slide then create slide | ||
662 | 385 | if self.parent.bibles_tab.layout_style == 0: | ||
663 | 386 | raw_slides.append(bible_text) | ||
664 | 387 | bible_text = u'' | ||
665 | 370 | service_item.title = book + u' ' + loc | 388 | service_item.title = book + u' ' + loc |
666 | 371 | footer = book + u' (' + self.version + u' ' + self.copyright +u')' | 389 | footer = book + u' (' + self.version + u' ' + self.copyright +u')' |
667 | 390 | #If not found throws and error so add.s | ||
668 | 372 | try: | 391 | try: |
669 | 373 | raw_footer.index(footer) | 392 | raw_footer.index(footer) |
670 | 374 | except: | 393 | except: |
671 | @@ -377,7 +396,9 @@ | |||
672 | 377 | service_item.theme = None | 396 | service_item.theme = None |
673 | 378 | else: | 397 | else: |
674 | 379 | service_item.theme = self.parent.bibles_tab.bible_theme | 398 | service_item.theme = self.parent.bibles_tab.bible_theme |
676 | 380 | raw_slides.append(bible_text) | 399 | #if we are verse per slide we have already been added |
677 | 400 | if self.parent.bibles_tab.layout_style != 0: | ||
678 | 401 | raw_slides.append(bible_text) | ||
679 | 381 | for slide in raw_slides: | 402 | for slide in raw_slides: |
680 | 382 | service_item.add_from_text(slide[:30], slide) | 403 | service_item.add_from_text(slide[:30], slide) |
681 | 383 | service_item.raw_footer = raw_footer | 404 | service_item.raw_footer = raw_footer |
682 | @@ -425,10 +446,6 @@ | |||
683 | 425 | 446 | ||
684 | 426 | def displayResults(self, bible): | 447 | def displayResults(self, bible): |
685 | 427 | for verse in self.search_results: | 448 | for verse in self.search_results: |
686 | 428 | #bible_text = unicode(u' %s %d:%d (%s)'%(book , chap,vse, bible)) | ||
687 | 429 | #bible_verse = QtGui.QListWidgetItem(bible_text) | ||
688 | 430 | #bible_verse.setData(QtCore.Qt.UserRole, QtCore.QVariant(bible_text)) | ||
689 | 431 | #self.ListView.addItem(bible_verse) | ||
690 | 432 | bible_text = u' %s %d:%d (%s)' % (verse.book.name, | 449 | bible_text = u' %s %d:%d (%s)' % (verse.book.name, |
691 | 433 | verse.chapter, verse.verse, bible) | 450 | verse.chapter, verse.verse, bible) |
692 | 434 | bible_verse = QtGui.QListWidgetItem(bible_text) | 451 | bible_verse = QtGui.QListWidgetItem(bible_text) |
693 | 435 | 452 | ||
694 | === modified file 'openlp/plugins/songs/forms/editsongform.py' | |||
695 | --- openlp/plugins/songs/forms/editsongform.py 2009-07-19 07:58:37 +0000 | |||
696 | +++ openlp/plugins/songs/forms/editsongform.py 2009-08-02 16:13:59 +0000 | |||
697 | @@ -48,16 +48,12 @@ | |||
698 | 48 | QtCore.SIGNAL(u'clicked()'), self.onAuthorRemovefromSongItemClicked) | 48 | QtCore.SIGNAL(u'clicked()'), self.onAuthorRemovefromSongItemClicked) |
699 | 49 | QtCore.QObject.connect(self.AuthorsListView, | 49 | QtCore.QObject.connect(self.AuthorsListView, |
700 | 50 | QtCore.SIGNAL(u'itemClicked(QListWidgetItem*)'), self.onAuthorsListViewPressed) | 50 | QtCore.SIGNAL(u'itemClicked(QListWidgetItem*)'), self.onAuthorsListViewPressed) |
701 | 51 | # QtCore.QObject.connect(self.AddTopicButton, | ||
702 | 52 | # QtCore.SIGNAL(u'clicked()'), self.onAddTopicButtonClicked) | ||
703 | 53 | QtCore.QObject.connect(self.AddTopicsToSongButton, | 51 | QtCore.QObject.connect(self.AddTopicsToSongButton, |
704 | 54 | QtCore.SIGNAL(u'clicked()'), self.onTopicAddtoSongItemClicked) | 52 | QtCore.SIGNAL(u'clicked()'), self.onTopicAddtoSongItemClicked) |
705 | 55 | QtCore.QObject.connect(self.TopicRemoveItem, | 53 | QtCore.QObject.connect(self.TopicRemoveItem, |
706 | 56 | QtCore.SIGNAL(u'clicked()'), self.onTopicRemovefromSongItemClicked) | 54 | QtCore.SIGNAL(u'clicked()'), self.onTopicRemovefromSongItemClicked) |
707 | 57 | QtCore.QObject.connect(self.TopicsListView, | 55 | QtCore.QObject.connect(self.TopicsListView, |
708 | 58 | QtCore.SIGNAL(u'itemClicked(QListWidgetItem*)'), self.onTopicListViewPressed) | 56 | QtCore.SIGNAL(u'itemClicked(QListWidgetItem*)'), self.onTopicListViewPressed) |
709 | 59 | # QtCore.QObject.connect(self.AddSongBookButton, | ||
710 | 60 | # QtCore.SIGNAL(u'clicked()'), self.onAddSongBookButtonClicked) | ||
711 | 61 | QtCore.QObject.connect(self.CopyrightInsertItem, | 57 | QtCore.QObject.connect(self.CopyrightInsertItem, |
712 | 62 | QtCore.SIGNAL(u'clicked()'), self.onCopyrightInsertItemTriggered) | 58 | QtCore.SIGNAL(u'clicked()'), self.onCopyrightInsertItemTriggered) |
713 | 63 | QtCore.QObject.connect(self.AddButton, | 59 | QtCore.QObject.connect(self.AddButton, |
714 | @@ -75,9 +71,6 @@ | |||
715 | 75 | # Create other objects and forms | 71 | # Create other objects and forms |
716 | 76 | self.songmanager = songmanager | 72 | self.songmanager = songmanager |
717 | 77 | self.eventmanager = eventmanager | 73 | self.eventmanager = eventmanager |
718 | 78 | # self.authors_form = AuthorsForm(self.songmanager) | ||
719 | 79 | # self.topics_form = TopicsForm(self.songmanager) | ||
720 | 80 | # self.song_book_form = SongBookForm(self.songmanager) | ||
721 | 81 | self.verse_form = EditVerseForm() | 74 | self.verse_form = EditVerseForm() |
722 | 82 | self.initialise() | 75 | self.initialise() |
723 | 83 | self.AuthorsListView.setSortingEnabled(False) | 76 | self.AuthorsListView.setSortingEnabled(False) |
724 | @@ -253,30 +246,6 @@ | |||
725 | 253 | row = self.TopicsListView.row(item) | 246 | row = self.TopicsListView.row(item) |
726 | 254 | self.TopicsListView.takeItem(row) | 247 | self.TopicsListView.takeItem(row) |
727 | 255 | 248 | ||
728 | 256 | # def onAddAuthorsButtonClicked(self): | ||
729 | 257 | # """ | ||
730 | 258 | # Slot documentation goes here. | ||
731 | 259 | # """ | ||
732 | 260 | # self.authors_form.load_form() | ||
733 | 261 | # self.authors_form.exec_() | ||
734 | 262 | # self.loadAuthors() | ||
735 | 263 | # | ||
736 | 264 | # def onAddTopicButtonClicked(self): | ||
737 | 265 | # """ | ||
738 | 266 | # Slot documentation goes here. | ||
739 | 267 | # """ | ||
740 | 268 | # self.topics_form.load_form() | ||
741 | 269 | # self.topics_form.exec_() | ||
742 | 270 | # self.loadTopics() | ||
743 | 271 | # | ||
744 | 272 | # def onAddSongBookButtonClicked(self): | ||
745 | 273 | # """ | ||
746 | 274 | # Slot documentation goes here. | ||
747 | 275 | # """ | ||
748 | 276 | # self.song_book_form.load_form() | ||
749 | 277 | # self.song_book_form.exec_() | ||
750 | 278 | # self.loadBooks() | ||
751 | 279 | |||
752 | 280 | def onSongBookComboChanged(self, item): | 249 | def onSongBookComboChanged(self, item): |
753 | 281 | if item == 0: | 250 | if item == 0: |
754 | 282 | self.song.song_book_id = 0 | 251 | self.song.song_book_id = 0 |
New version of previous merge
Fixes and New feature time:
- Bibles now can have verse per slide
- Themes can have bold fonts.
- Http biles now tell you when downloading
- Http bibles stop at end of chapter(oops)
- Fix song migration bug
- Fix Theme deletion bug