diff --git a/openlp/plugins/songs/forms/editversedialog.py b/openlp/plugins/songs/forms/editversedialog.py index c94940e73..5233b90c6 100644 --- a/openlp/plugins/songs/forms/editversedialog.py +++ b/openlp/plugins/songs/forms/editversedialog.py @@ -67,14 +67,14 @@ class Ui_EditVerseDialog(object): self.transpose_label = QtWidgets.QLabel(edit_verse_dialog) self.transpose_label.setObjectName('transpose_label') self.transpose_layout.addWidget(self.transpose_label) - self.transpose_up = QtWidgets.QPushButton(edit_verse_dialog) - self.transpose_up.setIcon(build_icon(':/services/service_up.png')) - self.transpose_up.setObjectName('transpose_up') - self.transpose_layout.addWidget(self.transpose_up) - self.transpose_down = QtWidgets.QPushButton(edit_verse_dialog) - self.transpose_down.setIcon(build_icon(':/services/service_down.png')) - self.transpose_down.setObjectName('transpose_down') - self.transpose_layout.addWidget(self.transpose_down) + self.transpose_up_button = QtWidgets.QPushButton(edit_verse_dialog) + self.transpose_up_button.setIcon(build_icon(':/services/service_up.png')) + self.transpose_up_button.setObjectName('transpose_up') + self.transpose_layout.addWidget(self.transpose_up_button) + self.transpose_down_button = QtWidgets.QPushButton(edit_verse_dialog) + self.transpose_down_button.setIcon(build_icon(':/services/service_down.png')) + self.transpose_down_button.setObjectName('transpose_down') + self.transpose_layout.addWidget(self.transpose_down_button) self.dialog_layout.addLayout(self.transpose_layout) self.button_box = create_button_box(edit_verse_dialog, 'button_box', ['cancel', 'ok']) self.dialog_layout.addWidget(self.button_box) @@ -96,5 +96,5 @@ class Ui_EditVerseDialog(object): self.insert_button.setToolTip(translate('SongsPlugin.EditVerseForm', 'Split a slide into two by inserting a verse splitter.')) self.transpose_label.setText(translate('SongsPlugin.EditVerseForm', 'Transpose:')) - self.transpose_up.setText(translate('SongsPlugin.EditVerseForm', 'Up')) - self.transpose_down.setText(translate('SongsPlugin.EditVerseForm', 'Down')) + self.transpose_up_button.setText(translate('SongsPlugin.EditVerseForm', 'Up')) + self.transpose_down_button.setText(translate('SongsPlugin.EditVerseForm', 'Down')) diff --git a/openlp/plugins/songs/forms/editverseform.py b/openlp/plugins/songs/forms/editverseform.py index 9ff9ef54b..d6ce2c8f4 100644 --- a/openlp/plugins/songs/forms/editverseform.py +++ b/openlp/plugins/songs/forms/editverseform.py @@ -48,6 +48,8 @@ class EditVerseForm(QtWidgets.QDialog, Ui_EditVerseDialog): self.split_button.clicked.connect(self.on_split_button_clicked) self.verse_text_edit.cursorPositionChanged.connect(self.on_cursor_position_changed) self.verse_type_combo_box.currentIndexChanged.connect(self.on_verse_type_combo_box_changed) + self.transpose_down_button.clicked.connect(self.on_transepose_down_button_clicked) + self.transpose_up_button.clicked.connect(self.on_transepose_up_button_clicked) def insert_verse(self, verse_tag, verse_num=1): """ @@ -95,6 +97,18 @@ class EditVerseForm(QtWidgets.QDialog, Ui_EditVerseDialog): """ self.update_suggested_verse_number() + def on_transepose_up_button_clicked(self): + """ + The transpose up button clicked + """ + print('...') + + def on_transepose_down_button_clicked(self): + """ + The transpose down button clicked + """ + print('...') + def update_suggested_verse_number(self): """ Adjusts the verse number SpinBox in regard to the selected verse type and the cursor's position. diff --git a/openlp/plugins/songs/lib/__init__.py b/openlp/plugins/songs/lib/__init__.py index ce80c4b1e..0de73baa2 100644 --- a/openlp/plugins/songs/lib/__init__.py +++ b/openlp/plugins/songs/lib/__init__.py @@ -521,6 +521,18 @@ def strip_rtf(text, default_encoding=None): return text, default_encoding +def transpose_lyrics(lyric, transepose_value): + """ + Transepose lyrics + + :param lyrcs: The lyrics to be transposed + :param transepose_value: The value to transpose the lyrics with + :return: The transposed lyrics + """ + if '[' not in lyrics: + return lyrics + + def delete_song(song_id, song_plugin): """ Deletes a song from the database. Media files associated to the song are removed prior to the deletion of the song.