forked from openlp/openlp
add SongBeamer import
This commit is contained in:
parent
da33167b66
commit
9111a1885e
|
@ -112,6 +112,12 @@ class ImportWizardForm(QtGui.QWizard, Ui_SongImportWizard):
|
||||||
QtCore.QObject.connect(self.ewBrowseButton,
|
QtCore.QObject.connect(self.ewBrowseButton,
|
||||||
QtCore.SIGNAL(u'clicked()'),
|
QtCore.SIGNAL(u'clicked()'),
|
||||||
self.onEWBrowseButtonClicked)
|
self.onEWBrowseButtonClicked)
|
||||||
|
QtCore.QObject.connect(self.songBeamerAddButton,
|
||||||
|
QtCore.SIGNAL(u'clicked()'),
|
||||||
|
self.onSongBeamerAddButtonClicked)
|
||||||
|
QtCore.QObject.connect(self.songBeamerRemoveButton,
|
||||||
|
QtCore.SIGNAL(u'clicked()'),
|
||||||
|
self.onSongBeamerRemoveButtonClicked)
|
||||||
QtCore.QObject.connect(self.cancelButton,
|
QtCore.QObject.connect(self.cancelButton,
|
||||||
QtCore.SIGNAL(u'clicked(bool)'),
|
QtCore.SIGNAL(u'clicked(bool)'),
|
||||||
self.onCancelButtonClicked)
|
self.onCancelButtonClicked)
|
||||||
|
@ -227,6 +233,16 @@ class ImportWizardForm(QtGui.QWizard, Ui_SongImportWizard):
|
||||||
'file to import from.'))
|
'file to import from.'))
|
||||||
self.ewBrowseButton.setFocus()
|
self.ewBrowseButton.setFocus()
|
||||||
return False
|
return False
|
||||||
|
elif source_format == SongFormat.SongBeamer:
|
||||||
|
if self.songBeamerFileListWidget.count() == 0:
|
||||||
|
QtGui.QMessageBox.critical(self,
|
||||||
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
|
'No SongBeamer File Selected'),
|
||||||
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
|
'You need to add at least one SongBeamer '
|
||||||
|
'file to import from.'))
|
||||||
|
self.songBeamerAddButton.setFocus()
|
||||||
|
return False
|
||||||
return True
|
return True
|
||||||
elif self.currentId() == 2:
|
elif self.currentId() == 2:
|
||||||
# Progress page
|
# Progress page
|
||||||
|
@ -342,6 +358,16 @@ class ImportWizardForm(QtGui.QWizard, Ui_SongImportWizard):
|
||||||
self.ewFilenameEdit
|
self.ewFilenameEdit
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def onSongBeamerAddButtonClicked(self):
|
||||||
|
self.getFiles(
|
||||||
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
|
'Select SongBeamer Files'),
|
||||||
|
self.songBeamerFileListWidget
|
||||||
|
)
|
||||||
|
|
||||||
|
def onSongBeamerRemoveButtonClicked(self):
|
||||||
|
self.removeSelectedItems(self.songBeamerFileListWidget)
|
||||||
|
|
||||||
def onCancelButtonClicked(self, checked):
|
def onCancelButtonClicked(self, checked):
|
||||||
"""
|
"""
|
||||||
Stop the import on pressing the cancel button.
|
Stop the import on pressing the cancel button.
|
||||||
|
@ -373,6 +399,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_SongImportWizard):
|
||||||
self.songsOfFellowshipFileListWidget.clear()
|
self.songsOfFellowshipFileListWidget.clear()
|
||||||
self.genericFileListWidget.clear()
|
self.genericFileListWidget.clear()
|
||||||
self.ewFilenameEdit.setText(u'')
|
self.ewFilenameEdit.setText(u'')
|
||||||
|
self.songBeamerFileListWidget.clear()
|
||||||
#self.csvFilenameEdit.setText(u'')
|
#self.csvFilenameEdit.setText(u'')
|
||||||
|
|
||||||
def incrementProgressBar(self, status_text, increment=1):
|
def incrementProgressBar(self, status_text, increment=1):
|
||||||
|
@ -448,6 +475,12 @@ class ImportWizardForm(QtGui.QWizard, Ui_SongImportWizard):
|
||||||
importer = self.plugin.importSongs(SongFormat.EasyWorship,
|
importer = self.plugin.importSongs(SongFormat.EasyWorship,
|
||||||
filename=unicode(self.ewFilenameEdit.text())
|
filename=unicode(self.ewFilenameEdit.text())
|
||||||
)
|
)
|
||||||
|
elif source_format == SongFormat.SongBeamer:
|
||||||
|
# Import SongBeamer songs
|
||||||
|
importer = self.plugin.importSongs(SongFormat.SongBeamer,
|
||||||
|
filenames=self.getListOfFiles(
|
||||||
|
self.songBeamerFileListWidget)
|
||||||
|
)
|
||||||
success = importer.do_import()
|
success = importer.do_import()
|
||||||
if success:
|
if success:
|
||||||
# reload songs
|
# reload songs
|
||||||
|
|
|
@ -97,6 +97,7 @@ class Ui_SongImportWizard(object):
|
||||||
self.formatComboBox.addItem(u'')
|
self.formatComboBox.addItem(u'')
|
||||||
self.formatComboBox.addItem(u'')
|
self.formatComboBox.addItem(u'')
|
||||||
self.formatComboBox.addItem(u'')
|
self.formatComboBox.addItem(u'')
|
||||||
|
self.formatComboBox.addItem(u'')
|
||||||
# self.formatComboBox.addItem(u'')
|
# self.formatComboBox.addItem(u'')
|
||||||
self.formatLayout.addWidget(self.formatComboBox)
|
self.formatLayout.addWidget(self.formatComboBox)
|
||||||
self.formatSpacer = QtGui.QSpacerItem(40, 20,
|
self.formatSpacer = QtGui.QSpacerItem(40, 20,
|
||||||
|
@ -438,6 +439,42 @@ class Ui_SongImportWizard(object):
|
||||||
self.ewLayout.setLayout(0, QtGui.QFormLayout.FieldRole,
|
self.ewLayout.setLayout(0, QtGui.QFormLayout.FieldRole,
|
||||||
self.ewFileLayout)
|
self.ewFileLayout)
|
||||||
self.formatStackedWidget.addWidget(self.ewPage)
|
self.formatStackedWidget.addWidget(self.ewPage)
|
||||||
|
# SongBeamer
|
||||||
|
# Words of Worship
|
||||||
|
self.songBeamerPage = QtGui.QWidget()
|
||||||
|
self.songBeamerPage.setObjectName(u'songBeamerPage')
|
||||||
|
self.songBeamerLayout = QtGui.QVBoxLayout(self.songBeamerPage)
|
||||||
|
self.songBeamerLayout.setSpacing(8)
|
||||||
|
self.songBeamerLayout.setMargin(0)
|
||||||
|
self.songBeamerLayout.setObjectName(u'songBeamerLayout')
|
||||||
|
self.songBeamerFileListWidget = QtGui.QListWidget(
|
||||||
|
self.songBeamerPage)
|
||||||
|
self.songBeamerFileListWidget.setSelectionMode(
|
||||||
|
QtGui.QAbstractItemView.ExtendedSelection)
|
||||||
|
self.songBeamerFileListWidget.setObjectName(
|
||||||
|
u'songBeamerFileListWidget')
|
||||||
|
self.songBeamerLayout.addWidget(self.songBeamerFileListWidget)
|
||||||
|
self.songBeamerButtonLayout = QtGui.QHBoxLayout()
|
||||||
|
self.songBeamerButtonLayout.setSpacing(8)
|
||||||
|
self.songBeamerButtonLayout.setObjectName(
|
||||||
|
u'songBeamerButtonLayout')
|
||||||
|
self.songBeamerAddButton = QtGui.QPushButton(
|
||||||
|
self.songBeamerPage)
|
||||||
|
self.songBeamerAddButton.setIcon(openIcon)
|
||||||
|
self.songBeamerAddButton.setObjectName(u'songBeamerAddButton')
|
||||||
|
self.songBeamerButtonLayout.addWidget(self.songBeamerAddButton)
|
||||||
|
self.songBeamerButtonSpacer = QtGui.QSpacerItem(40, 20,
|
||||||
|
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
|
||||||
|
self.songBeamerButtonLayout.addItem(self.songBeamerButtonSpacer)
|
||||||
|
self.songBeamerRemoveButton = QtGui.QPushButton(
|
||||||
|
self.songBeamerPage)
|
||||||
|
self.songBeamerRemoveButton.setIcon(deleteIcon)
|
||||||
|
self.songBeamerRemoveButton.setObjectName(
|
||||||
|
u'songBeamerRemoveButton')
|
||||||
|
self.songBeamerButtonLayout.addWidget(
|
||||||
|
self.songBeamerRemoveButton)
|
||||||
|
self.songBeamerLayout.addLayout(self.songBeamerButtonLayout)
|
||||||
|
self.formatStackedWidget.addWidget(self.songBeamerPage)
|
||||||
# Commented out for future use.
|
# Commented out for future use.
|
||||||
# self.csvPage = QtGui.QWidget()
|
# self.csvPage = QtGui.QWidget()
|
||||||
# self.csvPage.setObjectName(u'CSVPage')
|
# self.csvPage.setObjectName(u'CSVPage')
|
||||||
|
@ -524,6 +561,8 @@ class Ui_SongImportWizard(object):
|
||||||
'Generic Document/Presentation'))
|
'Generic Document/Presentation'))
|
||||||
self.formatComboBox.setItemText(8,
|
self.formatComboBox.setItemText(8,
|
||||||
translate('SongsPlugin.ImportWizardForm', 'EasyWorship'))
|
translate('SongsPlugin.ImportWizardForm', 'EasyWorship'))
|
||||||
|
self.formatComboBox.setItemText(9,
|
||||||
|
translate('SongsPlugin.ImportWizardForm', 'SongBeamer'))
|
||||||
# self.formatComboBox.setItemText(9,
|
# self.formatComboBox.setItemText(9,
|
||||||
# translate('SongsPlugin.ImportWizardForm', 'CSV'))
|
# translate('SongsPlugin.ImportWizardForm', 'CSV'))
|
||||||
self.openLP2FilenameLabel.setText(
|
self.openLP2FilenameLabel.setText(
|
||||||
|
@ -576,10 +615,10 @@ class Ui_SongImportWizard(object):
|
||||||
translate('SongsPlugin.ImportWizardForm', 'The generic document/'
|
translate('SongsPlugin.ImportWizardForm', 'The generic document/'
|
||||||
'presentation importer has been disabled because OpenLP cannot '
|
'presentation importer has been disabled because OpenLP cannot '
|
||||||
'find OpenOffice.org on your computer.'))
|
'find OpenOffice.org on your computer.'))
|
||||||
self.ewFilenameLabel.setText(
|
self.songBeamerAddButton.setText(
|
||||||
translate('SongsPlugin.ImportWizardForm', 'Filename:'))
|
translate('SongsPlugin.ImportWizardForm', 'Add Files...'))
|
||||||
self.ewBrowseButton.setText(
|
self.songBeamerRemoveButton.setText(
|
||||||
translate('SongsPlugin.ImportWizardForm', 'Browse...'))
|
translate('SongsPlugin.ImportWizardForm', 'Remove File(s)'))
|
||||||
# self.csvFilenameLabel.setText(
|
# self.csvFilenameLabel.setText(
|
||||||
# translate('SongsPlugin.ImportWizardForm', 'Filename:'))
|
# translate('SongsPlugin.ImportWizardForm', 'Filename:'))
|
||||||
# self.csvBrowseButton.setText(
|
# self.csvBrowseButton.setText(
|
||||||
|
|
|
@ -29,6 +29,7 @@ from olpimport import OpenLPSongImport
|
||||||
from wowimport import WowImport
|
from wowimport import WowImport
|
||||||
from cclifileimport import CCLIFileImport
|
from cclifileimport import CCLIFileImport
|
||||||
from ewimport import EasyWorshipSongImport
|
from ewimport import EasyWorshipSongImport
|
||||||
|
from songbeamerimport import SongBeamerImport
|
||||||
# Imports that might fail
|
# Imports that might fail
|
||||||
try:
|
try:
|
||||||
from olp1import import OpenLP1SongImport
|
from olp1import import OpenLP1SongImport
|
||||||
|
@ -64,6 +65,7 @@ class SongFormat(object):
|
||||||
Generic = 7
|
Generic = 7
|
||||||
#CSV = 8
|
#CSV = 8
|
||||||
EasyWorship = 8
|
EasyWorship = 8
|
||||||
|
SongBeamer = 9
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_class(format):
|
def get_class(format):
|
||||||
|
@ -89,6 +91,8 @@ class SongFormat(object):
|
||||||
return CCLIFileImport
|
return CCLIFileImport
|
||||||
elif format == SongFormat.EasyWorship:
|
elif format == SongFormat.EasyWorship:
|
||||||
return EasyWorshipSongImport
|
return EasyWorshipSongImport
|
||||||
|
elif format == SongFormat.SongBeamer:
|
||||||
|
return SongBeamerImport
|
||||||
# else:
|
# else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
@ -106,7 +110,8 @@ class SongFormat(object):
|
||||||
SongFormat.CCLI,
|
SongFormat.CCLI,
|
||||||
SongFormat.SongsOfFellowship,
|
SongFormat.SongsOfFellowship,
|
||||||
SongFormat.Generic,
|
SongFormat.Generic,
|
||||||
SongFormat.EasyWorship
|
SongFormat.EasyWorship,
|
||||||
|
SongFormat.SongBeamer
|
||||||
]
|
]
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|
Loading…
Reference in New Issue