mirror of https://gitlab.com/openlp/openlp.git
More cleanups with the media manager
This commit is contained in:
parent
23f49bfee7
commit
c78ea3c911
|
@ -24,13 +24,13 @@ from PyQt4 import QtCore, QtGui
|
|||
from openlp.core.lib.toolbar import *
|
||||
from openlp.core.lib import translate
|
||||
|
||||
class BaseListWithDnD(QtGui.QListView):
|
||||
class BaseListWithDnD(QtGui.QListWidget):
|
||||
"""
|
||||
Please put a short description of what this class does in here.
|
||||
"""
|
||||
|
||||
def __init__(self,parent = None):
|
||||
QtGui.QListView.__init__(self,parent)
|
||||
QtGui.QListWidget.__init__(self,parent)
|
||||
# this must be set by the class which is inheriting
|
||||
assert(self.PluginName)
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@ this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
|||
Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
"""
|
||||
import types
|
||||
import os
|
||||
|
||||
from PyQt4 import QtCore, QtGui
|
||||
|
||||
|
@ -231,7 +232,7 @@ class MediaManagerItem(QtGui.QWidget):
|
|||
self.loadList(files)
|
||||
dir, filename = os.path.split(unicode(files[0]))
|
||||
self.parent.config.set_last_dir(dir)
|
||||
self.parent.config.set_list(self.ConfigSection, self.ListData.getFileList())
|
||||
#self.parent.config.set_list(self.ConfigSection, self.ListData.getFileList())
|
||||
|
||||
def loadList(self, list):
|
||||
for file in list:
|
||||
|
@ -259,6 +260,7 @@ class MediaManagerItem(QtGui.QWidget):
|
|||
service_item.addIcon(u':/media/media_image.png')
|
||||
self.generateSlideData(service_item)
|
||||
self.parent.preview_controller.addServiceItem(service_item)
|
||||
self.ListView.clearSelection()
|
||||
|
||||
def onLiveClick(self):
|
||||
log.debug(self.PluginTextShort+u' Live Requested')
|
||||
|
@ -266,6 +268,7 @@ class MediaManagerItem(QtGui.QWidget):
|
|||
service_item.addIcon(u':/media/media_image.png')
|
||||
self.generateSlideData(service_item)
|
||||
self.parent.live_controller.addServiceItem(service_item)
|
||||
self.ListView.clearSelection()
|
||||
|
||||
def onAddClick(self):
|
||||
log.debug(self.PluginTextShort+u' Add Requested')
|
||||
|
@ -273,3 +276,4 @@ class MediaManagerItem(QtGui.QWidget):
|
|||
service_item.addIcon(u':/media/media_image.png')
|
||||
self.generateSlideData(service_item)
|
||||
self.parent.service_manager.addServiceItem(service_item)
|
||||
self.ListView.clearSelection()
|
||||
|
|
|
@ -335,24 +335,6 @@ class BibleMediaItem(MediaManagerItem):
|
|||
if self.search_results is not None:
|
||||
self.displayResults(bible)
|
||||
|
||||
# def onLiveClick(self):
|
||||
# service_item = ServiceItem(self.parent)
|
||||
# service_item.addIcon( u':/media/media_verse.png')
|
||||
# self.generateSlideData(service_item)
|
||||
# self.parent.live_controller.addServiceItem(service_item)
|
||||
#
|
||||
# def onAddClick(self):
|
||||
# service_item = ServiceItem(self.parent)
|
||||
# service_item.addIcon(u':/media/media_verse.png')
|
||||
# self.generateSlideData(service_item)
|
||||
# self.parent.service_manager.addServiceItem(service_item)
|
||||
#
|
||||
# def onPreviewClick(self):
|
||||
# service_item = ServiceItem(self.parent)
|
||||
# service_item.addIcon(u':/media/media_verse.png')
|
||||
# self.generateSlideData(service_item)
|
||||
# self.parent.preview_controller.addServiceItem(service_item)
|
||||
|
||||
def generateSlideData(self, service_item):
|
||||
log.debug(u'generating slide data')
|
||||
items = self.BibleListWidget.selectedIndexes()
|
||||
|
|
|
@ -144,7 +144,6 @@ class CustomMediaItem(MediaManagerItem):
|
|||
self.initialise()
|
||||
|
||||
def onCustomEditClick(self):
|
||||
item = self.CustomListWidget.currentItem()
|
||||
item = self.CustomListWidget.currentItem()
|
||||
if item is not None:
|
||||
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
||||
|
|
|
@ -47,4 +47,3 @@ class ImagePlugin(Plugin):
|
|||
|
||||
def initialise(self):
|
||||
log.info(u'Plugin Initialising')
|
||||
|
||||
|
|
|
@ -17,6 +17,4 @@ You should have received a copy of the GNU General Public License along with
|
|||
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
||||
Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
"""
|
||||
|
||||
from listwithpreviews import ListWithPreviews
|
||||
from mediaitem import ImageMediaItem
|
||||
|
|
|
@ -21,9 +21,6 @@ import logging
|
|||
import os
|
||||
|
||||
from PyQt4 import QtCore, QtGui
|
||||
|
||||
# from openlp.plugins.images.lib import ListWithPreviews
|
||||
from listwithpreviews import ListWithPreviews
|
||||
from openlp.core.lib import MediaManagerItem, ServiceItem, translate, BaseListWithDnD
|
||||
|
||||
# We have to explicitly create separate classes for each plugin
|
||||
|
@ -57,17 +54,24 @@ class ImageMediaItem(MediaManagerItem):
|
|||
MediaManagerItem.__init__(self, parent, icon, title)
|
||||
|
||||
def initialise(self):
|
||||
self.ListData = ListWithPreviews()
|
||||
self.ListView.setModel(self.ListData)
|
||||
|
||||
self.ListView.setSelectionMode(QtGui.QAbstractItemView.ExtendedSelection)
|
||||
self.ListView.setIconSize(QtCore.QSize(88,50))
|
||||
self.loadList(self.parent.config.load_list(self.ConfigSection))
|
||||
|
||||
def loadList(self, list):
|
||||
for file in list:
|
||||
(path, filename) = os.path.split(unicode(file))
|
||||
item_name = QtGui.QListWidgetItem(filename)
|
||||
item_name.setIcon(QtGui.QIcon(file))
|
||||
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(file))
|
||||
self.ListView.addItem(item_name)
|
||||
|
||||
def generateSlideData(self, service_item):
|
||||
indexes = self.ListView.selectedIndexes()
|
||||
items = self.ListView.selectedIndexes()
|
||||
service_item.title = u'Image(s)'
|
||||
for index in indexes:
|
||||
filename = self.ListData.getFilename(index)
|
||||
for item in items:
|
||||
bitem = self.ListView.item(item.row())
|
||||
filename = unicode((bitem.data(QtCore.Qt.UserRole)).toString())
|
||||
frame = QtGui.QImage(unicode(filename))
|
||||
(path, name) = os.path.split(filename)
|
||||
service_item.add_from_image(path, name, frame)
|
||||
|
||||
|
|
|
@ -83,8 +83,18 @@ class PresentationMediaItem(MediaManagerItem):
|
|||
# self.DisplayTypeComboBox.addItem(u'Powerpoint')
|
||||
# self.DisplayTypeComboBox.addItem(u'Keynote')
|
||||
|
||||
def loadList(self, list):
|
||||
for file in list:
|
||||
(path, filename) = os.path.split(unicode(file))
|
||||
item_name = QtGui.QListWidgetItem(filename)
|
||||
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(file))
|
||||
self.ListView.addItem(item_name)
|
||||
|
||||
def getFileList(self):
|
||||
filelist = [item[0] for item in self.PresentationsListView];
|
||||
count = 0
|
||||
while count < len(self.ListView):
|
||||
filelist = [set.ListView.item(count).text()]
|
||||
count += 1
|
||||
return filelist
|
||||
|
||||
def loadPresentationList(self, list):
|
||||
|
|
Loading…
Reference in New Issue