forked from openlp/openlp
Fix up object copy and get to work.
This commit is contained in:
parent
d7e060c503
commit
b0763714c8
@ -24,6 +24,7 @@
|
|||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
import copy
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -36,6 +37,7 @@ class ScreenList(object):
|
|||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.preview = None
|
self.preview = None
|
||||||
self.current = None
|
self.current = None
|
||||||
|
self.override = None
|
||||||
self.screen_list = []
|
self.screen_list = []
|
||||||
self.display_count = 0
|
self.display_count = 0
|
||||||
#actual display number
|
#actual display number
|
||||||
@ -59,13 +61,14 @@ class ScreenList(object):
|
|||||||
"""
|
"""
|
||||||
Set up the current screen dimensions
|
Set up the current screen dimensions
|
||||||
"""
|
"""
|
||||||
|
log.debug(u'set_override_display %s', number, )
|
||||||
if number + 1 > self.display_count:
|
if number + 1 > self.display_count:
|
||||||
self.current = self.screen_list[0]
|
self.current = self.screen_list[0]
|
||||||
self.current_display = 0
|
self.current_display = 0
|
||||||
else:
|
else:
|
||||||
self.current = self.screen_list[number]
|
self.current = self.screen_list[number]
|
||||||
self.override = self.current
|
self.override = copy.deepcopy(self.current)
|
||||||
self.preview = self.current
|
self.preview = copy.deepcopy(self.current)
|
||||||
self.current_display = number
|
self.current_display = number
|
||||||
if self.display_count == 1:
|
if self.display_count == 1:
|
||||||
self.preview = self.screen_list[0]
|
self.preview = self.screen_list[0]
|
||||||
@ -75,12 +78,14 @@ class ScreenList(object):
|
|||||||
replace the current size with the override values
|
replace the current size with the override values
|
||||||
user wants to have their own screen attributes
|
user wants to have their own screen attributes
|
||||||
"""
|
"""
|
||||||
self.current = self.override
|
log.debug(u'set_override_display')
|
||||||
self.preview = self.current
|
self.current = copy.deepcopy(self.override)
|
||||||
|
self.preview = copy.deepcopy(self.current)
|
||||||
|
|
||||||
def reset_current(self):
|
def reset_current_display(self):
|
||||||
"""
|
"""
|
||||||
replace the current values with the correct values
|
replace the current values with the correct values
|
||||||
user wants to use the correct screen attributes
|
user wants to use the correct screen attributes
|
||||||
"""
|
"""
|
||||||
|
log.debug(u'reset_current_display')
|
||||||
self.set_current_display(self.current_display)
|
self.set_current_display(self.current_display)
|
||||||
|
@ -102,6 +102,11 @@ class DisplayPlugin(Plugin):
|
|||||||
self.DisplayMenu.menuAction().setVisible(False)
|
self.DisplayMenu.menuAction().setVisible(False)
|
||||||
|
|
||||||
def toggleDisplayState(self):
|
def toggleDisplayState(self):
|
||||||
|
log.info(u'toggleDisplayState')
|
||||||
|
if self.DisplayStatus.isChecked():
|
||||||
|
self.screens.set_override_display()
|
||||||
|
else:
|
||||||
|
self.screens.reset_current_display()
|
||||||
Receiver.send_message(u'config_screen_changed')
|
Receiver.send_message(u'config_screen_changed')
|
||||||
|
|
||||||
def onDisplayOverride(self):
|
def onDisplayOverride(self):
|
||||||
|
@ -42,30 +42,6 @@ class DisplayForm(QtGui.QDialog, Ui_DisplaysDialog):
|
|||||||
self.item_id = None
|
self.item_id = None
|
||||||
QtGui.QDialog.__init__(self, None)
|
QtGui.QDialog.__init__(self, None)
|
||||||
self.setupUi(self)
|
self.setupUi(self)
|
||||||
# QtCore.QObject.connect(self.DisplayButton,
|
|
||||||
# QtCore.SIGNAL(u'clicked()'),
|
|
||||||
# self.onDisplayClicked)
|
|
||||||
# QtCore.QObject.connect(self.DisplayCloseButton,
|
|
||||||
# QtCore.SIGNAL(u'clicked()'),
|
|
||||||
# self.onDisplayCloseClicked)
|
|
||||||
# QtCore.QObject.connect(self.AlertTextEdit,
|
|
||||||
# QtCore.SIGNAL(u'textChanged(const QString&)'),
|
|
||||||
# self.onTextChanged)
|
|
||||||
# QtCore.QObject.connect(self.NewButton,
|
|
||||||
# QtCore.SIGNAL(u'clicked()'),
|
|
||||||
# self.onNewClick)
|
|
||||||
# QtCore.QObject.connect(self.DeleteButton,
|
|
||||||
# QtCore.SIGNAL(u'clicked()'),
|
|
||||||
# self.onDeleteClick)
|
|
||||||
# QtCore.QObject.connect(self.SaveButton,
|
|
||||||
# QtCore.SIGNAL(u'clicked()'),
|
|
||||||
# self.onSaveClick)
|
|
||||||
# QtCore.QObject.connect(self.AlertListWidget,
|
|
||||||
# QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),
|
|
||||||
# self.onDoubleClick)
|
|
||||||
# QtCore.QObject.connect(self.AlertListWidget,
|
|
||||||
# QtCore.SIGNAL(u'clicked(QModelIndex)'),
|
|
||||||
# self.onSingleClick)
|
|
||||||
|
|
||||||
def initialise(self):
|
def initialise(self):
|
||||||
self.Xpos.setText(unicode(self.screens.current[u'size'].x()))
|
self.Xpos.setText(unicode(self.screens.current[u'size'].x()))
|
||||||
@ -82,82 +58,3 @@ class DisplayForm(QtGui.QDialog, Ui_DisplaysDialog):
|
|||||||
int(self.YposEdit.text()), int(self.WidthEdit.text()),\
|
int(self.YposEdit.text()), int(self.WidthEdit.text()),\
|
||||||
int(self.HeightEdit.text()))
|
int(self.HeightEdit.text()))
|
||||||
return QtGui.QDialog.close(self)
|
return QtGui.QDialog.close(self)
|
||||||
|
|
||||||
def onDisplayClicked(self):
|
|
||||||
if self.triggerAlert(unicode(self.AlertTextEdit.text())):
|
|
||||||
self.loadList()
|
|
||||||
|
|
||||||
def onDisplayCloseClicked(self):
|
|
||||||
if self.triggerAlert(unicode(self.AlertTextEdit.text())):
|
|
||||||
self.close()
|
|
||||||
|
|
||||||
def onDeleteClick(self):
|
|
||||||
item = self.AlertListWidget.currentItem()
|
|
||||||
if item:
|
|
||||||
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
|
||||||
self.parent.manager.delete_alert(item_id)
|
|
||||||
row = self.AlertListWidget.row(item)
|
|
||||||
self.AlertListWidget.takeItem(row)
|
|
||||||
self.AlertTextEdit.setText(u'')
|
|
||||||
self.SaveButton.setEnabled(False)
|
|
||||||
self.DeleteButton.setEnabled(False)
|
|
||||||
self.EditButton.setEnabled(False)
|
|
||||||
|
|
||||||
def onNewClick(self):
|
|
||||||
if len(self.AlertTextEdit.text()) == 0:
|
|
||||||
QtGui.QMessageBox.information(self,
|
|
||||||
self.trUtf8('Item selected to Add'),
|
|
||||||
self.trUtf8('Missing data'))
|
|
||||||
else:
|
|
||||||
alert = AlertItem()
|
|
||||||
alert.text = unicode(self.AlertTextEdit.text())
|
|
||||||
self.manager.save_alert(alert)
|
|
||||||
self.AlertTextEdit.setText(u'')
|
|
||||||
self.loadList()
|
|
||||||
|
|
||||||
def onSaveClick(self):
|
|
||||||
if self.item_id:
|
|
||||||
alert = self.manager.get_alert(self.item_id)
|
|
||||||
alert.text = unicode(self.AlertTextEdit.text())
|
|
||||||
self.manager.save_alert(alert)
|
|
||||||
self.item_id = None
|
|
||||||
self.loadList()
|
|
||||||
else:
|
|
||||||
self.onNewClick()
|
|
||||||
|
|
||||||
def onTextChanged(self):
|
|
||||||
#Data has changed by editing it so potential storage required
|
|
||||||
self.SaveButton.setEnabled(True)
|
|
||||||
|
|
||||||
def onDoubleClick(self):
|
|
||||||
"""
|
|
||||||
List item has been double clicked to display it
|
|
||||||
"""
|
|
||||||
items = self.AlertListWidget.selectedIndexes()
|
|
||||||
for item in items:
|
|
||||||
bitem = self.AlertListWidget.item(item.row())
|
|
||||||
self.triggerAlert(bitem.text())
|
|
||||||
self.AlertTextEdit.setText(bitem.text())
|
|
||||||
self.item_id = (bitem.data(QtCore.Qt.UserRole)).toInt()[0]
|
|
||||||
self.SaveButton.setEnabled(False)
|
|
||||||
self.DeleteButton.setEnabled(True)
|
|
||||||
|
|
||||||
def onSingleClick(self):
|
|
||||||
"""
|
|
||||||
List item has been single clicked to add it to
|
|
||||||
the edit field so it can be changed.
|
|
||||||
"""
|
|
||||||
items = self.AlertListWidget.selectedIndexes()
|
|
||||||
for item in items:
|
|
||||||
bitem = self.AlertListWidget.item(item.row())
|
|
||||||
self.AlertTextEdit.setText(bitem.text())
|
|
||||||
self.item_id = (bitem.data(QtCore.Qt.UserRole)).toInt()[0]
|
|
||||||
self.SaveButton.setEnabled(False)
|
|
||||||
self.DeleteButton.setEnabled(True)
|
|
||||||
|
|
||||||
def triggerAlert(self, text):
|
|
||||||
if text:
|
|
||||||
text = text.replace(u'<>', unicode(self.ParameterEdit.text()))
|
|
||||||
self.parent.alertsmanager.displayAlert(text)
|
|
||||||
return True
|
|
||||||
return False
|
|
||||||
|
Loading…
Reference in New Issue
Block a user