Theme cleanup and more UI work.

This commit is contained in:
Tim Bentley 2010-10-17 19:58:42 +01:00
parent 97c7ebc4c5
commit 61c763639b
7 changed files with 157 additions and 149 deletions

View File

@ -312,7 +312,8 @@ def expand_tags(text):
text = text.replace(tag[u'end tag'], tag[u'end html'])
return text
from theme import ThemeLevel, ThemeXML, BackgroundGradientType, BackgroundType
from theme import ThemeLevel, ThemeXML, BackgroundGradientType, BackgroundType, \
HorizontalType, VerticalType
from spelltextedit import SpellTextEdit
from eventreceiver import Receiver
from settingsmanager import SettingsManager

View File

@ -41,7 +41,7 @@ log = logging.getLogger(__name__)
BLANK_THEME_XML = \
'''<?xml version="1.0" encoding="utf-8"?>
<theme version="1.0">
<name>BlankStyle</name>
<name> </name>
<background type="image">
<filename></filename>
</background>
@ -147,6 +147,16 @@ class BackgroundGradientType(object):
elif type_string == u'leftBottom':
return BackgroundGradientType.LeftBottom
class HorizontalType(object):
Left = 0
Center = 1
Right = 2
class VerticalType(object):
Top = 0
Middle = 1
Bottom = 2
boolean_list = [u'bold', u'italics', u'override', u'outline', u'shadow', \
u'slide_transition']

View File

@ -37,14 +37,13 @@ class HideMode(object):
Theme = 2
Screen = 3
from themewizardform import ThemeWizardForm
from themeform import ThemeForm
from filerenameform import FileRenameForm
from maindisplay import MainDisplay
from slidecontroller import HideMode
from servicenoteform import ServiceNoteForm
from serviceitemeditform import ServiceItemEditForm
from screen import ScreenList
from amendthemeform import AmendThemeForm
from slidecontroller import SlideController
from splashscreen import SplashScreen
from generaltab import GeneralTab

View File

@ -1,21 +1,21 @@
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'themewizard.ui'
# Form implementation generated from reading ui file 'themedialog.ui'
#
# Created: Sat Oct 9 19:28:22 2010
# Created: Sun Oct 17 19:46:30 2010
# by: PyQt4 UI code generator 4.7.4
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
class Ui_ThemeWizard(object):
def setupUi(self, ThemeWizard):
ThemeWizard.setObjectName("ThemeWizard")
ThemeWizard.resize(550, 386)
ThemeWizard.setModal(True)
ThemeWizard.setWizardStyle(QtGui.QWizard.ModernStyle)
ThemeWizard.setOptions(QtGui.QWizard.NoBackButtonOnStartPage)
class Ui_ThemeDialog(object):
def setupUi(self, ThemeDialog):
ThemeDialog.setObjectName("ThemeDialog")
ThemeDialog.resize(550, 386)
ThemeDialog.setModal(True)
ThemeDialog.setWizardStyle(QtGui.QWizard.ModernStyle)
ThemeDialog.setOptions(QtGui.QWizard.NoBackButtonOnStartPage)
self.welcomePage = QtGui.QWizardPage()
self.welcomePage.setTitle("")
self.welcomePage.setSubTitle("")
@ -49,7 +49,7 @@ class Ui_ThemeWizard(object):
spacerItem1 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
self.welcomePageLayout.addItem(spacerItem1)
self.welcomeLayout.addLayout(self.welcomePageLayout)
ThemeWizard.addPage(self.welcomePage)
ThemeDialog.addPage(self.welcomePage)
self.backgroundPage = QtGui.QWizardPage()
self.backgroundPage.setObjectName("backgroundPage")
self.backgroundLayout = QtGui.QFormLayout(self.backgroundPage)
@ -109,7 +109,7 @@ class Ui_ThemeWizard(object):
self.gradientComboBox.addItem("")
self.gradientComboBox.addItem("")
self.backgroundLayout.setWidget(4, QtGui.QFormLayout.FieldRole, self.gradientComboBox)
ThemeWizard.addPage(self.backgroundPage)
ThemeDialog.addPage(self.backgroundPage)
self.mainAreaPage = QtGui.QWizardPage()
self.mainAreaPage.setObjectName("mainAreaPage")
self.formLayout = QtGui.QFormLayout(self.mainAreaPage)
@ -200,7 +200,7 @@ class Ui_ThemeWizard(object):
self.italicsCheckBox = QtGui.QCheckBox(self.mainAreaPage)
self.italicsCheckBox.setObjectName("italicsCheckBox")
self.formLayout.setWidget(7, QtGui.QFormLayout.FieldRole, self.italicsCheckBox)
ThemeWizard.addPage(self.mainAreaPage)
ThemeDialog.addPage(self.mainAreaPage)
self.footerAreaPage = QtGui.QWizardPage()
self.footerAreaPage.setObjectName("footerAreaPage")
self.footerLayout = QtGui.QFormLayout(self.footerAreaPage)
@ -235,15 +235,15 @@ class Ui_ThemeWizard(object):
self.footerSizeSpinBox.setProperty("value", 10)
self.footerSizeSpinBox.setObjectName("footerSizeSpinBox")
self.footerLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.footerSizeSpinBox)
ThemeWizard.addPage(self.footerAreaPage)
ThemeDialog.addPage(self.footerAreaPage)
self.alignmentPage = QtGui.QWizardPage()
self.alignmentPage.setObjectName("alignmentPage")
self.formLayout_2 = QtGui.QFormLayout(self.alignmentPage)
self.formLayout_2.setMargin(20)
self.formLayout_2.setObjectName("formLayout_2")
self.HorizontalLabel = QtGui.QLabel(self.alignmentPage)
self.HorizontalLabel.setObjectName("HorizontalLabel")
self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.HorizontalLabel)
self.horizontalLabel = QtGui.QLabel(self.alignmentPage)
self.horizontalLabel.setObjectName("horizontalLabel")
self.formLayout_2.setWidget(0, QtGui.QFormLayout.LabelRole, self.horizontalLabel)
self.horizontalComboBox = QtGui.QComboBox(self.alignmentPage)
self.horizontalComboBox.setEditable(False)
self.horizontalComboBox.setObjectName("horizontalComboBox")
@ -251,19 +251,19 @@ class Ui_ThemeWizard(object):
self.horizontalComboBox.addItem("")
self.horizontalComboBox.addItem("")
self.formLayout_2.setWidget(0, QtGui.QFormLayout.FieldRole, self.horizontalComboBox)
self.Verticallabe = QtGui.QLabel(self.alignmentPage)
self.Verticallabe.setObjectName("Verticallabe")
self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.Verticallabe)
self.verticalLabel = QtGui.QLabel(self.alignmentPage)
self.verticalLabel.setObjectName("verticalLabel")
self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole, self.verticalLabel)
self.verticalComboBox = QtGui.QComboBox(self.alignmentPage)
self.verticalComboBox.setObjectName("verticalComboBox")
self.verticalComboBox.addItem("")
self.verticalComboBox.addItem("")
self.verticalComboBox.addItem("")
self.formLayout_2.setWidget(1, QtGui.QFormLayout.FieldRole, self.verticalComboBox)
self.TransitionsCheckBox = QtGui.QCheckBox(self.alignmentPage)
self.TransitionsCheckBox.setObjectName("TransitionsCheckBox")
self.formLayout_2.setWidget(2, QtGui.QFormLayout.FieldRole, self.TransitionsCheckBox)
ThemeWizard.addPage(self.alignmentPage)
self.transitionsCheckBox = QtGui.QCheckBox(self.alignmentPage)
self.transitionsCheckBox.setObjectName("transitionsCheckBox")
self.formLayout_2.setWidget(2, QtGui.QFormLayout.FieldRole, self.transitionsCheckBox)
ThemeDialog.addPage(self.alignmentPage)
self.areaPositionPage = QtGui.QWizardPage()
self.areaPositionPage.setObjectName("areaPositionPage")
self.gridLayout_2 = QtGui.QGridLayout(self.areaPositionPage)
@ -400,7 +400,7 @@ class Ui_ThemeWizard(object):
self.footerDefaultPositionCheckBox.setObjectName("footerDefaultPositionCheckBox")
self.footerPositionLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.footerDefaultPositionCheckBox)
self.gridLayout_2.addWidget(self.footerPositionGroupBox, 1, 1, 1, 1)
ThemeWizard.addPage(self.areaPositionPage)
ThemeDialog.addPage(self.areaPositionPage)
self.previewPage = QtGui.QWizardPage()
self.previewPage.setObjectName("previewPage")
self.previewLayout = QtGui.QGridLayout(self.previewPage)
@ -425,11 +425,6 @@ class Ui_ThemeWizard(object):
spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
self.previewBoxLayout.addItem(spacerItem2)
self.previewBoxLabel = QtGui.QLabel(self.previewPage)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.previewBoxLabel.sizePolicy().hasHeightForWidth())
self.previewBoxLabel.setSizePolicy(sizePolicy)
self.previewBoxLabel.setMinimumSize(QtCore.QSize(300, 200))
self.previewBoxLabel.setFrameShape(QtGui.QFrame.WinPanel)
self.previewBoxLabel.setFrameShadow(QtGui.QFrame.Sunken)
@ -441,92 +436,92 @@ class Ui_ThemeWizard(object):
spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
self.previewBoxLayout.addItem(spacerItem3)
self.previewLayout.addLayout(self.previewBoxLayout, 3, 0, 1, 2)
ThemeWizard.addPage(self.previewPage)
ThemeDialog.addPage(self.previewPage)
self.themeNameLabel.setBuddy(self.themeNameEdit)
self.retranslateUi(ThemeWizard)
QtCore.QMetaObject.connectSlotsByName(ThemeWizard)
self.retranslateUi(ThemeDialog)
QtCore.QMetaObject.connectSlotsByName(ThemeDialog)
def retranslateUi(self, ThemeWizard):
ThemeWizard.setWindowTitle(QtGui.QApplication.translate("ThemeWizard", "Theme Wizard", None, QtGui.QApplication.UnicodeUTF8))
self.titleLabel.setText(QtGui.QApplication.translate("ThemeWizard", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
def retranslateUi(self, ThemeDialog):
ThemeDialog.setWindowTitle(QtGui.QApplication.translate("ThemeDialog", "Theme Wizard", None, QtGui.QApplication.UnicodeUTF8))
self.titleLabel.setText(QtGui.QApplication.translate("ThemeDialog", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Sans Serif\'; font-size:9pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:14pt; font-weight:600;\">Welcome to the Theme Wizard</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
self.informationLabel.setText(QtGui.QApplication.translate("ThemeWizard", "This wizard will help you to maintain Themes . Click the next button below to start the process by setting up your background.", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Set Up Background", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "Set up your theme\'s background according to the parameters below.", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Background type:", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(0, QtGui.QApplication.translate("ThemeWizard", "Solid Color", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(1, QtGui.QApplication.translate("ThemeWizard", "Gradient", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(2, QtGui.QApplication.translate("ThemeWizard", "Image", None, QtGui.QApplication.UnicodeUTF8))
self.color1Label.setText(QtGui.QApplication.translate("ThemeWizard", "<Color1>", None, QtGui.QApplication.UnicodeUTF8))
self.color2Label.setText(QtGui.QApplication.translate("ThemeWizard", "<Color2>", None, QtGui.QApplication.UnicodeUTF8))
self.imageLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Image:", None, QtGui.QApplication.UnicodeUTF8))
self.gradientLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Gradient:", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(0, QtGui.QApplication.translate("ThemeWizard", "Horizontal", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(1, QtGui.QApplication.translate("ThemeWizard", "Vertical", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(2, QtGui.QApplication.translate("ThemeWizard", "Circular", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(3, QtGui.QApplication.translate("ThemeWizard", "Top Left - Bottom Right", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(4, QtGui.QApplication.translate("ThemeWizard", "Bottom Left - Top Right", None, QtGui.QApplication.UnicodeUTF8))
self.mainAreaPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Main Area Font Details", None, QtGui.QApplication.UnicodeUTF8))
self.mainAreaPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "Define the font and display characteristics for the Display text", None, QtGui.QApplication.UnicodeUTF8))
self.mainFontLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Font:", None, QtGui.QApplication.UnicodeUTF8))
self.mainColorLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Color:", None, QtGui.QApplication.UnicodeUTF8))
self.mainSizeLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.mainSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.mainLineCountLabel.setText(QtGui.QApplication.translate("ThemeWizard", "(%d lines per slide)", None, QtGui.QApplication.UnicodeUTF8))
self.lineSpacingLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Line Spacing:", None, QtGui.QApplication.UnicodeUTF8))
self.lineSpacingSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.outlineCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "&Outline:", None, QtGui.QApplication.UnicodeUTF8))
self.outlineSizeLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.outlineSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.shadowCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "&Shadow:", None, QtGui.QApplication.UnicodeUTF8))
self.shadowSizeLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.shadowSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.boldCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "Bold Display", None, QtGui.QApplication.UnicodeUTF8))
self.italicsCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "Italic Display", None, QtGui.QApplication.UnicodeUTF8))
self.footerAreaPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Footer Area Font Details", None, QtGui.QApplication.UnicodeUTF8))
self.footerAreaPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "Define the font and display characteristics for the Footer text", None, QtGui.QApplication.UnicodeUTF8))
self.footerFontLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Font:", None, QtGui.QApplication.UnicodeUTF8))
self.footerColorLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Color:", None, QtGui.QApplication.UnicodeUTF8))
self.footerSizeLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.footerSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.alignmentPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Text Formatting Details", None, QtGui.QApplication.UnicodeUTF8))
self.alignmentPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "Allows additional display formatting information to be defined", None, QtGui.QApplication.UnicodeUTF8))
self.HorizontalLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Horizontal Align:", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(0, QtGui.QApplication.translate("ThemeWizard", "Left", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(1, QtGui.QApplication.translate("ThemeWizard", "Center", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(2, QtGui.QApplication.translate("ThemeWizard", "Right", None, QtGui.QApplication.UnicodeUTF8))
self.Verticallabe.setText(QtGui.QApplication.translate("ThemeWizard", "Vertcal Align:", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(0, QtGui.QApplication.translate("ThemeWizard", "Top", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(1, QtGui.QApplication.translate("ThemeWizard", "Middle", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(2, QtGui.QApplication.translate("ThemeWizard", "Bottom", None, QtGui.QApplication.UnicodeUTF8))
self.TransitionsCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "Transitions", None, QtGui.QApplication.UnicodeUTF8))
self.areaPositionPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Output Area Locations", None, QtGui.QApplication.UnicodeUTF8))
self.areaPositionPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "Allows you to change and move the Main and Footer areas.", None, QtGui.QApplication.UnicodeUTF8))
self.mainPositionGroupBox.setTitle(QtGui.QApplication.translate("ThemeWizard", "&Main Area", None, QtGui.QApplication.UnicodeUTF8))
self.mainDefaultPositionCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "&Use default location", None, QtGui.QApplication.UnicodeUTF8))
self.nainXLabel.setText(QtGui.QApplication.translate("ThemeWizard", "X position:", None, QtGui.QApplication.UnicodeUTF8))
self.mainXSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainYSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainYLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Y position:", None, QtGui.QApplication.UnicodeUTF8))
self.mainWidthSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainWidthLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Width:", None, QtGui.QApplication.UnicodeUTF8))
self.mainHeightSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainHeightLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Height:", None, QtGui.QApplication.UnicodeUTF8))
self.footerPositionGroupBox.setTitle(QtGui.QApplication.translate("ThemeWizard", "Footer Area", None, QtGui.QApplication.UnicodeUTF8))
self.footerXLabel.setText(QtGui.QApplication.translate("ThemeWizard", "X position:", None, QtGui.QApplication.UnicodeUTF8))
self.footerXSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerYLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Y position:", None, QtGui.QApplication.UnicodeUTF8))
self.footerYSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerWidthLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Width:", None, QtGui.QApplication.UnicodeUTF8))
self.footerWidthSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerHeightLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Height:", None, QtGui.QApplication.UnicodeUTF8))
self.footerHeightSpinBox.setSuffix(QtGui.QApplication.translate("ThemeWizard", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerDefaultPositionCheckBox.setText(QtGui.QApplication.translate("ThemeWizard", "Use default location", None, QtGui.QApplication.UnicodeUTF8))
self.previewPage.setTitle(QtGui.QApplication.translate("ThemeWizard", "Save and Preview", None, QtGui.QApplication.UnicodeUTF8))
self.previewPage.setSubTitle(QtGui.QApplication.translate("ThemeWizard", "View the theme and save it replacing the current one or change the name to create a new theme", None, QtGui.QApplication.UnicodeUTF8))
self.themeNameLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Theme name:", None, QtGui.QApplication.UnicodeUTF8))
self.previewLabel.setText(QtGui.QApplication.translate("ThemeWizard", "Preview", None, QtGui.QApplication.UnicodeUTF8))
self.informationLabel.setText(QtGui.QApplication.translate("ThemeDialog", "This wizard will help you to maintain Themes . Click the next button below to start the process by setting up your background.", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Set Up Background", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "Set up your theme\'s background according to the parameters below.", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Background type:", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(0, QtGui.QApplication.translate("ThemeDialog", "Solid Color", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(1, QtGui.QApplication.translate("ThemeDialog", "Gradient", None, QtGui.QApplication.UnicodeUTF8))
self.backgroundTypeComboBox.setItemText(2, QtGui.QApplication.translate("ThemeDialog", "Image", None, QtGui.QApplication.UnicodeUTF8))
self.color1Label.setText(QtGui.QApplication.translate("ThemeDialog", "<Color1>", None, QtGui.QApplication.UnicodeUTF8))
self.color2Label.setText(QtGui.QApplication.translate("ThemeDialog", "<Color2>", None, QtGui.QApplication.UnicodeUTF8))
self.imageLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Image:", None, QtGui.QApplication.UnicodeUTF8))
self.gradientLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Gradient:", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(0, QtGui.QApplication.translate("ThemeDialog", "Horizontal", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(1, QtGui.QApplication.translate("ThemeDialog", "Vertical", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(2, QtGui.QApplication.translate("ThemeDialog", "Circular", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(3, QtGui.QApplication.translate("ThemeDialog", "Top Left - Bottom Right", None, QtGui.QApplication.UnicodeUTF8))
self.gradientComboBox.setItemText(4, QtGui.QApplication.translate("ThemeDialog", "Bottom Left - Top Right", None, QtGui.QApplication.UnicodeUTF8))
self.mainAreaPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Main Area Font Details", None, QtGui.QApplication.UnicodeUTF8))
self.mainAreaPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "Define the font and display characteristics for the Display text", None, QtGui.QApplication.UnicodeUTF8))
self.mainFontLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Font:", None, QtGui.QApplication.UnicodeUTF8))
self.mainColorLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Color:", None, QtGui.QApplication.UnicodeUTF8))
self.mainSizeLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.mainSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.mainLineCountLabel.setText(QtGui.QApplication.translate("ThemeDialog", "(%d lines per slide)", None, QtGui.QApplication.UnicodeUTF8))
self.lineSpacingLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Line Spacing:", None, QtGui.QApplication.UnicodeUTF8))
self.lineSpacingSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.outlineCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "&Outline:", None, QtGui.QApplication.UnicodeUTF8))
self.outlineSizeLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.outlineSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.shadowCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "&Shadow:", None, QtGui.QApplication.UnicodeUTF8))
self.shadowSizeLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.shadowSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.boldCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "Bold Display", None, QtGui.QApplication.UnicodeUTF8))
self.italicsCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "Italic Display", None, QtGui.QApplication.UnicodeUTF8))
self.footerAreaPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Footer Area Font Details", None, QtGui.QApplication.UnicodeUTF8))
self.footerAreaPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "Define the font and display characteristics for the Footer text", None, QtGui.QApplication.UnicodeUTF8))
self.footerFontLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Font:", None, QtGui.QApplication.UnicodeUTF8))
self.footerColorLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Color:", None, QtGui.QApplication.UnicodeUTF8))
self.footerSizeLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Size:", None, QtGui.QApplication.UnicodeUTF8))
self.footerSizeSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "pt", None, QtGui.QApplication.UnicodeUTF8))
self.alignmentPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Text Formatting Details", None, QtGui.QApplication.UnicodeUTF8))
self.alignmentPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "Allows additional display formatting information to be defined", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Horizontal Align:", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(0, QtGui.QApplication.translate("ThemeDialog", "Left", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(1, QtGui.QApplication.translate("ThemeDialog", "Center", None, QtGui.QApplication.UnicodeUTF8))
self.horizontalComboBox.setItemText(2, QtGui.QApplication.translate("ThemeDialog", "Right", None, QtGui.QApplication.UnicodeUTF8))
self.verticalLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Vertcal Align:", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(0, QtGui.QApplication.translate("ThemeDialog", "Top", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(1, QtGui.QApplication.translate("ThemeDialog", "Middle", None, QtGui.QApplication.UnicodeUTF8))
self.verticalComboBox.setItemText(2, QtGui.QApplication.translate("ThemeDialog", "Bottom", None, QtGui.QApplication.UnicodeUTF8))
self.transitionsCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "Transitions", None, QtGui.QApplication.UnicodeUTF8))
self.areaPositionPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Output Area Locations", None, QtGui.QApplication.UnicodeUTF8))
self.areaPositionPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "Allows you to change and move the Main and Footer areas.", None, QtGui.QApplication.UnicodeUTF8))
self.mainPositionGroupBox.setTitle(QtGui.QApplication.translate("ThemeDialog", "&Main Area", None, QtGui.QApplication.UnicodeUTF8))
self.mainDefaultPositionCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "&Use default location", None, QtGui.QApplication.UnicodeUTF8))
self.nainXLabel.setText(QtGui.QApplication.translate("ThemeDialog", "X position:", None, QtGui.QApplication.UnicodeUTF8))
self.mainXSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainYSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainYLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Y position:", None, QtGui.QApplication.UnicodeUTF8))
self.mainWidthSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainWidthLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Width:", None, QtGui.QApplication.UnicodeUTF8))
self.mainHeightSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.mainHeightLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Height:", None, QtGui.QApplication.UnicodeUTF8))
self.footerPositionGroupBox.setTitle(QtGui.QApplication.translate("ThemeDialog", "Footer Area", None, QtGui.QApplication.UnicodeUTF8))
self.footerXLabel.setText(QtGui.QApplication.translate("ThemeDialog", "X position:", None, QtGui.QApplication.UnicodeUTF8))
self.footerXSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerYLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Y position:", None, QtGui.QApplication.UnicodeUTF8))
self.footerYSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerWidthLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Width:", None, QtGui.QApplication.UnicodeUTF8))
self.footerWidthSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerHeightLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Height:", None, QtGui.QApplication.UnicodeUTF8))
self.footerHeightSpinBox.setSuffix(QtGui.QApplication.translate("ThemeDialog", "px", None, QtGui.QApplication.UnicodeUTF8))
self.footerDefaultPositionCheckBox.setText(QtGui.QApplication.translate("ThemeDialog", "Use default location", None, QtGui.QApplication.UnicodeUTF8))
self.previewPage.setTitle(QtGui.QApplication.translate("ThemeDialog", "Save and Preview", None, QtGui.QApplication.UnicodeUTF8))
self.previewPage.setSubTitle(QtGui.QApplication.translate("ThemeDialog", "View the theme and save it replacing the current one or change the name to create a new theme", None, QtGui.QApplication.UnicodeUTF8))
self.themeNameLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Theme name:", None, QtGui.QApplication.UnicodeUTF8))
self.previewLabel.setText(QtGui.QApplication.translate("ThemeDialog", "Preview", None, QtGui.QApplication.UnicodeUTF8))

View File

@ -30,11 +30,11 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, theme, BackgroundType, BackgroundGradientType
from themewizard import Ui_ThemeWizard
from themedialog import Ui_ThemeDialog
log = logging.getLogger(__name__)
class ThemeWizardForm(QtGui.QWizard, Ui_ThemeWizard):
class ThemeForm(QtGui.QWizard, Ui_ThemeDialog):
"""
This is the Bible Import Wizard, which allows easy importing of Bibles
into OpenLP from other formats like OSIS, CSV and OpenSong.
@ -299,7 +299,19 @@ class ThemeWizardForm(QtGui.QWizard, Ui_ThemeWizard):
QtCore.QVariant(self.theme.font_footer_width))
def setAlignmentTabValues(self):
pass
self.setField(u'horizontal', \
QtCore.QVariant(self.theme.display_horizontal_align))
self.setField(u'vertical', \
QtCore.QVariant(self.theme.display_vertical_align))
if self.theme.display_slide_transition:
self.setField(u'mainDefaultPosition', QtCore.QVariant(False))
else:
self.setField(u'mainDefaultPosition', QtCore.QVariant(True))
def setPreviewTabValues(self):
self.setField(u'name', QtCore.QVariant(self.theme.theme_name))
if len(self.theme.theme_name) > 1:
self.themeNameEdit.setEnabled(False)
def setDefaults(self):
"""
@ -311,6 +323,7 @@ class ThemeWizardForm(QtGui.QWizard, Ui_ThemeWizard):
self.setFooterAreaTabValues()
self.setAlignmentTabValues()
self.setPositionTabValues()
self.setPreviewTabValues()
# Set up field states
self.onOutlineCheckCheckBoxChanged(self.theme.font_main_outline)
self.onShadowCheckCheckBoxChanged(self.theme.font_main_shadow)
@ -375,6 +388,14 @@ class ThemeWizardForm(QtGui.QWizard, Ui_ThemeWizard):
u'footerPositionWidth', self.footerWidthSpinBox)
self.areaPositionPage.registerField(
u'footerPositionHeight', self.footerHeightSpinBox)
self.backgroundPage.registerField(
u'horizontal', self.horizontalComboBox)
self.backgroundPage.registerField(
u'vertical', self.verticalComboBox)
self.backgroundPage.registerField(
u'slideTransition', self.transitionsCheckBox)
self.backgroundPage.registerField(
u'name', self.themeNameEdit)
def onBackgroundComboBox(self, index):
"""

View File

@ -32,7 +32,7 @@ import logging
from xml.etree.ElementTree import ElementTree, XML
from PyQt4 import QtCore, QtGui
from openlp.core.ui import AmendThemeForm, FileRenameForm, ThemeWizardForm
from openlp.core.ui import FileRenameForm, ThemeForm
from openlp.core.theme import Theme
from openlp.core.lib import OpenLPToolbar, context_menu_action, \
ThemeXML, str_to_bool, get_text_file_string, build_icon, Receiver, \
@ -53,8 +53,7 @@ class ThemeManager(QtGui.QWidget):
self.layout = QtGui.QVBoxLayout(self)
self.layout.setSpacing(0)
self.layout.setMargin(0)
self.amendThemeForm = AmendThemeForm(self)
self.themeWizardForm = ThemeWizardForm(self)
self.themeForm = ThemeForm(self)
self.fileRenameForm = FileRenameForm(self)
self.toolbar = OpenLPToolbar(self)
self.toolbar.addToolbarButton(
@ -127,7 +126,7 @@ class ThemeManager(QtGui.QWidget):
self.checkThemesExists(self.path)
self.thumbPath = os.path.join(self.path, u'thumbnails')
self.checkThemesExists(self.thumbPath)
self.amendThemeForm.path = self.path
self.themeForm.path = self.path
self.oldBackgroundImage = None
self.editingDefault = False
# Last little bits of setting up
@ -215,11 +214,10 @@ class ThemeManager(QtGui.QWidget):
Loads a new theme with the default settings and then launches the theme
editing form for the user to make their customisations.
"""
theme = ThemeXML() #self.createThemeFromXml(self.baseTheme(), self.path)
#self.amendThemeForm.loadTheme(theme)
theme = ThemeXML()
self.saveThemeName = u''
self.themeWizardForm.theme = theme
self.themeWizardForm.exec_()
self.themeForm.theme = theme
self.themeForm.exec_()
def onRenameTheme(self):
"""
@ -282,12 +280,10 @@ class ThemeManager(QtGui.QWidget):
unicode(item.data(QtCore.Qt.UserRole).toString()))
if theme.background_type == u'image':
self.oldBackgroundImage = theme.background_filename
#self.amendThemeForm.loadTheme(theme)
self.saveThemeName = unicode(
item.data(QtCore.Qt.UserRole).toString())
#self.amendThemeForm.exec_()
self.themeWizardForm.theme = theme
self.themeWizardForm.exec_()
self.themeForm.theme = theme
self.themeForm.exec_()
def onDeleteTheme(self):
"""
@ -756,14 +752,6 @@ class ThemeManager(QtGui.QWidget):
"""
log.debug(u'base theme created')
newtheme = ThemeXML()
# newtheme.new_document(
# unicode(translate('OpenLP.ThemeManager', 'New Theme')))
# newtheme.add_background_solid(u'#000000')
# newtheme.add_font(unicode(QtGui.QFont().family()), u'#FFFFFF',
# u'30', u'False')
# newtheme.add_font(unicode(QtGui.QFont().family()), u'#FFFFFF',
# u'12', u'False', u'footer')
# newtheme.add_display(u'0', u'0', u'0')
return newtheme.extract_xml()
def createThemeFromXml(self, theme_xml, path):

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>ThemeWizard</class>
<widget class="QWizard" name="ThemeWizard">
<class>ThemeDialog</class>
<widget class="QWizard" name="ThemeDialog">
<property name="geometry">
<rect>
<x>0</x>
@ -573,7 +573,7 @@ p, li { white-space: pre-wrap; }
<number>20</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="HorizontalLabel">
<widget class="QLabel" name="horizontalLabel">
<property name="text">
<string>Horizontal Align:</string>
</property>
@ -602,7 +602,7 @@ p, li { white-space: pre-wrap; }
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="Verticallabe">
<widget class="QLabel" name="verticalLabel">
<property name="text">
<string>Vertcal Align:</string>
</property>
@ -628,7 +628,7 @@ p, li { white-space: pre-wrap; }
</widget>
</item>
<item row="2" column="1">
<widget class="QCheckBox" name="TransitionsCheckBox">
<widget class="QCheckBox" name="transitionsCheckBox">
<property name="text">
<string>Transitions</string>
</property>
@ -1042,12 +1042,6 @@ p, li { white-space: pre-wrap; }
</item>
<item>
<widget class="QLabel" name="previewBoxLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>300</width>