diff --git a/requirements.txt b/requirements.txt index 0dbb26a..46a5b23 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,15 +1,13 @@ -################################################################################ -# This requirements file has been automatically generated from `Pipfile` with -# `pipenv-to-requirements` -# -# -# This has been done to maintain backward compatibility with tools and services -# that do not support `Pipfile` yet. -# -# Do NOT edit it directly, use `pipenv install [-d]` to modify `Pipfile` and -# `Pipfile.lock` and then regenerate `requirements*.txt`. -################################################################################ - -flask -pipfile-requirements -pyqt5 +click==7.1.2 +ffmpeg==1.4 +Flask==1.1.2 +itsdangerous==1.1.0 +Jinja2==2.11.2 +MarkupSafe==1.1.1 +packaging==20.7 +pipfile-requirements==0.3.0 +pyparsing==2.4.7 +PyQt5==5.15.2 +PyQt5-sip==12.8.1 +toml==0.10.2 +Werkzeug==1.0.1 diff --git a/src/gui/images/both.png b/src/gui/images/both.png new file mode 100644 index 0000000..d7bbf5d Binary files /dev/null and b/src/gui/images/both.png differ diff --git a/src/gui/images/left.png b/src/gui/images/left.png new file mode 100644 index 0000000..999da70 Binary files /dev/null and b/src/gui/images/left.png differ diff --git a/src/gui/images/none.png b/src/gui/images/none.png new file mode 100644 index 0000000..ad4ba88 Binary files /dev/null and b/src/gui/images/none.png differ diff --git a/src/gui/images/right.png b/src/gui/images/right.png new file mode 100644 index 0000000..c76080a Binary files /dev/null and b/src/gui/images/right.png differ diff --git a/src/gui/ui/mainwindow.ui b/src/gui/ui/mainwindow.ui index 275e1c8..fb77751 100644 --- a/src/gui/ui/mainwindow.ui +++ b/src/gui/ui/mainwindow.ui @@ -6,8 +6,8 @@ 0 0 - 861 - 775 + 864 + 959 @@ -16,15 +16,15 @@ - 700 - 540 + 500 + 900 - + - + - + @@ -34,7 +34,7 @@ - + @@ -44,7 +44,7 @@ - + Dodaj audio 1 @@ -53,9 +53,9 @@ - + - + @@ -65,7 +65,7 @@ - + @@ -75,7 +75,7 @@ - + Dodaj audio 2 @@ -84,69 +84,157 @@ - + Qt::Horizontal - + - + - + + + + 0 + 0 + + - 100 - 100 + 200 + 200 + + + 300 + 300 + + + + QFrame::Box + - TextLabel + Podgląd - rozmówcy aktywni + + + true Qt::AlignCenter + + + - + + + + 0 + 0 + + - 100 - 100 + 200 + 35 + + + + + 300 + 35 - TextLabel - - - Qt::AlignCenter + Rozmówcy - aktywni - + + + Qt::Horizontal + + + QSizePolicy::Minimum + + + + 5 + 5 + + + + + + - + + + + 0 + 0 + + + + + 200 + 200 + + + + + 300 + 300 + + + + QFrame::Box + - Wybierz grafikę dla pierwszego rozmówcy + Podgląd - rozmówcy nieaktywni + + + true + + + Qt::AlignCenter + + + - + + + + 0 + 0 + + - 0 - 0 + 200 + 35 + + + + + 300 + 35 - Wybierz grafikę dla drugiego rozmówcy + Rozmówcy - nieaktywni @@ -155,7 +243,178 @@ - + + + Qt::Vertical + + + QSizePolicy::Minimum + + + + 5 + 5 + + + + + + + + + + + + + 0 + 0 + + + + + 200 + 200 + + + + + 300 + 300 + + + + QFrame::Box + + + Podgląd - 1 rozmówca aktywny + + + Qt::RichText + + + true + + + Qt::AlignCenter + + + + + + + + + + + 0 + 0 + + + + + 200 + 35 + + + + + 300 + 35 + + + + Pierwszy rozmówca - aktywny + + + + + + + + + Qt::Horizontal + + + QSizePolicy::Minimum + + + + 5 + 5 + + + + + + + + + + + 0 + 0 + + + + + 200 + 200 + + + + + 300 + 300 + + + + QFrame::Box + + + Podgląd - 2 rozmówca aktywny + + + true + + + Qt::AlignCenter + + + + + + + + + + + 0 + 0 + + + + + 200 + 35 + + + + + 300 + 35 + + + + Drugi rozmówca - aktywny + + + + + + + + + Qt::Horizontal @@ -226,7 +485,7 @@ - + Qt::Horizontal @@ -235,14 +494,14 @@ - + Podgląd - + Wygeneruj podcast @@ -251,17 +510,18 @@ - h_line2 h_line - h_line3 + h_line_2 h_slider + h_line_3 + v_spacer_1 0 0 - 861 + 864 32 diff --git a/src/python/classes/mainwindow.py b/src/python/classes/mainwindow.py index a3601d7..f837ebb 100644 --- a/src/python/classes/mainwindow.py +++ b/src/python/classes/mainwindow.py @@ -1,19 +1,29 @@ +from PyQt5.QtGui import QPixmap from PyQt5.QtWidgets import * from src.python.ui.mainwindow_ui import Ui_MainWindow + class MainWindow(QMainWindow, Ui_MainWindow): def __init__(self, parent=None): super(MainWindow, self).__init__(parent=parent) self.setupUi(self) self.setup_logic() + self.setup_detail() + def setup_logic(self): - self.push_button_audio1.clicked.connect(lambda: self.open_audio_import(audio_number=1)) - self.push_button_audio2.clicked.connect(lambda: self.open_audio_import(audio_number=2)) + self.button_audio_1.clicked.connect(lambda: self.open_audio_import(audio_number=1)) + self.button_audio_2.clicked.connect(lambda: self.open_audio_import(audio_number=2)) + + self.button_select_avatar_1.clicked.connect(lambda: self.open_image_import(image_number=1)) + self.button_select_avatar_2.clicked.connect(lambda: self.open_image_import(image_number=2)) + self.button_select_avatar_3.clicked.connect(lambda: self.open_image_import(image_number=3)) + self.button_select_avatar_4.clicked.connect(lambda: self.open_image_import(image_number=4)) def setup_detail(self): - pass + self.line_edit_name_1.setDisabled(True) + self.line_edit_name_2.setDisabled(True) def create_custom_dialog(self, title: str, msg: str): dialog = QDialog() @@ -29,25 +39,56 @@ class MainWindow(QMainWindow, Ui_MainWindow): dialog.setLayout(layout) return dialog + def open_image_import(self, image_number: int): + dialog = QFileDialog() + dialog.setOption(dialog.DontUseNativeDialog, True) + dialog.setFileMode(QFileDialog.ExistingFile) + file_formats = "All Files (*);;JPG (*.jpg);;PNG (*.png)" + file, _ = dialog.getOpenFileName(self, "QFileDialog.getOpenFileName()", "", file_formats, options=dialog.options()) + + if not file.lower().endswith('.jpg') and not file.lower().endswith('.png'): + msg = F"[!] Plik {file} nie jest plikiem jpg/png." + dialog = self.create_custom_dialog(title='Error', msg=msg) + dialog.exec_() + + else: + pixmap = QPixmap(file) + if image_number == 1: + self.preview_label_avatar_1.setProperty('path', file) + self.preview_label_avatar_1.setPixmap(pixmap) + + elif image_number == 2: + self.preview_label_avatar_2.setProperty('path', file) + self.preview_label_avatar_2.setPixmap(pixmap) + + elif image_number == 3: + self.preview_label_avatar_3.setProperty('path', file) + self.preview_label_avatar_3.setPixmap(pixmap) + + elif image_number == 4: + self.preview_label_avatar_4.setProperty('path', file) + self.preview_label_avatar_4.setPixmap(pixmap) + + print(F"[*] Zaimportowano garfikę {image_number} z pliku: '{file}'.") + print(F"Rodzielczość {pixmap.width()}x{pixmap.height()}") + def open_audio_import(self, audio_number: int): dialog = QFileDialog() dialog.setOption(dialog.DontUseNativeDialog, True) dialog.setFileMode(QFileDialog.ExistingFile) + file_formats = "All Files (*);;mp3 (*.mp3);;wav (*.wav)" + file, _ = dialog.getOpenFileName(self, "QFileDialog.getOpenFileName()", "", file_formats, options=dialog.options()) - file, _ = dialog.getOpenFileName(self, "QFileDialog.getOpenFileName()", "", "All Files (*);;mp3 (*.mp3);;wav (*.wav)", options=dialog.options()) - - if not file.endswith('.mp3'): - print(F"[!] Plik {file} nie jest plikiem mp3.") - dialog = self.create_custom_dialog(title='Error', msg=F"[!] Plik {file} nie jest plikiem mp3.") + if not file.lower().endswith('.mp3') and not file.lower().endswith('.wav'): + msg = F"[!] Plik {file} nie jest plikiem mp3/wav." + dialog = self.create_custom_dialog(title='Error', msg=msg) dialog.exec_() else: if audio_number == 1: - self.line_edit_audio1.setText(file) + self.line_edit_audio_1.setText(file) elif audio_number == 2: - self.line_edit_audio2.setText(file) + self.line_edit_audio_2.setText(file) print(F"[*] Zaimportowano ścieżkę {audio_number} pliku: '{file}'.") - - diff --git a/src/python/ui/mainwindow_ui.py b/src/python/ui/mainwindow_ui.py index 4479896..a645779 100644 --- a/src/python/ui/mainwindow_ui.py +++ b/src/python/ui/mainwindow_ui.py @@ -14,76 +14,171 @@ from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") - MainWindow.resize(861, 775) + MainWindow.resize(864, 959) self.central_widget = QtWidgets.QWidget(MainWindow) - self.central_widget.setMinimumSize(QtCore.QSize(700, 540)) + self.central_widget.setMinimumSize(QtCore.QSize(500, 900)) self.central_widget.setObjectName("central_widget") - self.vertical_layout = QtWidgets.QVBoxLayout(self.central_widget) - self.vertical_layout.setObjectName("vertical_layout") - self.h_layout_select_audio1 = QtWidgets.QHBoxLayout() - self.h_layout_select_audio1.setObjectName("h_layout_select_audio1") - self.line_edit_audio1 = QtWidgets.QLineEdit(self.central_widget) - self.line_edit_audio1.setText("") - self.line_edit_audio1.setObjectName("line_edit_audio1") - self.h_layout_select_audio1.addWidget(self.line_edit_audio1) - self.line_edit_name1 = QtWidgets.QLineEdit(self.central_widget) - self.line_edit_name1.setText("") - self.line_edit_name1.setObjectName("line_edit_name1") - self.h_layout_select_audio1.addWidget(self.line_edit_name1) - self.push_button_audio1 = QtWidgets.QPushButton(self.central_widget) - self.push_button_audio1.setObjectName("push_button_audio1") - self.h_layout_select_audio1.addWidget(self.push_button_audio1) - self.vertical_layout.addLayout(self.h_layout_select_audio1) - self.h_layout_select_audio2 = QtWidgets.QHBoxLayout() - self.h_layout_select_audio2.setObjectName("h_layout_select_audio2") - self.line_edit_audio2 = QtWidgets.QLineEdit(self.central_widget) - self.line_edit_audio2.setText("") - self.line_edit_audio2.setObjectName("line_edit_audio2") - self.h_layout_select_audio2.addWidget(self.line_edit_audio2) - self.line_edit_name2 = QtWidgets.QLineEdit(self.central_widget) - self.line_edit_name2.setText("") - self.line_edit_name2.setObjectName("line_edit_name2") - self.h_layout_select_audio2.addWidget(self.line_edit_name2) - self.push_button_audio2 = QtWidgets.QPushButton(self.central_widget) - self.push_button_audio2.setObjectName("push_button_audio2") - self.h_layout_select_audio2.addWidget(self.push_button_audio2) - self.vertical_layout.addLayout(self.h_layout_select_audio2) - self.h_line3 = QtWidgets.QFrame(self.central_widget) - self.h_line3.setFrameShape(QtWidgets.QFrame.HLine) - self.h_line3.setFrameShadow(QtWidgets.QFrame.Sunken) - self.h_line3.setObjectName("h_line3") - self.vertical_layout.addWidget(self.h_line3) - self.v_layout_avatars = QtWidgets.QVBoxLayout() - self.v_layout_avatars.setObjectName("v_layout_avatars") - self.h_layout_avatars_preview = QtWidgets.QHBoxLayout() - self.h_layout_avatars_preview.setObjectName("h_layout_avatars_preview") - self.label_avatar_1 = QtWidgets.QLabel(self.central_widget) - self.label_avatar_1.setMinimumSize(QtCore.QSize(100, 100)) - self.label_avatar_1.setAlignment(QtCore.Qt.AlignCenter) - self.label_avatar_1.setObjectName("label_avatar_1") - self.h_layout_avatars_preview.addWidget(self.label_avatar_1) - self.label_avatar_2 = QtWidgets.QLabel(self.central_widget) - self.label_avatar_2.setMinimumSize(QtCore.QSize(100, 100)) - self.label_avatar_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_avatar_2.setObjectName("label_avatar_2") - self.h_layout_avatars_preview.addWidget(self.label_avatar_2) - self.v_layout_avatars.addLayout(self.h_layout_avatars_preview) - self.h_layout_avatars_buttons = QtWidgets.QHBoxLayout() - self.h_layout_avatars_buttons.setObjectName("h_layout_avatars_buttons") - self.push_button_select_avatar1 = QtWidgets.QPushButton(self.central_widget) - self.push_button_select_avatar1.setObjectName("push_button_select_avatar1") - self.h_layout_avatars_buttons.addWidget(self.push_button_select_avatar1) - self.push_button_select_avatar2 = QtWidgets.QPushButton(self.central_widget) - self.push_button_select_avatar2.setMinimumSize(QtCore.QSize(0, 0)) - self.push_button_select_avatar2.setObjectName("push_button_select_avatar2") - self.h_layout_avatars_buttons.addWidget(self.push_button_select_avatar2) - self.v_layout_avatars.addLayout(self.h_layout_avatars_buttons) - self.vertical_layout.addLayout(self.v_layout_avatars) - self.h_line2 = QtWidgets.QFrame(self.central_widget) - self.h_line2.setFrameShape(QtWidgets.QFrame.HLine) - self.h_line2.setFrameShadow(QtWidgets.QFrame.Sunken) - self.h_line2.setObjectName("h_line2") - self.vertical_layout.addWidget(self.h_line2) + self.verticalLayout = QtWidgets.QVBoxLayout(self.central_widget) + self.verticalLayout.setObjectName("verticalLayout") + self.h_layout_select_audio_1 = QtWidgets.QHBoxLayout() + self.h_layout_select_audio_1.setObjectName("h_layout_select_audio_1") + self.line_edit_audio_1 = QtWidgets.QLineEdit(self.central_widget) + self.line_edit_audio_1.setText("") + self.line_edit_audio_1.setObjectName("line_edit_audio_1") + self.h_layout_select_audio_1.addWidget(self.line_edit_audio_1) + self.line_edit_name_1 = QtWidgets.QLineEdit(self.central_widget) + self.line_edit_name_1.setText("") + self.line_edit_name_1.setObjectName("line_edit_name_1") + self.h_layout_select_audio_1.addWidget(self.line_edit_name_1) + self.button_audio_1 = QtWidgets.QPushButton(self.central_widget) + self.button_audio_1.setObjectName("button_audio_1") + self.h_layout_select_audio_1.addWidget(self.button_audio_1) + self.verticalLayout.addLayout(self.h_layout_select_audio_1) + self.h_layout_select_audio_2 = QtWidgets.QHBoxLayout() + self.h_layout_select_audio_2.setObjectName("h_layout_select_audio_2") + self.line_edit_audio_2 = QtWidgets.QLineEdit(self.central_widget) + self.line_edit_audio_2.setText("") + self.line_edit_audio_2.setObjectName("line_edit_audio_2") + self.h_layout_select_audio_2.addWidget(self.line_edit_audio_2) + self.line_edit_name_2 = QtWidgets.QLineEdit(self.central_widget) + self.line_edit_name_2.setText("") + self.line_edit_name_2.setObjectName("line_edit_name_2") + self.h_layout_select_audio_2.addWidget(self.line_edit_name_2) + self.button_audio_2 = QtWidgets.QPushButton(self.central_widget) + self.button_audio_2.setObjectName("button_audio_2") + self.h_layout_select_audio_2.addWidget(self.button_audio_2) + self.verticalLayout.addLayout(self.h_layout_select_audio_2) + self.h_line = QtWidgets.QFrame(self.central_widget) + self.h_line.setFrameShape(QtWidgets.QFrame.HLine) + self.h_line.setFrameShadow(QtWidgets.QFrame.Sunken) + self.h_line.setObjectName("h_line") + self.verticalLayout.addWidget(self.h_line) + self.w_layout_avatars_1_and_2 = QtWidgets.QHBoxLayout() + self.w_layout_avatars_1_and_2.setObjectName("w_layout_avatars_1_and_2") + self.w_layout_avatar_1 = QtWidgets.QVBoxLayout() + self.w_layout_avatar_1.setObjectName("w_layout_avatar_1") + self.preview_label_avatar_1 = QtWidgets.QLabel(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.preview_label_avatar_1.sizePolicy().hasHeightForWidth()) + self.preview_label_avatar_1.setSizePolicy(sizePolicy) + self.preview_label_avatar_1.setMinimumSize(QtCore.QSize(200, 200)) + self.preview_label_avatar_1.setMaximumSize(QtCore.QSize(300, 300)) + self.preview_label_avatar_1.setFrameShape(QtWidgets.QFrame.Box) + self.preview_label_avatar_1.setScaledContents(True) + self.preview_label_avatar_1.setAlignment(QtCore.Qt.AlignCenter) + self.preview_label_avatar_1.setProperty("path", "") + self.preview_label_avatar_1.setObjectName("preview_label_avatar_1") + self.w_layout_avatar_1.addWidget(self.preview_label_avatar_1) + self.button_select_avatar_1 = QtWidgets.QPushButton(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.button_select_avatar_1.sizePolicy().hasHeightForWidth()) + self.button_select_avatar_1.setSizePolicy(sizePolicy) + self.button_select_avatar_1.setMinimumSize(QtCore.QSize(200, 35)) + self.button_select_avatar_1.setMaximumSize(QtCore.QSize(300, 35)) + self.button_select_avatar_1.setObjectName("button_select_avatar_1") + self.w_layout_avatar_1.addWidget(self.button_select_avatar_1) + self.w_layout_avatars_1_and_2.addLayout(self.w_layout_avatar_1) + spacerItem = QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) + self.w_layout_avatars_1_and_2.addItem(spacerItem) + self.w_layout_avatar_2 = QtWidgets.QVBoxLayout() + self.w_layout_avatar_2.setObjectName("w_layout_avatar_2") + self.preview_label_avatar_2 = QtWidgets.QLabel(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.preview_label_avatar_2.sizePolicy().hasHeightForWidth()) + self.preview_label_avatar_2.setSizePolicy(sizePolicy) + self.preview_label_avatar_2.setMinimumSize(QtCore.QSize(200, 200)) + self.preview_label_avatar_2.setMaximumSize(QtCore.QSize(300, 300)) + self.preview_label_avatar_2.setFrameShape(QtWidgets.QFrame.Box) + self.preview_label_avatar_2.setScaledContents(True) + self.preview_label_avatar_2.setAlignment(QtCore.Qt.AlignCenter) + self.preview_label_avatar_2.setProperty("path", "") + self.preview_label_avatar_2.setObjectName("preview_label_avatar_2") + self.w_layout_avatar_2.addWidget(self.preview_label_avatar_2) + self.button_select_avatar_2 = QtWidgets.QPushButton(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.button_select_avatar_2.sizePolicy().hasHeightForWidth()) + self.button_select_avatar_2.setSizePolicy(sizePolicy) + self.button_select_avatar_2.setMinimumSize(QtCore.QSize(200, 35)) + self.button_select_avatar_2.setMaximumSize(QtCore.QSize(300, 35)) + self.button_select_avatar_2.setObjectName("button_select_avatar_2") + self.w_layout_avatar_2.addWidget(self.button_select_avatar_2) + self.w_layout_avatars_1_and_2.addLayout(self.w_layout_avatar_2) + self.verticalLayout.addLayout(self.w_layout_avatars_1_and_2) + spacerItem1 = QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) + self.verticalLayout.addItem(spacerItem1) + self.w_layout_avatars_3_and_4 = QtWidgets.QHBoxLayout() + self.w_layout_avatars_3_and_4.setObjectName("w_layout_avatars_3_and_4") + self.w_layout_avatar_3 = QtWidgets.QVBoxLayout() + self.w_layout_avatar_3.setObjectName("w_layout_avatar_3") + self.preview_label_avatar_3 = QtWidgets.QLabel(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.preview_label_avatar_3.sizePolicy().hasHeightForWidth()) + self.preview_label_avatar_3.setSizePolicy(sizePolicy) + self.preview_label_avatar_3.setMinimumSize(QtCore.QSize(200, 200)) + self.preview_label_avatar_3.setMaximumSize(QtCore.QSize(300, 300)) + self.preview_label_avatar_3.setFrameShape(QtWidgets.QFrame.Box) + self.preview_label_avatar_3.setTextFormat(QtCore.Qt.RichText) + self.preview_label_avatar_3.setScaledContents(True) + self.preview_label_avatar_3.setAlignment(QtCore.Qt.AlignCenter) + self.preview_label_avatar_3.setProperty("path", "") + self.preview_label_avatar_3.setObjectName("preview_label_avatar_3") + self.w_layout_avatar_3.addWidget(self.preview_label_avatar_3) + self.button_select_avatar_3 = QtWidgets.QPushButton(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.button_select_avatar_3.sizePolicy().hasHeightForWidth()) + self.button_select_avatar_3.setSizePolicy(sizePolicy) + self.button_select_avatar_3.setMinimumSize(QtCore.QSize(200, 35)) + self.button_select_avatar_3.setMaximumSize(QtCore.QSize(300, 35)) + self.button_select_avatar_3.setObjectName("button_select_avatar_3") + self.w_layout_avatar_3.addWidget(self.button_select_avatar_3) + self.w_layout_avatars_3_and_4.addLayout(self.w_layout_avatar_3) + spacerItem2 = QtWidgets.QSpacerItem(5, 5, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) + self.w_layout_avatars_3_and_4.addItem(spacerItem2) + self.w_layout_avatar_4 = QtWidgets.QVBoxLayout() + self.w_layout_avatar_4.setObjectName("w_layout_avatar_4") + self.preview_label_avatar_4 = QtWidgets.QLabel(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.preview_label_avatar_4.sizePolicy().hasHeightForWidth()) + self.preview_label_avatar_4.setSizePolicy(sizePolicy) + self.preview_label_avatar_4.setMinimumSize(QtCore.QSize(200, 200)) + self.preview_label_avatar_4.setMaximumSize(QtCore.QSize(300, 300)) + self.preview_label_avatar_4.setFrameShape(QtWidgets.QFrame.Box) + self.preview_label_avatar_4.setScaledContents(True) + self.preview_label_avatar_4.setAlignment(QtCore.Qt.AlignCenter) + self.preview_label_avatar_4.setProperty("path", "") + self.preview_label_avatar_4.setObjectName("preview_label_avatar_4") + self.w_layout_avatar_4.addWidget(self.preview_label_avatar_4) + self.button_select_avatar_4 = QtWidgets.QPushButton(self.central_widget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.button_select_avatar_4.sizePolicy().hasHeightForWidth()) + self.button_select_avatar_4.setSizePolicy(sizePolicy) + self.button_select_avatar_4.setMinimumSize(QtCore.QSize(200, 35)) + self.button_select_avatar_4.setMaximumSize(QtCore.QSize(300, 35)) + self.button_select_avatar_4.setObjectName("button_select_avatar_4") + self.w_layout_avatar_4.addWidget(self.button_select_avatar_4) + self.w_layout_avatars_3_and_4.addLayout(self.w_layout_avatar_4) + self.verticalLayout.addLayout(self.w_layout_avatars_3_and_4) + self.h_line_2 = QtWidgets.QFrame(self.central_widget) + self.h_line_2.setFrameShape(QtWidgets.QFrame.HLine) + self.h_line_2.setFrameShadow(QtWidgets.QFrame.Sunken) + self.h_line_2.setObjectName("h_line_2") + self.verticalLayout.addWidget(self.h_line_2) self.h_layout_threshold = QtWidgets.QHBoxLayout() self.h_layout_threshold.setObjectName("h_layout_threshold") self.label_threshold_description = QtWidgets.QLabel(self.central_widget) @@ -102,32 +197,32 @@ class Ui_MainWindow(object): self.lcd_number_of_threshold.setProperty("intValue", 0) self.lcd_number_of_threshold.setObjectName("lcd_number_of_threshold") self.h_layout_threshold.addWidget(self.lcd_number_of_threshold) - self.vertical_layout.addLayout(self.h_layout_threshold) + self.verticalLayout.addLayout(self.h_layout_threshold) self.h_slider = QtWidgets.QSlider(self.central_widget) self.h_slider.setOrientation(QtCore.Qt.Horizontal) self.h_slider.setObjectName("h_slider") - self.vertical_layout.addWidget(self.h_slider) - self.h_line = QtWidgets.QFrame(self.central_widget) - self.h_line.setFrameShape(QtWidgets.QFrame.HLine) - self.h_line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.h_line.setObjectName("h_line") - self.vertical_layout.addWidget(self.h_line) + self.verticalLayout.addWidget(self.h_slider) + self.h_line_3 = QtWidgets.QFrame(self.central_widget) + self.h_line_3.setFrameShape(QtWidgets.QFrame.HLine) + self.h_line_3.setFrameShadow(QtWidgets.QFrame.Sunken) + self.h_line_3.setObjectName("h_line_3") + self.verticalLayout.addWidget(self.h_line_3) self.h_layout_preview_or_generate = QtWidgets.QHBoxLayout() self.h_layout_preview_or_generate.setObjectName("h_layout_preview_or_generate") - self.push_button_preview = QtWidgets.QPushButton(self.central_widget) - self.push_button_preview.setObjectName("push_button_preview") - self.h_layout_preview_or_generate.addWidget(self.push_button_preview) - self.push_button_generate = QtWidgets.QPushButton(self.central_widget) - self.push_button_generate.setObjectName("push_button_generate") - self.h_layout_preview_or_generate.addWidget(self.push_button_generate) - self.vertical_layout.addLayout(self.h_layout_preview_or_generate) - self.h_line2.raise_() + self.button_preview = QtWidgets.QPushButton(self.central_widget) + self.button_preview.setObjectName("button_preview") + self.h_layout_preview_or_generate.addWidget(self.button_preview) + self.button_generate = QtWidgets.QPushButton(self.central_widget) + self.button_generate.setObjectName("button_generate") + self.h_layout_preview_or_generate.addWidget(self.button_generate) + self.verticalLayout.addLayout(self.h_layout_preview_or_generate) self.h_line.raise_() - self.h_line3.raise_() + self.h_line_2.raise_() self.h_slider.raise_() + self.h_line_3.raise_() MainWindow.setCentralWidget(self.central_widget) self.menu_bar = QtWidgets.QMenuBar(MainWindow) - self.menu_bar.setGeometry(QtCore.QRect(0, 0, 861, 32)) + self.menu_bar.setGeometry(QtCore.QRect(0, 0, 864, 32)) self.menu_bar.setObjectName("menu_bar") self.menu_project = QtWidgets.QMenu(self.menu_bar) self.menu_project.setObjectName("menu_project") @@ -167,19 +262,23 @@ class Ui_MainWindow(object): def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "MagicPodcast")) - self.line_edit_audio1.setPlaceholderText(_translate("MainWindow", "Plik audio pierwszego rozmówcy")) - self.line_edit_name1.setPlaceholderText(_translate("MainWindow", "Imię pierwszego rozmówcy")) - self.push_button_audio1.setText(_translate("MainWindow", "Dodaj audio 1")) - self.line_edit_audio2.setPlaceholderText(_translate("MainWindow", "Plik audio drugiego rozmówcy")) - self.line_edit_name2.setPlaceholderText(_translate("MainWindow", "Imię drugieo rozmówcy")) - self.push_button_audio2.setText(_translate("MainWindow", "Dodaj audio 2")) - self.label_avatar_1.setText(_translate("MainWindow", "TextLabel")) - self.label_avatar_2.setText(_translate("MainWindow", "TextLabel")) - self.push_button_select_avatar1.setText(_translate("MainWindow", "Wybierz grafikę dla pierwszego rozmówcy")) - self.push_button_select_avatar2.setText(_translate("MainWindow", "Wybierz grafikę dla drugiego rozmówcy")) + self.line_edit_audio_1.setPlaceholderText(_translate("MainWindow", "Plik audio pierwszego rozmówcy")) + self.line_edit_name_1.setPlaceholderText(_translate("MainWindow", "Imię pierwszego rozmówcy")) + self.button_audio_1.setText(_translate("MainWindow", "Dodaj audio 1")) + self.line_edit_audio_2.setPlaceholderText(_translate("MainWindow", "Plik audio drugiego rozmówcy")) + self.line_edit_name_2.setPlaceholderText(_translate("MainWindow", "Imię drugieo rozmówcy")) + self.button_audio_2.setText(_translate("MainWindow", "Dodaj audio 2")) + self.preview_label_avatar_1.setText(_translate("MainWindow", "Podgląd - rozmówcy aktywni")) + self.button_select_avatar_1.setText(_translate("MainWindow", "Rozmówcy - aktywni")) + self.preview_label_avatar_2.setText(_translate("MainWindow", "Podgląd - rozmówcy nieaktywni")) + self.button_select_avatar_2.setText(_translate("MainWindow", "Rozmówcy - nieaktywni")) + self.preview_label_avatar_3.setText(_translate("MainWindow", "Podgląd - 1 rozmówca aktywny")) + self.button_select_avatar_3.setText(_translate("MainWindow", "Pierwszy rozmówca - aktywny")) + self.preview_label_avatar_4.setText(_translate("MainWindow", "Podgląd - 2 rozmówca aktywny")) + self.button_select_avatar_4.setText(_translate("MainWindow", "Drugi rozmówca - aktywny")) self.label_threshold_description.setText(_translate("MainWindow", "Poziom wykrywania głosu:")) - self.push_button_preview.setText(_translate("MainWindow", "Podgląd")) - self.push_button_generate.setText(_translate("MainWindow", "Wygeneruj podcast")) + self.button_preview.setText(_translate("MainWindow", "Podgląd")) + self.button_generate.setText(_translate("MainWindow", "Wygeneruj podcast")) self.menu_project.setTitle(_translate("MainWindow", "Projekt")) self.action_new.setText(_translate("MainWindow", "Nowy projekt")) self.action_new.setToolTip(_translate("MainWindow", "Kliknij, aby utwórzyć nowy projekt"))