Skip to content

Commit ba2f8e5

Browse files
committed
✨ 添加清除全部按钮及功能实现
1 parent 1120263 commit ba2f8e5

File tree

4 files changed

+99
-1
lines changed

4 files changed

+99
-1
lines changed

src/SimpleCutMainFrame.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
from src.model import VideoSequenceModel, VideoModel
1818

19-
VERSION = "0.3.2"
19+
VERSION = "0.3.3"
2020

2121

2222
class FileDropTarget(wx.FileDropTarget):
@@ -281,6 +281,11 @@ def append_files(self, filename, path):
281281
item_no = self.list_ctrl.GetItemCount()
282282
self.add_files(item_no, filename, path)
283283

284+
def ClearAllBtnClick(self, event):
285+
self.video_sequence.clear_all()
286+
logging.debug(f"clear all video: {self.video_sequence.video_list}")
287+
self.update_sequence_model()
288+
284289
def OnStartTimeCtrlText(self, event):
285290
"""修改开始时间输入框的时候修改itemlist的start_time"""
286291
index = self.first_selected_index
@@ -312,9 +317,11 @@ def list_ctrl_on_selected(self, event):
312317
Selected Item no: {self.video_sequence[index]}")
313318

314319
def update_video_model_item(self, no):
320+
"""重载物品"""
315321
self.load_video_model_item(self.video_sequence[no], no)
316322

317323
def update_sequence_model(self):
324+
"""重载序列"""
318325
self.load_sequence_model(self.video_sequence)
319326

320327
def load_video_model_item(self, load_item: VideoModel, list_ctrl_index: int):
@@ -338,7 +345,13 @@ def load_sequence_model(self, sequence: VideoSequenceModel):
338345
把物品列表上的所有物品载入到用户界面的控件上
339346
:return:
340347
"""
348+
# 清除控件
349+
self.list_ctrl.DeleteAllItems()
350+
351+
# 重新载入
341352
for index, item in enumerate(sequence.video_list):
353+
logging.debug(f"load item: {index},{item}")
354+
self.list_ctrl.InsertItem(index, index)
342355
self.load_video_model_item(item, index)
343356

344357
def on_export_done(self, msg: ExportMessage):

src/SimpleCutPy.fbp

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -845,6 +845,81 @@
845845
<event name="OnButtonClick">MovDownBtnOnClick</event>
846846
</object>
847847
</object>
848+
<object class="sizeritem" expanded="true">
849+
<property name="border">5</property>
850+
<property name="flag">wxALL</property>
851+
<property name="proportion">0</property>
852+
<object class="wxButton" expanded="true">
853+
<property name="BottomDockable">1</property>
854+
<property name="LeftDockable">1</property>
855+
<property name="RightDockable">1</property>
856+
<property name="TopDockable">1</property>
857+
<property name="aui_layer"></property>
858+
<property name="aui_name"></property>
859+
<property name="aui_position"></property>
860+
<property name="aui_row"></property>
861+
<property name="auth_needed">0</property>
862+
<property name="best_size"></property>
863+
<property name="bg"></property>
864+
<property name="bitmap"></property>
865+
<property name="caption"></property>
866+
<property name="caption_visible">1</property>
867+
<property name="center_pane">0</property>
868+
<property name="close_button">1</property>
869+
<property name="context_help"></property>
870+
<property name="context_menu">1</property>
871+
<property name="current"></property>
872+
<property name="default">0</property>
873+
<property name="default_pane">0</property>
874+
<property name="disabled"></property>
875+
<property name="dock">Dock</property>
876+
<property name="dock_fixed">0</property>
877+
<property name="docking">Left</property>
878+
<property name="drag_accept_files">0</property>
879+
<property name="enabled">1</property>
880+
<property name="fg"></property>
881+
<property name="floatable">1</property>
882+
<property name="focus"></property>
883+
<property name="font"></property>
884+
<property name="gripper">0</property>
885+
<property name="hidden">0</property>
886+
<property name="id">wxID_ANY</property>
887+
<property name="label">清除全部</property>
888+
<property name="margins"></property>
889+
<property name="markup">0</property>
890+
<property name="max_size"></property>
891+
<property name="maximize_button">0</property>
892+
<property name="maximum_size"></property>
893+
<property name="min_size"></property>
894+
<property name="minimize_button">0</property>
895+
<property name="minimum_size"></property>
896+
<property name="moveable">1</property>
897+
<property name="name">ClearAllBtn</property>
898+
<property name="pane_border">1</property>
899+
<property name="pane_position"></property>
900+
<property name="pane_size"></property>
901+
<property name="permission">protected</property>
902+
<property name="pin_button">1</property>
903+
<property name="pos"></property>
904+
<property name="position"></property>
905+
<property name="pressed"></property>
906+
<property name="resize">Resizable</property>
907+
<property name="show">1</property>
908+
<property name="size"></property>
909+
<property name="style"></property>
910+
<property name="subclass">; ; forward_declare</property>
911+
<property name="toolbar_pane">0</property>
912+
<property name="tooltip"></property>
913+
<property name="validator_data_type"></property>
914+
<property name="validator_style">wxFILTER_NONE</property>
915+
<property name="validator_type">wxDefaultValidator</property>
916+
<property name="validator_variable"></property>
917+
<property name="window_extra_style"></property>
918+
<property name="window_name"></property>
919+
<property name="window_style"></property>
920+
<event name="OnButtonClick">ClearAllBtnClick</event>
921+
</object>
922+
</object>
848923
</object>
849924
</object>
850925
</object>

src/SimpleCutPy.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,9 @@ def __init__( self, parent ):
7878
self.MovDownBtn = wx.Button( self.m_panel2, wx.ID_ANY, u"向下移动", wx.DefaultPosition, wx.DefaultSize, 0 )
7979
bSizer7.Add( self.MovDownBtn, 0, wx.ALL, 5 )
8080

81+
self.ClearAllBtn = wx.Button( self.m_panel2, wx.ID_ANY, u"清除全部", wx.DefaultPosition, wx.DefaultSize, 0 )
82+
bSizer7.Add( self.ClearAllBtn, 0, wx.ALL, 5 )
83+
8184

8285
bSizer4.Add( bSizer7, 1, wx.EXPAND, 5 )
8386

@@ -208,6 +211,7 @@ def __init__( self, parent ):
208211
self.RemoveBtn.Bind( wx.EVT_BUTTON, self.RemoveBtnOnClick )
209212
self.MovUpBtn.Bind( wx.EVT_BUTTON, self.MovUpBtnOnClick )
210213
self.MovDownBtn.Bind( wx.EVT_BUTTON, self.MovDownBtnOnClick )
214+
self.ClearAllBtn.Bind( wx.EVT_BUTTON, self.ClearAllBtnClick )
211215
self.ExportBtn.Bind( wx.EVT_BUTTON, self.ExportBtnOnClick )
212216
self.ProjectWebBtn.Bind( wx.EVT_BUTTON, self.ProjectWebBtnOnClick )
213217

@@ -240,6 +244,9 @@ def MovUpBtnOnClick( self, event ):
240244
def MovDownBtnOnClick( self, event ):
241245
event.Skip()
242246

247+
def ClearAllBtnClick( self, event ):
248+
event.Skip()
249+
243250
def ExportBtnOnClick( self, event ):
244251
event.Skip()
245252

src/model.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,3 +74,6 @@ def append_video(self, video: VideoModel):
7474

7575
def swap_item(self, no1: int, no2: int):
7676
self.video_list[no1], self.video_list[no2] = self.video_list[no2], self.video_list[no1]
77+
78+
def clear_all(self):
79+
self.video_list = []

0 commit comments

Comments
 (0)