Skip to content

Commit eb3e90f

Browse files
author
Dmitry Ershov
committed
Created editing function songs tags.
1 parent bc6d4d3 commit eb3e90f

File tree

2 files changed

+49
-11
lines changed

2 files changed

+49
-11
lines changed

.idea/workspace.xml

+9-10
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

main.py

+40-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,45 @@
55

66
class EditDialog(wx.Dialog):
77
def __init__(self, mp3):
8+
title = f'Редактирование {mp3.tag.title}'
9+
super().__init__(parent=None, title=title)
10+
self.mp3 = mp3
11+
self.main_sizer = wx.BoxSizer(wx.VERTICAL)
12+
13+
self.title = wx.TextCtrl(
14+
self, value=self.mp3.tag.title
15+
)
16+
self.add_widgets('Название', self.title)
17+
18+
self.artist = wx.TextCtrl(self, value=self.mp3.tag.artist)
19+
self.add_widgets('Артист', self.artist)
20+
21+
self.album = wx.TextCtrl(self, value=self.mp3.tag.album)
22+
self.add_widgets('Альбом', self.album)
23+
24+
btn_sizer = wx.BoxSizer()
25+
save_btn = wx.Button(self, label='Сохранить')
26+
save_btn.Bind(wx.EVT_BUTTON, self.on_save)
27+
28+
btn_sizer.Add(save_btn, 0, wx.ALL, 5)
29+
btn_sizer.Add(wx.Button(
30+
self, label='Отменить', id=wx.ID_CANCEL), 0, wx.ALL, 5)
31+
self.main_sizer.Add(btn_sizer, 0, wx.CENTER)
32+
self.SetSizer(self.main_sizer)
33+
34+
def add_widgets(self, label_text, text_ctrl):
35+
row_sizer = wx.BoxSizer(wx.HORIZONTAL)
36+
label = wx.StaticText(self, label=label_text, size=(50, -1))
37+
row_sizer.Add(label, 0, wx.ALL, 5)
38+
row_sizer.Add(text_ctrl, 1, wx.ALL | wx.EXPAND, 5)
39+
self.main_sizer.Add(row_sizer, 0, wx.EXPAND)
40+
41+
def on_save(self, event):
42+
self.mp3.tag.artist = self.artist.GetValue()
43+
self.mp3.tag.album = self.album.GetValue()
44+
self.mp3.tag.title = self.title.GetValue()
45+
self.mp3.tag.save()
46+
self.Close()
847

948

1049
class Mp3Panel(wx.Panel):
@@ -42,8 +81,8 @@ def update_mp3_listing(self, folder_path):
4281
self.list_ctrl.InsertColumn(0, 'Название', width=200)
4382
self.list_ctrl.InsertColumn(1, 'Артист', width=140)
4483
self.list_ctrl.InsertColumn(2, 'Альбом', width=140)
84+
mp3s = glob.glob(folder_path + '/*.mp3')
4585

46-
mp3s = glob.glob(f'{folder_path}/*.mp3)')
4786
mp3_objects = []
4887
for index, mp3 in enumerate(mp3s):
4988
mp3_object = eyed3.load(mp3)

0 commit comments

Comments
 (0)