diff --git a/components/MetadataWindow.py b/components/MetadataWindow.py new file mode 100644 index 0000000..8f1e064 --- /dev/null +++ b/components/MetadataWindow.py @@ -0,0 +1,47 @@ +from PyQt5.QtWidgets import ( + QDialog, + QFrame, + QVBoxLayout, + QLabel, + QLineEdit, + QPushButton, +) +from PyQt5.QtGui import QFont +from mutagen.id3 import ID3 + + +class MetadataWindow(QDialog): + def __init__(self, songs: ID3 | dict): + super(MetadataWindow, self).__init__() + self.setWindowTitle("Edit metadata") + self.setMinimumSize(400, 400) + layout = QVBoxLayout() + + label = QLabel("Edit metadata") + label.setFont(QFont("Sans", weight=QFont.Bold)) + layout.addWidget(label) + + # Labels and categories and stuff + separator = QFrame() + separator.setFrameShape(QFrame.HLine) + layout.addWidget(separator) + category_label = QLabel("Edit metadata") + category_label.setFont(QFont("Sans", weight=QFont.Bold)) # bold category + category_label.setStyleSheet("text-transform:uppercase;") # uppercase category + + # Editable fields + label = QLabel("Title") + input_field = QLineEdit({songs["TPE1"]}) + layout.addWidget(label) + layout.addWidget(input_field) + + # Save button + save_button = QPushButton("Save") + save_button.clicked.connect(self.save) + layout.addWidget(save_button) + self.setLayout(layout) + + def save(self): + """Save changes made to metadata for each song in dict""" + pass + self.close()