Re: [Openlp-core] [Merge] lp:~raoul-snyman/openlp/i18n into lp:openlp
Review: Approve Approved. Suggest you do not push this to the web via the nightly build but let us test it internally. -- https://code.launchpad.net/~raoul-snyman/openlp/i18n/+merge/13884 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~raoul-snyman/openlp/i18n into lp:openlp updated
The proposal to merge lp:~raoul-snyman/openlp/i18n into lp:openlp has been updated. Status: Needs review = Merged -- https://code.launchpad.net/~raoul-snyman/openlp/i18n/+merge/13884 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~trb143/openlp/fixes into lp:openlp updated
The proposal to merge lp:~trb143/openlp/fixes into lp:openlp has been updated. Status: Needs review = Superseded -- https://code.launchpad.net/~trb143/openlp/fixes/+merge/13886 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~meths/openlp/trivialfixes into lp:openlp updated
The proposal to merge lp:~meths/openlp/trivialfixes into lp:openlp has been updated. Status: Needs review = Merged -- https://code.launchpad.net/~meths/openlp/trivialfixes/+merge/13882 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~meths/openlp/trivialfixes into lp:openlp updated
The proposal to merge lp:~meths/openlp/trivialfixes into lp:openlp has been updated. Status: Needs review = Merged -- https://code.launchpad.net/~meths/openlp/trivialfixes/+merge/13897 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~trb143/openlp/fixes into lp:openlp
Tim Bentley has proposed merging lp:~trb143/openlp/fixes into lp:openlp. Requested reviews: OpenLP Core (openlp-core) Maintain position on slidecontroller when editing and redisplaying songs -- https://code.launchpad.net/~trb143/openlp/fixes/+merge/13899 Your team OpenLP Core is subscribed to branch lp:openlp. === modified file 'openlp/core/ui/slidecontroller.py' --- openlp/core/ui/slidecontroller.py 2009-10-24 16:40:36 + +++ openlp/core/ui/slidecontroller.py 2009-10-24 18:20:26 + @@ -97,6 +97,8 @@ ] self.timer_id = 0 self.commandItem = None +self.songEdit = False +self.row = 0 self.Panel = QtGui.QWidget(parent.ControlSplitter) # Layout for holding panel self.PanelLayout = QtGui.QVBoxLayout(self.Panel) @@ -180,6 +182,7 @@ self.Toolbar.addToolbarWidget( u'Image SpinBox', self.DelaySpinBox) self.DelaySpinBox.setSuffix(self.trUtf8(u's')) +self.DelaySpinBox.setToolTip(self.trUtf8(u'Delay between slides in seconds')) self.ControllerLayout.addWidget(self.Toolbar) # Screen preview area @@ -289,7 +292,12 @@ Receiver().send_message(u'%s_start' % item.name.lower(), \ [item.shortname, item.service_item_path, item.service_frames[0][u'title']]) -self.displayServiceManagerItems(item, 0) +slideno = 0 +if self.songEdit: +slideno = self.row +self.songEdit = False +self.displayServiceManagerItems(item, slideno) + def addServiceManagerItem(self, item, slideno): @@ -387,6 +395,7 @@ if this is the Live Controller also display on the screen row = self.PreviewListWidget.currentRow() +self.row = 0 if row -1 and row self.PreviewListWidget.rowCount(): if self.commandItem.service_item_type == ServiceType.Command: Receiver().send_message(u'%s_slide'% self.commandItem.name.lower(), [row]) @@ -401,6 +410,7 @@ log.info(u'Slide Rendering took %4s' % (time.time() - before)) if self.isLive: self.parent.mainDisplay.frameView(frame) +self.row = row def grabMainDisplay(self): winid = QtGui.QApplication.desktop().winId() @@ -474,6 +484,7 @@ self.onSlideSelectedNext() def onEditSong(self): +self.songEdit = True Receiver().send_message(u'edit_song') def onGoLive(self): ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~j-corwin/openlp/present into lp:openlp
Jonathan Corwin has proposed merging lp:~j-corwin/openlp/present into lp:openlp. Requested reviews: OpenLP Core (openlp-core) Keep current item in slidecontroller in sync with presentation -- https://code.launchpad.net/~j-corwin/openlp/present/+merge/13901 Your team OpenLP Core is subscribed to branch lp:openlp. === modified file 'openlp/core/lib/eventreceiver.py' --- openlp/core/lib/eventreceiver.py 2009-10-17 05:47:17 + +++ openlp/core/lib/eventreceiver.py 2009-10-24 19:25:20 + @@ -86,6 +86,9 @@ ``config_updated`` Informs components the config has changed + +``slidecontroller_change`` +Informs the slidecontroller that a slide change has occurred global log log = logging.getLogger(u'EventReceiver') === modified file 'openlp/core/ui/slidecontroller.py' --- openlp/core/ui/slidecontroller.py 2009-10-24 16:40:36 + +++ openlp/core/ui/slidecontroller.py 2009-10-24 19:25:20 + @@ -233,6 +233,8 @@ QtCore.SIGNAL(u'slidecontroller_previous'), self.onSlideSelectedPrevious) QtCore.QObject.connect(Receiver.get_receiver(), QtCore.SIGNAL(u'slidecontroller_last'), self.onSlideSelectedLast) +QtCore.QObject.connect(Receiver.get_receiver(), +QtCore.SIGNAL(u'slidecontroller_change'), self.onSlideChange) def receiveSpinDelay(self, value): self.DelaySpinBox.setValue(int(value)) @@ -401,14 +403,36 @@ log.info(u'Slide Rendering took %4s' % (time.time() - before)) if self.isLive: self.parent.mainDisplay.frameView(frame) - + TREE + +=== + +def onSlideChange(self, row): + +The slide has been changed. Update the slidecontroller accordingly + +self.PreviewListWidget.selectRow(row) +QtCore.QTimer.singleShot(0.5, self.grabMainDisplay) + + MERGE-SOURCE def grabMainDisplay(self): -winid = QtGui.QApplication.desktop().winId() rm = self.parent.RenderManager + TREE rect = rm.screen_list[rm.current_display][u'size'] winimg = QtGui.QPixmap.grabWindow(winid, rect.x(), rect.y(), rect.width(), rect.height()) self.SlidePreview.setPixmap(winimg) +=== +if not rm.screen_list[rm.current_display][u'primary']: +winid = QtGui.QApplication.desktop().winId() +rect = rm.screen_list[rm.current_display][u'size'] +winimg = QtGui.QPixmap.grabWindow(winid, rect.x(), rect.y(), rect.width(), rect.height()) +self.SlidePreview.setPixmap(winimg) +else: +label = self.PreviewListWidget.cellWidget(self.PreviewListWidget.currentRow(), 0) +self.SlidePreview.setPixmap(label.pixmap()) + + MERGE-SOURCE def onSlideSelectedNext(self): Go to the next slide. === modified file 'openlp/plugins/presentations/lib/messagelistener.py' --- openlp/plugins/presentations/lib/messagelistener.py 2009-10-20 22:36:08 + +++ openlp/plugins/presentations/lib/messagelistener.py 2009-10-24 19:25:20 + @@ -68,6 +68,7 @@ self.controller.load_presentation(file) self.controller.start_presentation() self.controller.slidenumber = 0 +self.controller.timer.start() def activate(self): if self.controller.is_active(): @@ -82,7 +83,7 @@ self.activate() if message is not None: self.controller.goto_slide(message[0]+1) -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def first(self, message): @@ -90,7 +91,7 @@ self.activate() self.controller.start_presentation() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def last(self, message): @@ -98,7 +99,7 @@ self.activate() self.controller.goto_slide(self.controller.get_slide_count()) -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def next(self, message): @@ -106,7 +107,7 @@ self.activate() self.controller.next_step() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def previous(self, message): @@ -114,7 +115,7 @@ self.activate() self.controller.previous_step() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def shutdown(self, message): @@ -122,6 +123,7 @@ self.controller.close_presentation() self.controller.slidenumber = 0 +self.controller.timer.shutdown() def blank(self): if not self.controller.is_loaded(): === modified file
Re: [Openlp-core] [Merge] lp:~j-corwin/openlp/present into lp:openlp
Review: Needs Fixing You have merge conflicts in the request. You have not documented the new event in the Receiver file. Could the timer be done the same way as I do for images in the SlideController? -- https://code.launchpad.net/~j-corwin/openlp/present/+merge/13901 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
Re: [Openlp-core] [Merge] lp:~j-corwin/openlp/present into lp:openlp
Review: Approve Approved -- https://code.launchpad.net/~j-corwin/openlp/present/+merge/13902 Your team OpenLP Core is subscribed to branch lp:openlp. ___ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp
[Openlp-core] [Merge] lp:~j-corwin/openlp/present into lp:openlp
Jonathan Corwin has proposed merging lp:~j-corwin/openlp/present into lp:openlp. Requested reviews: Tim Bentley (trb143) Approved -- https://code.launchpad.net/~j-corwin/openlp/present/+merge/13902 Your team OpenLP Core is subscribed to branch lp:openlp. === modified file 'openlp/core/lib/eventreceiver.py' --- openlp/core/lib/eventreceiver.py 2009-10-17 05:47:17 + +++ openlp/core/lib/eventreceiver.py 2009-10-24 20:00:26 + @@ -86,6 +86,9 @@ ``config_updated`` Informs components the config has changed + +``slidecontroller_change`` +Informs the slidecontroller that a slide change has occurred global log log = logging.getLogger(u'EventReceiver') === modified file 'openlp/core/ui/slidecontroller.py' --- openlp/core/ui/slidecontroller.py 2009-10-24 16:40:36 + +++ openlp/core/ui/slidecontroller.py 2009-10-24 20:00:26 + @@ -233,6 +233,8 @@ QtCore.SIGNAL(u'slidecontroller_previous'), self.onSlideSelectedPrevious) QtCore.QObject.connect(Receiver.get_receiver(), QtCore.SIGNAL(u'slidecontroller_last'), self.onSlideSelectedLast) +QtCore.QObject.connect(Receiver.get_receiver(), +QtCore.SIGNAL(u'slidecontroller_change'), self.onSlideChange) def receiveSpinDelay(self, value): self.DelaySpinBox.setValue(int(value)) @@ -402,13 +404,24 @@ if self.isLive: self.parent.mainDisplay.frameView(frame) +def onSlideChange(self, row): + +The slide has been changed. Update the slidecontroller accordingly + +self.PreviewListWidget.selectRow(row) +QtCore.QTimer.singleShot(0.5, self.grabMainDisplay) + def grabMainDisplay(self): -winid = QtGui.QApplication.desktop().winId() rm = self.parent.RenderManager -rect = rm.screen_list[rm.current_display][u'size'] -winimg = QtGui.QPixmap.grabWindow(winid, rect.x(), rect.y(), rect.width(), rect.height()) -self.SlidePreview.setPixmap(winimg) - +if not rm.screen_list[rm.current_display][u'primary']: +winid = QtGui.QApplication.desktop().winId() +rect = rm.screen_list[rm.current_display][u'size'] +winimg = QtGui.QPixmap.grabWindow(winid, rect.x(), rect.y(), rect.width(), rect.height()) +self.SlidePreview.setPixmap(winimg) +else: +label = self.PreviewListWidget.cellWidget(self.PreviewListWidget.currentRow(), 0) +self.SlidePreview.setPixmap(label.pixmap()) + def onSlideSelectedNext(self): Go to the next slide. === modified file 'openlp/plugins/presentations/lib/messagelistener.py' --- openlp/plugins/presentations/lib/messagelistener.py 2009-10-20 22:36:08 + +++ openlp/plugins/presentations/lib/messagelistener.py 2009-10-24 20:00:26 + @@ -68,6 +68,7 @@ self.controller.load_presentation(file) self.controller.start_presentation() self.controller.slidenumber = 0 +self.controller.timer.start() def activate(self): if self.controller.is_active(): @@ -82,7 +83,7 @@ self.activate() if message is not None: self.controller.goto_slide(message[0]+1) -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def first(self, message): @@ -90,7 +91,7 @@ self.activate() self.controller.start_presentation() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def last(self, message): @@ -98,7 +99,7 @@ self.activate() self.controller.goto_slide(self.controller.get_slide_count()) -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def next(self, message): @@ -106,7 +107,7 @@ self.activate() self.controller.next_step() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def previous(self, message): @@ -114,7 +115,7 @@ self.activate() self.controller.previous_step() -self.controller.slidenumber = self.controller.get_slide_number() +self.controller.poll_slidenumber() def shutdown(self, message): @@ -122,6 +123,7 @@ self.controller.close_presentation() self.controller.slidenumber = 0 +self.controller.timer.shutdown() def blank(self): if not self.controller.is_loaded(): === modified file 'openlp/plugins/presentations/lib/presentationcontroller.py' --- openlp/plugins/presentations/lib/presentationcontroller.py 2009-10-20 22:36:08 + +++ openlp/plugins/presentations/lib/presentationcontroller.py 2009-10-24