- Consolidated common icons for a slightly smaller resource file.
- Changed the Import Bible icon to an import icon.
- Merge from head.
This commit is contained in:
Raoul Snyman 2010-03-23 21:04:15 +02:00
commit 2c325d718b
15 changed files with 291 additions and 90 deletions

View File

@ -144,8 +144,9 @@ def resize_image(image, width, height):
The image to resize.
"""
preview = QtGui.QImage(image)
preview = preview.scaled(width, height, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
if not preview.isNull():
preview = preview.scaled(width, height, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
realw = preview.width()
realh = preview.height()
# and move it to the centre of the preview space

View File

@ -131,6 +131,7 @@ class MediaManagerItem(QtGui.QWidget):
It provides a default set and the plugin is able to override
the if required.
"""
self.hasImportIcon = False
self.hasNewIcon = True
self.hasEditIcon = True
self.hasFileIcon = False
@ -207,48 +208,54 @@ class MediaManagerItem(QtGui.QWidget):
def addMiddleHeaderBar(self):
# Create buttons for the toolbar
## Import Button ##
if self.hasImportIcon:
self.addToolbarButton(
u'Import %s' % self.PluginNameShort,
u'%s %s' % (self.trUtf8('Import a'), self.PluginNameVisible),
u':/general/general_import.png', self.onImportClick)
## File Button ##
if self.hasFileIcon:
self.addToolbarButton(
u'Load %s' % self.PluginNameShort,
u'%s %s' % (self.trUtf8('Load a new'), self.PluginNameVisible),
u':/%s_load.png' % self.IconPath, self.onFileClick)
u':/general/general_open.png', self.onFileClick)
## New Button ##
if self.hasNewIcon:
self.addToolbarButton(
u'New %s' % self.PluginNameShort,
u'%s %s' % (self.trUtf8('Add a new'), self.PluginNameVisible),
u':/%s_new.png' % self.IconPath, self.onNewClick)
u':/general/general_new.png', self.onNewClick)
## Edit Button ##
if self.hasEditIcon:
self.addToolbarButton(
u'Edit %s' % self.PluginNameShort,
u'%s %s' % (self.trUtf8('Edit the selected'),
self.PluginNameVisible),
u':/%s_edit.png' % self.IconPath, self.onEditClick)
u':/general/general_edit.png', self.onEditClick)
## Delete Button ##
if self.hasDeleteIcon:
self.addToolbarButton(
u'Delete %s' % self.PluginNameShort,
self.trUtf8('Delete the selected item'),
u':/%s_delete.png' % self.IconPath, self.onDeleteClick)
u':/general/general_delete.png', self.onDeleteClick)
## Separator Line ##
self.addToolbarSeparator()
## Preview ##
self.addToolbarButton(
u'Preview %s' % self.PluginNameShort,
self.trUtf8('Preview the selected item'),
u':/system/system_preview.png', self.onPreviewClick)
u':/general/general_preview.png', self.onPreviewClick)
## Live Button ##
self.addToolbarButton(
u'Go Live',
self.trUtf8('Send the selected item live'),
u':/system/system_live.png', self.onLiveClick)
u':/general/general_live.png', self.onLiveClick)
## Add to service Button ##
self.addToolbarButton(
u'Add %s to Service' % self.PluginNameShort,
self.trUtf8('Add the selected item(s) to the service'),
u':/system/system_add.png', self.onAddClick)
u':/general/general_add.png', self.onAddClick)
def addListViewToToolBar(self):
#Add the List widget
@ -268,22 +275,22 @@ class MediaManagerItem(QtGui.QWidget):
if self.hasEditIcon:
self.ListView.addAction(
contextMenuAction(
self.ListView, u':/%s_new.png' % self.IconPath,
self.ListView, u':/general/general_edit.png',
u'%s %s' % (self.trUtf8('&Edit'), self.PluginNameVisible),
self.onEditClick))
self.ListView.addAction(contextMenuSeparator(self.ListView))
self.ListView.addAction(
contextMenuAction(
self.ListView, u':/system/system_preview.png',
self.ListView, u':/general/general_preview.png',
u'%s %s' % (self.trUtf8('&Preview'), self.PluginNameVisible),
self.onPreviewClick))
self.ListView.addAction(
contextMenuAction(
self.ListView, u':/system/system_live.png',
self.ListView, u':/general/general_live.png',
self.trUtf8('&Show Live'), self.onLiveClick))
self.ListView.addAction(
contextMenuAction(
self.ListView, u':/system/system_add.png',
self.ListView, u':/general/general_add.png',
self.trUtf8('&Add to Service'), self.onAddClick))
QtCore.QObject.connect(
self.ListView, QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),
@ -313,7 +320,7 @@ class MediaManagerItem(QtGui.QWidget):
files = QtGui.QFileDialog.getOpenFileNames(
self, self.OnNewPrompt,
self.parent.config.get_last_dir(), self.OnNewFileMasks)
log.info(u'New files(s)%s', unicode(files))
log.info(u'New files(s) %s', unicode(files))
if files:
self.loadList(files)
dir, filename = os.path.split(unicode(files[0]))
@ -353,8 +360,8 @@ class MediaManagerItem(QtGui.QWidget):
def onPreviewClick(self):
if not self.ListView.selectedIndexes() and not self.remoteTriggered:
QtGui.QMessageBox.information(self,
self.trUtf8('No items selected...'),
self.trUtf8('You must select one or more items'))
self.trUtf8('No Items Selected'),
self.trUtf8('You must select one or more items.'))
else:
log.debug(self.PluginNameShort + u' Preview requested')
service_item = self.buildServiceItem()
@ -365,8 +372,8 @@ class MediaManagerItem(QtGui.QWidget):
def onLiveClick(self):
if not self.ListView.selectedIndexes():
QtGui.QMessageBox.information(self,
self.trUtf8('No items selected...'),
self.trUtf8('You must select one or more items'))
self.trUtf8('No Items Selected'),
self.trUtf8('You must select one or more items.'))
else:
log.debug(self.PluginNameShort + u' Live requested')
service_item = self.buildServiceItem()
@ -377,8 +384,8 @@ class MediaManagerItem(QtGui.QWidget):
def onAddClick(self):
if not self.ListView.selectedIndexes() and not self.remoteTriggered:
QtGui.QMessageBox.information(self,
self.trUtf8('No items selected...'),
self.trUtf8('You must select one or more items'))
self.trUtf8('No Items Selected'),
self.trUtf8('You must select one or more items.'))
else:
log.debug(self.PluginNameShort + u' Add requested')
service_item = self.buildServiceItem()

View File

@ -116,7 +116,7 @@ class Ui_AmendThemeDialog(object):
self.ImageLineEdit.setObjectName(u'ImageLineEdit')
self.horizontalLayout_2.addWidget(self.ImageLineEdit)
self.ImageToolButton = QtGui.QToolButton(self.ImageFilenameWidget)
icon1 = build_icon(u':/images/image_load.png')
icon1 = build_icon(u':/general/general_open.png')
self.ImageToolButton.setIcon(icon1)
self.ImageToolButton.setObjectName(u'ImageToolButton')
self.horizontalLayout_2.addWidget(self.ImageToolButton)

View File

@ -114,13 +114,13 @@ class ServiceManager(QtGui.QWidget):
# Create the top toolbar
self.Toolbar = OpenLPToolbar(self)
self.Toolbar.addToolbarButton(
self.trUtf8('New Service'), u':/services/service_new.png',
self.trUtf8('New Service'), u':/general/general_new.png',
self.trUtf8('Create a new service'), self.onNewService)
self.Toolbar.addToolbarButton(
self.trUtf8('Open Service'), u':/services/service_open.png',
self.trUtf8('Open Service'), u':/general/general_open.png',
self.trUtf8('Load an existing service'), self.onLoadService)
self.Toolbar.addToolbarButton(
self.trUtf8('Save Service'), u':/services/service_save.png',
self.trUtf8('Save Service'), u':/general/general_save.png',
self.trUtf8('Save this service'), self.onSaveService)
self.Toolbar.addSeparator()
self.ThemeLabel = QtGui.QLabel(self.trUtf8('Theme:'),
@ -171,7 +171,7 @@ class ServiceManager(QtGui.QWidget):
self.trUtf8('Move to end'), self.onServiceEnd)
self.OrderToolbar.addSeparator()
self.OrderToolbar.addToolbarButton(
self.trUtf8('&Delete From Service'), u':/services/service_delete.png',
self.trUtf8('&Delete From Service'), u':/general/general_delete.png',
self.trUtf8('Delete From Service'), self.onDeleteFromService)
self.Layout.addWidget(self.OrderToolbar)
# Connect up our signals and slots
@ -201,17 +201,17 @@ class ServiceManager(QtGui.QWidget):
#build the context menu
self.menu = QtGui.QMenu()
self.editAction = self.menu.addAction(self.trUtf8('&Edit Item'))
self.editAction.setIcon(build_icon(u':/services/service_edit.png'))
self.editAction.setIcon(build_icon(u':/general/general_edit.png'))
self.notesAction = self.menu.addAction(self.trUtf8('&Notes'))
self.notesAction.setIcon(build_icon(u':/services/service_notes.png'))
self.deleteAction = self.menu.addAction(self.trUtf8('&Delete From Service'))
self.deleteAction.setIcon(build_icon(u':/services/service_delete.png'))
self.deleteAction.setIcon(build_icon(u':/general/general_delete.png'))
self.sep1 = self.menu.addAction(u'')
self.sep1.setSeparator(True)
self.previewAction = self.menu.addAction(self.trUtf8('&Preview Verse'))
self.previewAction.setIcon(build_icon(u':/system/system_preview.png'))
self.previewAction.setIcon(build_icon(u':/general/general_preview.png'))
self.liveAction = self.menu.addAction(self.trUtf8('&Live Verse'))
self.liveAction.setIcon(build_icon(u':/system/system_live.png'))
self.liveAction.setIcon(build_icon(u':/general/general_live.png'))
self.sep2 = self.menu.addAction(u'')
self.sep2.setSeparator(True)
self.themeMenu = QtGui.QMenu(self.trUtf8(u'&Change Item Theme'))

View File

@ -177,11 +177,11 @@ class SlideController(QtGui.QWidget):
if not self.isLive:
self.Toolbar.addToolbarSeparator(u'Close Separator')
self.Toolbar.addToolbarButton(
u'Go Live', u':/system/system_live.png',
u'Go Live', u':/general/general_live.png',
self.trUtf8('Move to live'), self.onGoLive)
self.Toolbar.addToolbarSeparator(u'Close Separator')
self.Toolbar.addToolbarButton(
u'Edit Song', u':/services/service_edit.png',
u'Edit Song', u':/general/general_edit.png',
self.trUtf8('Edit and re-preview Song'), self.onEditSong)
if isLive:
self.Toolbar.addToolbarSeparator(u'Loop Separator')

View File

@ -59,14 +59,14 @@ class ThemeManager(QtGui.QWidget):
self.trUtf8('Edit Theme'), u':/themes/theme_edit.png',
self.trUtf8('Edit a theme'), self.onEditTheme)
self.Toolbar.addToolbarButton(
self.trUtf8('Delete Theme'), u':/themes/theme_delete.png',
self.trUtf8('Delete Theme'), u':/general/general_delete.png',
self.trUtf8('Delete a theme'), self.onDeleteTheme)
self.Toolbar.addSeparator()
self.Toolbar.addToolbarButton(
self.trUtf8('Import Theme'), u':/themes/theme_import.png',
self.trUtf8('Import Theme'), u':/general/general_import.png',
self.trUtf8('Import a theme'), self.onImportTheme)
self.Toolbar.addToolbarButton(
self.trUtf8('Export Theme'), u':/themes/theme_export.png',
self.trUtf8('Export Theme'), u':/general/general_export.png',
self.trUtf8('Export a theme'), self.onExportTheme)
self.ThemeWidget = QtGui.QWidgetAction(self.Toolbar)
self.Layout.addWidget(self.Toolbar)
@ -82,17 +82,17 @@ class ThemeManager(QtGui.QWidget):
contextMenuSeparator(self.ThemeListWidget))
self.ThemeListWidget.addAction(
contextMenuAction(self.ThemeListWidget,
u':/themes/theme_delete.png',
u':/general/general_delete.png',
self.trUtf8('Delete theme'),
self.onDeleteTheme))
self.ThemeListWidget.addAction(
contextMenuAction(self.ThemeListWidget,
u':/themes/theme_export.png',
u':/general/general_export.png',
self.trUtf8('Make Global'),
self.changeGlobalFromScreen))
self.ThemeListWidget.addAction(
contextMenuAction(self.ThemeListWidget,
u':/themes/theme_export.png',
u':/general/general_export.png',
self.trUtf8('Export theme'),
self.onExportTheme))
self.ThemeListWidget.addAction(

View File

@ -159,9 +159,10 @@ class ThemesTab(SettingsTab):
image = self.parent.ThemeManagerContents.getPreviewImage(
self.global_theme)
preview = QtGui.QPixmap(unicode(image))
display = preview.scaled(300, 255, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
self.DefaultListView.setPixmap(display)
if not preview.isNull():
preview = preview.scaled(300, 255, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
self.DefaultListView.setPixmap(preview)
def updateThemeList(self, theme_list):
"""
@ -184,6 +185,7 @@ class ThemesTab(SettingsTab):
image = self.parent.ThemeManagerContents.getPreviewImage(
self.global_theme)
preview = QtGui.QPixmap(unicode(image))
display = preview.scaled(300, 255, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
self.DefaultListView.setPixmap(display)
if not preview.isNull():
preview = preview.scaled(300, 255, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
self.DefaultListView.setPixmap(preview)

View File

@ -23,10 +23,204 @@
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
###############################################################################
import os
import sys
import sqlite3
from sqlalchemy import *
from sqlalchemy import create_engine
from sqlalchemy.orm import scoped_session, sessionmaker, mapper, relation
from openlp.core.lib import PluginConfig
from openlp.plugins.bibles.lib.models import *
class BaseModel(object):
"""
BaseModel provides a base object with a set of generic functions
"""
@classmethod
def populate(cls, **kwargs):
"""
Creates an instance of a class and populates it, returning the instance
"""
me = cls()
keys = kwargs.keys()
for key in keys:
me.__setattr__(key, kwargs[key])
return me
class TBibleMeta(BaseModel):
"""
Bible Meta Data
"""
pass
class TTestament(BaseModel):
"""
Bible Testaments
"""
pass
class TBook(BaseModel):
"""
Song model
"""
pass
class TVerse(BaseModel):
"""
Topic model
"""
pass
temp_meta_table = Table(u'metadata_temp', metadata,
Column(u'key', types.Unicode(255), primary_key=True),
Column(u'value', types.Unicode(255)),
)
temp_testament_table = Table(u'testament_temp', metadata,
Column(u'id', types.Integer, primary_key=True),
Column(u'name', types.Unicode(30)),
)
temp_book_table = Table(u'book_temp', metadata,
Column(u'id', types.Integer, primary_key=True),
Column(u'testament_id', types.Integer),
Column(u'name', types.Unicode(30)),
Column(u'abbreviation', types.Unicode(5)),
)
temp_verse_table = Table(u'verse_temp', metadata,
Column(u'id', types.Integer, primary_key=True),
Column(u'book_id', types.Integer),
Column(u'chapter', types.Integer),
Column(u'verse', types.Integer),
Column(u'text', types.UnicodeText),
)
mapper(TBibleMeta, temp_meta_table)
mapper(TTestament, temp_testament_table)
mapper(TBook, temp_book_table)
mapper(TVerse, temp_verse_table)
def init_models(url):
engine = create_engine(url)
metadata.bind = engine
session = scoped_session(sessionmaker(autoflush=False,
autocommit=False, bind=engine))
return session
class MigrateBibles():
def __init__(self, display):
self.display = display
self.config = PluginConfig(u'Bibles')
self.data_path = self.config.get_data_path()
self.database_files = self.config.get_files(u'sqlite')
print self.database_files
def progress(self, text):
print text
self.display.output(text)
def process(self):
self.display.output(u'Bible process started')
self.display.output(u'Bible process finished')
self.progress(u'Bibles processing started')
for f in self.database_files:
self.v_1_9_0(f)
self.progress(u'Bibles processing finished')
def v_1_9_0(self, database):
self.progress(u'Migration 1.9.0 Started for ' + database)
self._v1_9_0_old(database)
self._v1_9_0_new(database)
self._v1_9_0_cleanup(database)
self.progress(u'Migration 1.9.0 Finished for ' + database)
def _v1_9_0_old(self, database):
self.progress(u'Rename Tables ' + database)
conn = sqlite3.connect(os.path.join(self.data_path, database))
conn.execute(u'alter table book rename to book_temp;')
conn.commit()
conn.execute(u'alter table testament rename to testament_temp;')
conn.commit()
conn.execute(u'alter table verse rename to verse_temp;')
conn.commit()
conn.execute(u'alter table metadata rename to metadata_temp;')
conn.commit()
def _v1_9_0_new(self, database):
self.progress(u'Create new Tables ' + database)
self.db_url = u'sqlite:///' + self.data_path + u'/' + database
print self.db_url
self.session = init_models(self.db_url)
metadata.create_all(checkfirst=True)
self.progress(u'Create testament table')
results = self.session.query(TTestament).order_by(TTestament.id).all()
for testament_temp in results:
testament = Testament()
testament.id = testament_temp.id
testament.name = testament_temp.name
try:
self.session.add(testament)
self.session.commit()
except:
self.session.rollback()
print u'Error thrown = ', sys.exc_info()[1]
self.progress(u'Create book table')
results = self.session.query(TBook).order_by(TBook.id).all()
for book_temp in results:
book = Book()
book.id = book_temp.id
book.testament_id = book_temp.testament_id
book.name = book_temp.name
book.abbreviation = book_temp.abbreviation
try:
self.session.add(book)
self.session.commit()
except:
self.session.rollback()
print u'Error thrown = ', sys.exc_info()[1]
self.progress(u'Create verse table')
results = self.session.query(TVerse).order_by(TVerse.id).all()
for verse_temp in results:
verse = Verse()
verse.id = verse_temp.id
verse.book_id = verse_temp.book_id
verse.chapter = verse_temp.chapter
verse.verse = verse_temp.verse
verse.text = verse_temp.text
try:
self.session.add(verse)
except:
self.session.rollback()
print u'Error thrown = ', sys.exc_info()[1]
try:
self.session.commit()
except:
self.session.rollback()
print u'Error thrown = ', sys.exc_info()[1]
self.progress(u'Create metadata table')
results = self.session.query(TBibleMeta).order_by(TBibleMeta.key).all()
for biblemeta_temp in results:
biblemeta = BibleMeta()
biblemeta.key = biblemeta_temp.key
biblemeta.value = biblemeta_temp.value
try:
self.session.add(biblemeta)
self.session.commit()
except:
self.session.rollback()
print u'Error thrown = ', sys.exc_info()[1]
def _v1_9_0_cleanup(self, database):
self.progress(u'Update Internal Data ' + database)
conn = sqlite3.connect(os.path.join(self.data_path, database))
conn.commit()
conn.execute(u'drop table book_temp;')
conn.commit()
conn.execute(u'drop table testament_temp;')
conn.commit()
conn.execute(u'drop table verse_temp;')
conn.commit()
conn.execute(u'drop table metadata_temp;')
conn.commit()
conn.execute(u'vacuum;')
conn.commit()

View File

@ -104,7 +104,7 @@ class Ui_BibleImportWizard(object):
self.OsisFileButton = QtGui.QToolButton(self.OsisPage)
self.OsisFileButton.setMaximumSize(QtCore.QSize(32, 16777215))
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap(u':/imports/import_load.png'),
icon.addPixmap(QtGui.QPixmap(u':/general/general_open.png'),
QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.OsisFileButton.setIcon(icon)
self.OsisFileButton.setObjectName(u'OsisFileButton')

View File

@ -76,6 +76,8 @@ class BibleMediaItem(MediaManagerItem):
def requiredIcons(self):
MediaManagerItem.requiredIcons(self)
self.hasImportIcon = True
self.hasNewIcon = False
self.hasEditIcon = False
self.hasDeleteIcon = False
@ -373,7 +375,7 @@ class BibleMediaItem(MediaManagerItem):
unicode(self.AdvancedBookComboBox.currentText()),
self.AdvancedBookComboBox.itemData(item).toInt()[0])
def onNewClick(self):
def onImportClick(self):
self.bibleimportform = ImportWizardForm(self, self.parent.config,
self.parent.manager, self.parent)
self.bibleimportform.exec_()

View File

@ -63,7 +63,8 @@ class OpenSongBible(BibleDB):
Loads a Bible from file.
"""
log.debug(u'Starting OpenSong import from "%s"' % self.filename)
self.filename = unicode(self.filename, u'utf-8')
if not isinstance(self.filename, unicode):
self.filename = unicode(self.filename, u'utf8')
self.wizard.incrementProgressBar(u'Preparing for import...')
file = None
success = True

View File

@ -54,7 +54,7 @@ class Ui_OpenLPExportDialog(object):
self.horizontalLayout.addWidget(self.ExportFileLineEdit)
self.ExportFileSelectPushButton = QtGui.QPushButton(self.ExportFileWidget)
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap(u':/exports/export_load.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
icon1.addPixmap(QtGui.QPixmap(u':/general/general_load.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.ExportFileSelectPushButton.setIcon(icon1)
self.ExportFileSelectPushButton.setObjectName(u'ExportFileSelectPushButton')
self.horizontalLayout.addWidget(self.ExportFileSelectPushButton)

View File

@ -60,7 +60,8 @@ class Ui_SongUsageDetailDialog(object):
self.horizontalLayout.addWidget(self.FileLineEdit)
self.SaveFilePushButton = QtGui.QPushButton(self.FileGroupBox)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap(u':/exports/export_load.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off)
icon.addPixmap(QtGui.QPixmap(u':/general/general_load.png'),
QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.SaveFilePushButton.setIcon(icon)
self.SaveFilePushButton.setObjectName(u'SaveFilePushButton')
self.horizontalLayout.addWidget(self.SaveFilePushButton)

View File

@ -70,7 +70,7 @@ class Migration(object):
"""
#MigrateFiles(self.display).process()
MigrateSongs(self.display).process()
#MigrateBibles(self.display).process()
MigrateBibles(self.display).process()
def move_log_file(self):
"""
@ -101,6 +101,7 @@ class Migration(object):
writefile.close()
def convert_sqlite2_to_3(self, olddb, newdb):
print u'Converting sqlite2 ' + olddb + ' to sqlite3 ' + newdb
if os.name == u'nt':
# we can't make this a raw unicode string as the \U within it causes much confusion
hKey = win32api.RegOpenKey(win32con.HKEY_LOCAL_MACHINE, u'SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\SQLite ODBC Driver')
@ -132,19 +133,30 @@ class Migration(object):
if __name__ == u'__main__':
mig = Migration()
config = PluginConfig(u'Songs')
newpath = config.get_data_path()
songconfig = PluginConfig(u'Songs')
newsongpath = songconfig.get_data_path()
bibleconfig = PluginConfig(u'Bibles')
newbiblepath = bibleconfig.get_data_path()
if os.name == u'nt':
if not os.path.isdir(newpath):
os.makedirs(newpath)
if not os.path.isdir(newsongpath):
os.makedirs(newsongpath)
if not os.path.isdir(newbiblepath):
os.makedirs(newbiblepath)
ALL_USERS_APPLICATION_DATA = 35
shell = Dispatch(u'Shell.Application')
folder = shell.Namespace(ALL_USERS_APPLICATION_DATA)
folderitem = folder.Self
olddb = os.path.join(folderitem.path, u'openlp.org', u'Data', u'songs.olp')
oldsongdb = os.path.join(folderitem.path, u'openlp.org', u'Data', u'songs.olp')
oldbiblepath = os.path.join(folderitem.path, u'openlp.org', u'Data', u'Bibles')
else:
olddb = os.path.join(newpath, u'songs.olp')
newdb = os.path.join(newpath, u'songs.sqlite')
mig.convert_sqlite2_to_3(olddb, newdb)
oldsongdb = os.path.join(newsongpath, u'songs.olp')
newsongdb = os.path.join(newsongpath, u'songs.sqlite')
mig.convert_sqlite2_to_3(oldsongdb, newsongdb)
files = os.listdir(oldbiblepath)
for file in files:
f = os.path.splitext(os.path.basename(file))[0]
if f != 'kjv': #kjv bible has an autoincrement key not supported in sqlite3
mig.convert_sqlite2_to_3(os.path.join(oldbiblepath, file),
os.path.join(newbiblepath, f + u'.sqlite'))
mig.process()
#mig.move_log_file()

View File

@ -13,14 +13,22 @@
<file>book_maintenance.png</file>
<file>author_maintenance.png</file>
<file>topic_maintenance.png</file>
<file>song_delete.png</file>
<file>song_edit.png</file>
<file>song_export.png</file>
<file>song_new.png</file>
<file>song_author_edit.png</file>
<file>song_topic_edit.png</file>
<file>song_book_edit.png</file>
</qresource>
<qresource prefix="general" >
<file>general_preview.png</file>
<file>general_live.png</file>
<file>general_add.png</file>
<file>general_delete.png</file>
<file>general_edit.png</file>
<file>general_export.png</file>
<file>general_import.png</file>
<file>general_new.png</file>
<file>general_open.png</file>
<file>general_save.png</file>
</qresource>
<qresource prefix="slides" >
<file>slide_close.png</file>
<file>slide_first.png</file>
@ -58,47 +66,22 @@
<file>export_load.png</file>
<file>export_move_to_list.png</file>
</qresource>
<qresource prefix="custom" >
<file>custom_new.png</file>
<file>custom_edit.png</file>
<file>custom_delete.png</file>
</qresource>
<qresource prefix="wizards" >
<file>wizard_importbible.bmp</file>
</qresource>
<qresource prefix="presentations" >
<file>presentation_delete.png</file>
<file>presentation_load.png</file>
</qresource>
<qresource prefix="videos" >
<file>video_delete.png</file>
<file>video_load.png</file>
</qresource>
<qresource prefix="images" >
<file>image_delete.png</file>
<file>image_load.png</file>
</qresource>
<qresource prefix="services" >
<file>service_edit.png</file>
<file>service_notes.png</file>
<file>service_item_notes.png</file>
<file>service_bottom.png</file>
<file>service_down.png</file>
<file>service_top.png</file>
<file>service_up.png</file>
<file>service_delete.png</file>
<file>service_new.png</file>
<file>service_open.png</file>
<file>service_save.png</file>
</qresource>
<qresource prefix="system" >
<file>system_close.png</file>
<file>system_about.png</file>
<file>system_help_contents.png</file>
<file>system_add.png</file>
<file>system_preview.png</file>
<file>system_mediamanager.png</file>
<file>system_live.png</file>
<file>system_contribute.png</file>
<file>system_servicemanager.png</file>
<file>system_thememanager.png</file>
@ -129,7 +112,5 @@
<file>theme_delete.png</file>
<file>theme_new.png</file>
<file>theme_edit.png</file>
<file>theme_export.png</file>
<file>theme_import.png</file>
</qresource>
</RCC>