Commit Graph

501 Commits

Author SHA1 Message Date
Keith Edmunds
52a4de0c01 Implement preview button
Fixes #172
2023-06-11 17:49:29 +01:00
Keith Edmunds
c0ae9eba9f Don't scroll display after drop
With no code, display scroll back to where the source rows came from.
With code we had, we ensured dropped rows were visible, but display
would still scroll.
Now freeze display as it is when rows are dropped.
2023-05-01 18:04:03 +01:00
Keith Edmunds
e3ad7787af Make header row span columns after drag and drop 2023-05-01 17:27:30 +01:00
Keith Edmunds
f07ff56987 Intercept ESC on cell edit 2023-04-18 21:33:48 +01:00
Keith Edmunds
8a6812e405 Greatly simplifed drag and drop code 2023-04-13 17:29:58 +01:00
Keith Edmunds
32cc0468e8 Disable drag and drop (todo: fix in qt6) 2023-04-13 14:45:29 +01:00
Keith Edmunds
a8ffa6f231 Upgrade PyQt5 → PyQt6 2023-04-12 21:55:13 +01:00
Keith Edmunds
69d379ab10 Disconnect _cell_changed signal on edit abort 2023-04-10 13:58:32 +01:00
Keith Edmunds
ebc087f1f6 Improve typing 2023-04-10 13:58:07 +01:00
Keith Edmunds
3d32ce2f34 WIP to improve info tabs 2023-04-10 10:50:09 +01:00
Keith Edmunds
fe338aaf4a Tidy up scene change code 2023-04-09 17:45:48 +01:00
Keith Edmunds
a923f32070 First pass of OBS scene change 2023-04-09 16:02:44 +01:00
Keith Edmunds
c5c5c28583 Change PlaylistRows.row_number to plr_rownnum 2023-04-02 17:23:49 +01:00
Keith Edmunds
f9f1e5f237 Change PlaylistRows.row_number to row_no 2023-04-01 19:59:25 +01:00
Keith Edmunds
69bfd3cff9 Default to moving existing track when adding a new track 2023-03-25 17:20:10 +00:00
Keith Edmunds
25287c8f7f Tidy playlist header colours
Simplify and also ensure that playlist tab is uncoloured after
unsetting next track.
2023-03-25 15:52:17 +00:00
Keith Edmunds
4a03596bd3 Ensure current track visible toggling hide/show played 2023-03-25 10:30:18 +00:00
Keith Edmunds
9c66333729 musicmuster refactor: signal next tracks, tab colouring 2023-03-19 15:21:02 +00:00
Keith Edmunds
728feb1c8e Allow multiple selected rows to be marked unplayed 2023-03-19 13:47:49 +00:00
Keith Edmunds
c9c47c3133 Retain current/next colours when pasting tracks 2023-03-17 23:07:14 +00:00
Keith Edmunds
0b2e7c7e31 Update last played time when track ends 2023-03-17 22:50:54 +00:00
Keith Edmunds
eafacc3b21 Retain current/next colouring after editing notes 2023-03-17 18:28:32 +00:00
Keith Edmunds
a29bf3fce5 Fix first track staying green after end 2023-03-17 16:27:01 +00:00
Keith Edmunds
b30f2d5cc3 Fix play with mplayer 2023-03-16 15:20:31 +00:00
Keith Edmunds
6bf9330b62 Fix 'called set_header on track row'
Ensure playlist is saved before updating track start/end times.
2023-03-15 18:28:37 +00:00
Keith Edmunds
f3631b2c2b Synchronise row start/end updates
Row start/end time updates were being run in a different SQLAlchemy
session to the database updates and thus there was a lack of
synchronisation.

Now they run in the same session.
2023-03-14 22:59:39 +00:00
Keith Edmunds
3197c844a5 Print stack trace to stdout on internal error 2023-03-13 09:12:19 +00:00
Keith Edmunds
e22351386f Fix bug editing header rows 2023-03-13 09:11:47 +00:00
Keith Edmunds
ee422aacb3 Update track times after drag and drop 2023-03-12 18:48:36 +00:00
Keith Edmunds
380806d27a Change row to row_number 2023-03-12 18:43:23 +00:00
Keith Edmunds
c6840d2356 Improve copying track path 2023-03-12 18:41:44 +00:00
Keith Edmunds
453e42172b Use Audacity and mplayer without session 2023-03-12 18:41:13 +00:00
Keith Edmunds
ee64a4a035 Remove unused function _get_row_start_time 2023-03-12 17:08:13 +00:00
Keith Edmunds
9c67b9bd8e Change row to row_number 2023-03-12 17:03:47 +00:00
Keith Edmunds
3cc90f8c11 Remove unneeded function _get_current_track_start_time 2023-03-12 16:53:13 +00:00
Keith Edmunds
71daccab12 Remove unneeded function _get_current_track_end_time 2023-03-12 16:51:02 +00:00
Keith Edmunds
ca86f59736 Rename function file_is_readable to file_is_unreadable 2023-03-12 16:47:45 +00:00
Keith Edmunds
d609656ae3 Change row to row_number 2023-03-12 16:44:12 +00:00
Keith Edmunds
f96e02d9ae Remove unused function _deferred_save() 2023-03-12 16:43:51 +00:00
Keith Edmunds
6c53d59f1a Fix adding/removing track from row 2023-03-12 16:23:56 +00:00
Keith Edmunds
b9fd7a5d21 Clean up editing 2023-03-12 16:23:36 +00:00
Keith Edmunds
669125794f Change row to row_number 2023-03-12 16:22:59 +00:00
Keith Edmunds
b126a70139 Fix and improve hide played tracks
Last played track is now not hidden until
Config.HIDE_AFTER_PLAYING_OFFSET milliseconds after next track starts
playing.
2023-03-12 13:00:46 +00:00
Keith Edmunds
f30fff5356 Fix development bug that truncated playlists
Saving of playlist and updating note colours more consistent.
2023-03-12 10:33:10 +00:00
Keith Edmunds
80e698680b Clean up header and note updates
• rationalise number of functions
• make colour handling cleaner
• optimise when playlist is saved
2023-03-12 09:53:11 +00:00
Keith Edmunds
39ec7f470b Fixup section duration times 2023-03-11 16:05:10 +00:00
Keith Edmunds
ad071bb74b Consistently use clear_next() to clear next track 2023-03-10 23:10:54 +00:00
Keith Edmunds
ee7436221e Playlist save / session work 2023-03-09 08:35:16 +00:00
Keith Edmunds
889d32cc90 Post editing fixes
Fix row or cell colour
Fix row height after expanding when editing starts
2023-03-08 20:09:15 +00:00
Keith Edmunds
ae1835a421 Use signals to updates note text after editing
Hypothesis: this stops some kind of database race condition or
similar.
2023-03-08 20:08:17 +00:00
Keith Edmunds
dda74782b6 Keep section headers bold 2023-03-07 18:02:17 +00:00
Keith Edmunds
4af1d4906c Never hide current or next row 2023-03-07 18:02:00 +00:00
Keith Edmunds
ea5e4a2215 Fix merge error 2023-03-05 20:23:43 +00:00
Keith Edmunds
e80a74cc40 Fixup track start/end times 2023-03-05 20:21:27 +00:00
Keith Edmunds
d92612c69a Tidy up when track start/stop times are recalculated 2023-03-05 20:19:40 +00:00
Keith Edmunds
b1841b02ea WIP playlists refactor: set header colour when removing track 2023-03-05 20:05:04 +00:00
Keith Edmunds
c5f89dbcf4 WIP playlists refactor: unify note and tab colour settings 2023-03-05 19:44:13 +00:00
Keith Edmunds
0978e93ee7 WIP: playlists refactor: fixup context menu 2023-03-05 14:36:01 +00:00
Keith Edmunds
15f4bec197 WIP: playlists refactoring 2023-03-05 14:31:30 +00:00
Keith Edmunds
530ee60015 WIP: playlists.py refactoring 2023-03-04 23:02:21 +00:00
Keith Edmunds
4a6ce3b4ee WIP: playists refactor: fix rescan 2023-03-01 20:27:17 +00:00
Keith Edmunds
9d3743ceb5 Update section timer and end of section note 2023-02-28 21:27:48 +00:00
Keith Edmunds
bc06722633 Launch Wikipedia on select vis singleShot timer 2023-02-28 21:27:20 +00:00
Keith Edmunds
aa3388f732 WIP: playlist refactor: section timings 2023-02-28 20:46:22 +00:00
Keith Edmunds
634637f42c WIP: playlist refacton: start/end times
Clean up function. If next track is above current track, flow start
times around current track rather than resetting them at current
track.
2023-02-26 22:04:39 +00:00
Keith Edmunds
e23f8afed2 WIP: playlist refactor fix default header colour 2023-02-26 21:31:20 +00:00
Keith Edmunds
45a564729b WIP playlists refactor including fixing saving playlist 2023-02-25 19:45:56 +00:00
Keith Edmunds
cc2f3733b2 Start using signals to call for saving playlist 2023-02-25 19:44:02 +00:00
Keith Edmunds
fed4e9fbde Open Wikipedia page on single row selection 2023-02-24 20:32:27 +00:00
Keith Edmunds
5902428c23 Clear selection after edit 2023-02-24 20:25:19 +00:00
Keith Edmunds
58ec47517d WIP: playlists.py refactor 2023-02-24 19:31:38 +00:00
Keith Edmunds
2cd49b5898 WIP: playlists.py refactor
Tracks are bold on import
2023-02-19 21:22:04 +00:00
Keith Edmunds
6de95573ff WIP: playlists.py refactor
Hide/show played tracks
2023-02-19 20:36:08 +00:00
Keith Edmunds
19377a8e1c WIP: playlists.py refactor
Reset background colour of current track when track ended.
2023-02-19 20:26:55 +00:00
Keith Edmunds
0794f061ee WIP: playlists.py refactor 2023-02-19 20:09:00 +00:00
Keith Edmunds
a41aea2d36 Fix potential bug in get_selected_playlistrows()
It was possible for the returned list to have embedded None objects
2023-02-18 10:43:38 +00:00
Keith Edmunds
2a6dfc8b63 Fix can't add track to header row 2023-02-10 08:43:04 +00:00
Keith Edmunds
424709ca74 Fix startup issues after refactor 2023-02-10 08:42:41 +00:00
Keith Edmunds
4b104798b8 Add unmark as next, played to context menu
Fixes #166
Fixex #138
2023-02-08 20:52:42 +00:00
Keith Edmunds
a15f181008 Fix start time calc that stopped app starting 2023-02-08 16:10:31 +00:00
Keith Edmunds
0c38fc2ef4 Fix all bar one typing errors 2023-02-07 21:58:08 +00:00
Keith Edmunds
4a6d6fa208 Log errors importing tracks 2023-02-05 22:48:32 +00:00
Keith Edmunds
4f3fb6c1ae No mypy errors; four FIXMEs 2023-02-05 21:04:10 +00:00
Keith Edmunds
e4ef0b34c8 Improve type hints, rework code
Fixes #147
2023-02-05 17:38:56 +00:00
Keith Edmunds
9e6c700644 More typing fixes 2023-02-04 15:01:39 +00:00
Keith Edmunds
5d50ebf3aa Typing and other cleanups 2023-01-31 21:14:02 +00:00
Keith Edmunds
73bb4b3a7f WIP: typing 2023-01-30 19:29:33 +00:00
Keith Edmunds
dfb9326d5e Fix display corruption adding a track
Fixes #137
2023-01-29 18:31:50 +00:00
Keith Edmunds
e77c05b908 Remove unused functions 2023-01-20 22:01:05 +00:00
Keith Edmunds
ffa3015ac3 Fix move existing track when adding duplicate with note
Fixes #161
2023-01-20 22:00:47 +00:00
Keith Edmunds
f8dcc69a55 Python typing fixups 2023-01-20 21:59:40 +00:00
Keith Edmunds
0507f495ad Fix adding only a note from track dialog
Fixes #160
2023-01-16 17:20:18 +00:00
Keith Edmunds
d87ff80bef Fix next track not selected when playing top row 2023-01-07 12:26:38 +00:00
Keith Edmunds
7584ad2090 Make row number a playlist-only concept
Solves problem of rows being moved in playlist and musicmuster not
knowing which row the current/next track is (but it doesn't need to
know; it only needs to know the PlaylistRows id).
2023-01-07 11:50:05 +00:00
Keith Edmunds
ed4a106bec Fix not recording playlist rows as played 2023-01-01 18:56:02 +00:00
Keith Edmunds
90424e917e Fix not recording playlist rows as played 2023-01-01 18:51:56 +00:00
Keith Edmunds
74028fadf7 Set colours of tabs correctly. 2023-01-01 14:25:06 +00:00
Keith Edmunds
4edcab1542 Skip over unreadable tracks when selecting next track. 2023-01-01 11:08:37 +00:00
Keith Edmunds
5e75659c48 Don't use row metadat for next/current track
Get them from musicmuster.
2023-01-01 10:49:54 +00:00
Keith Edmunds
daf8069de2 Tidy up moving to PlaylistTrack object 2023-01-01 09:19:34 +00:00
Keith Edmunds
b476db188f Implement PlaylistTrack object 2022-12-30 21:43:47 +00:00
Keith Edmunds
683e76f9a0 Update database correctly when tabs are closed 2022-12-24 20:24:27 +00:00
Keith Edmunds
94b2f473e9 Cleanups from running vulture 2022-12-24 09:36:51 +00:00
Keith Edmunds
f2a27366d3 Fix deleting rows from playlist 2022-12-23 21:27:06 +00:00
Keith Edmunds
46f2b662f3 Copy/paste, insert track/header works 2022-12-23 20:52:18 +00:00
Keith Edmunds
647e7d478a Move rows works. 2022-12-23 20:37:21 +00:00
Keith Edmunds
444c3e4fb4 Remove rows from playlist works and db updates 2022-12-23 20:15:07 +00:00
Keith Edmunds
35b101a538 Tidy up saving database 2022-12-23 17:23:43 +00:00
Keith Edmunds
be4f19757c Improve performance of save_playlist 2022-12-22 17:41:46 +00:00
Keith Edmunds
0d4b306fc4 Don't scroll on drag and drop
Fixes #152
2022-12-19 18:14:59 +00:00
Keith Edmunds
57f038c704 Implement row mark and paste
Fixed #132
2022-12-19 15:28:03 +00:00
Keith Edmunds
bd9c8a84b9 Implement stackprinter 2022-12-18 22:20:55 +00:00
Keith Edmunds
693e8f195d Notify when issue #147 occurs 2022-12-18 21:03:45 +00:00
Keith Edmunds
30bd23c088 Workaround for issue #147 2022-11-24 09:17:40 +00:00
Keith Edmunds
6339326947 Don't scroll to top without a row 2022-11-11 21:06:15 +00:00
Keith Edmunds
9af20c29d3 Fix scroll to current/next with hidden rows 2022-11-06 16:18:51 +00:00
Keith Edmunds
ef9b1e7ce5 Remove redundant debug logging 2022-10-23 16:29:38 +01:00
Keith Edmunds
5b0d604edf Remove extraneous message 2022-10-22 08:55:14 +01:00
Keith Edmunds
ef17b359e2 Put KAE in debug logging strings 2022-10-15 17:57:44 +01:00
Keith Edmunds
69afb2986e Highlight leading gap when adding track to header
Fixes #142
2022-10-15 10:21:23 +01:00
Keith Edmunds
39f5374b32 Disable set next track during editing
Fixes #130
2022-10-14 22:15:40 +01:00
Keith Edmunds
bf67866f8a debug markers to investigate #137 2022-10-14 15:50:13 +01:00
Keith Edmunds
5783da051e Add debug statements for scroll to next/current 2022-10-14 09:05:12 +01:00
Keith Edmunds
2d62fb993f Facility to add notes when inserting tracks 2022-10-02 14:05:25 +01:00
Keith Edmunds
11090b57ad Preserve note when adding track to header 2022-10-01 16:47:03 +01:00
Keith Edmunds
00d3add0d3 Implement templates 2022-10-01 14:14:26 +01:00
Keith Edmunds
9f32abc2ea Fix removing track from row (ie, make it a header) 2022-10-01 09:04:37 +01:00
Keith Edmunds
3609a224f1 Fix adding track to header row 2022-10-01 08:57:43 +01:00
Keith Edmunds
5d3d373abc Update headers when editing current/next track
Fixes #126
2022-09-30 22:26:49 +01:00
Keith Edmunds
1ce009ee73 Playlist deals with invalid track_id 2022-09-30 18:53:04 +01:00
Keith Edmunds
5d1078dea0 Debug output to try to track down why titles are changing 2022-09-30 18:26:13 +01:00
Keith Edmunds
e1ceb5e8e3 Update bitrate displayed if db differs from display 2022-09-30 18:25:51 +01:00
Keith Edmunds
912ed0b1eb Use symbols for columns 2022-09-30 18:24:50 +01:00
Keith Edmunds
d670f397fc Stop notes column going to zero width on track import 2022-09-30 15:55:52 +01:00
Keith Edmunds
7829186d55 Keep row selected after adding section header 2022-09-30 15:33:33 +01:00
Keith Edmunds
0c37eccb76 Adjust row height to edited striped text 2022-09-30 15:21:13 +01:00
Keith Edmunds
84d746bd2f Use symbolic names for columns 2022-09-23 21:09:14 +01:00
Keith Edmunds
b42ffcec69 Fix notes not wrapping on startup
Ensure notes column stretches to fill width and that it wraps.
2022-09-19 19:26:59 +01:00
Keith Edmunds
dff7e2323d Set next track start time correctly when current track on another tab 2022-09-12 18:24:15 +01:00
Keith Edmunds
0194790605 Clean up importing and track rescan 2022-09-12 18:23:30 +01:00
Keith Edmunds
2f5d00fa3a Scroll to current/next on header click 2022-09-07 20:07:02 +01:00
Keith Edmunds
af11f90808 Only autoscroll when track played 2022-09-07 19:47:51 +01:00
Keith Edmunds
27eba987ca No default note background for track notes 2022-09-07 19:00:48 +01:00
Keith Edmunds
7e02bd60e5 Make 'show played' work again 2022-09-05 18:51:12 +01:00
Keith Edmunds
8044f95556 Remove current track higlighting at end of track 2022-09-05 18:42:30 +01:00
Keith Edmunds
56b99630c1 Increase row height on edit to make editing easier 2022-09-04 21:41:46 +01:00
Keith Edmunds
cdb9e1fb59 Enforce minimum row height; adjust height more intelligently 2022-09-04 21:25:18 +01:00
Keith Edmunds
6ede0ab7ea Pull playlist changes from v2_editor
- minimum row height
- intelligent row resizing
2022-09-04 20:55:40 +01:00
Keith Edmunds
958edb0140 Expand last column; use ^Return to close editor 2022-09-04 19:20:54 +01:00
Keith Edmunds
f2f99b5f79 Don't clear selection after adding as track 2022-08-24 17:51:01 +01:00
Keith Edmunds
f3ccab513b Put section headers in row 2
Bug in Qt means automatically setting row height doesn't take into
account row spans, so putting headers in narrow column makes for tall
rows.
2022-08-24 17:33:22 +01:00
Keith Edmunds
9f6eb2554a close edit box with return 2022-08-24 14:35:01 +01:00
Keith Edmunds
140722217b Add bitrates to database and display 2022-08-22 17:30:30 +01:00
Keith Edmunds
16b9ac19f0 Reset colours for each track on update_display 2022-08-21 17:00:42 +01:00
Keith Edmunds
1bae79265d Only adjust height of track rows with notes, not header rows 2022-08-17 22:18:25 +01:00
Keith Edmunds
c9cdbe2eb2 Remove commented code 2022-08-17 21:30:04 +01:00
Keith Edmunds
dfcdc0b9e8 Only resize track rows that have notes 2022-08-17 21:28:32 +01:00
Keith Edmunds
957450c0f6 Use QPlainTextEdit to edit cells 2022-08-17 21:28:15 +01:00
Keith Edmunds
d267b32c0d WIP trying things 2022-08-17 13:30:45 +01:00
Keith Edmunds
7b2b7fada5 WIP: replace notes TableWidgetItem with TextEdit 2022-08-17 12:52:09 +01:00
Keith Edmunds
4fad05db6b QTextEdit WIP 2022-08-16 12:30:03 +01:00
Keith Edmunds
c4be0b55d4 Make rows tall enough for notes, notes not bold 2022-08-16 10:46:42 +01:00
Keith Edmunds
88d0c11cbc Add track to header working 2022-08-15 21:36:04 +01:00
Keith Edmunds
a67b295f33 Reorder functions 2022-08-15 17:16:06 +01:00
Keith Edmunds
01a9ce342a Open wikipedia and songfacts from right click menu.
Also reorganised right click menu.
2022-08-15 17:06:01 +01:00
Keith Edmunds
8ec0911ce4 Insert commented placeholders for column sorting 2022-08-15 15:33:12 +01:00
Keith Edmunds
87e2f33f59 Scroll to put next, not current, track at top 2022-08-15 15:31:26 +01:00
Keith Edmunds
92bdf216ca Remove unused code 2022-08-15 14:19:56 +01:00
Keith Edmunds
73e728177e Import track working 2022-08-15 14:16:46 +01:00
Keith Edmunds
3b4cf5320d Remove unused code 2022-08-15 12:45:45 +01:00
Keith Edmunds
d5950ab29a Move selected / move unplayed working 2022-08-15 12:29:36 +01:00
Keith Edmunds
49bef912d2 Refactor playlist searching 2022-08-15 09:10:26 +01:00
Keith Edmunds
8fedb394a4 Fix artist search and match on row zero 2022-08-14 22:45:00 +01:00
Keith Edmunds
23af906d95 Remove all linting errors 2022-08-14 22:33:14 +01:00
Keith Edmunds
ebdb0d0a82 Much improved search now working 2022-08-14 22:19:15 +01:00
Keith Edmunds
b7c0fa94dd Fixed up some editing oddities 2022-08-14 13:22:54 +01:00
Keith Edmunds
29857e1185 Section timing now works 2022-08-14 11:40:17 +01:00
Keith Edmunds
56fb1aeb3d Add section header working 2022-08-14 11:01:20 +01:00
Keith Edmunds
dfc1344c69 Insert track working 2022-08-14 10:25:10 +01:00
Keith Edmunds
bdf7b0979d Cell editing rewrite
Simplied, commented, no longer using custom signals, all functions
have type information.
2022-08-13 22:12:22 +01:00
Keith Edmunds
cee84563fb WIP re editing 2022-08-13 21:13:03 +01:00
Keith Edmunds
0f8c648d1c Reorder functions alphabetically 2022-08-13 16:05:12 +01:00
Keith Edmunds
930efbbe6e Select next/prev row working 2022-08-13 15:21:09 +01:00
Keith Edmunds
c7034cf35a Create playlist working 2022-08-13 14:19:08 +01:00
Keith Edmunds
436f6b4fa9 Export playlist working 2022-08-13 13:32:25 +01:00
Keith Edmunds
066b20a571 Close playlist from menubar 2022-08-13 12:03:35 +01:00
Keith Edmunds
f1796451ae Refine save_playlist 2022-08-13 11:06:52 +01:00
Keith Edmunds
5ba70c9c6f Copy escaped track path 2022-08-13 11:06:20 +01:00
Keith Edmunds
7d71e8ce64 WIP: clocks working 2022-08-12 21:25:59 +01:00
Keith Edmunds
afc27c988d Move info tabs to below playlist 2022-08-12 11:57:34 +01:00
Keith Edmunds
70c2c18fb3 WIP (working on marking next track) 2022-08-11 14:43:19 +01:00
Keith Edmunds
c8194fad80 WIP: Implement move rows to playlist 2022-08-09 20:33:06 +01:00
Keith Edmunds
12541e1ff7 WIP: delete playlist rows working 2022-08-09 17:08:18 +01:00
Keith Edmunds
99409e8626 Right-click menu mostly working
Still to implement:
 - Move to playlist
 - Remove row
2022-08-07 20:20:56 +01:00
Keith Edmunds
89781c0a94 Revise menu, selected tracks duration summing OK 2022-08-07 16:15:11 +01:00
Keith Edmunds
91841cfc18 Clear drag mode with clear selection 2022-08-07 11:54:18 +01:00
Keith Edmunds
96255e83ea Enable drag-select, then drag selection 2022-08-06 22:41:18 +01:00
Keith Edmunds
32e81fb074 Save of new style playlist implemented but not tested 2022-08-06 21:17:11 +01:00
Keith Edmunds
7a14651bd7 Add function type hints. Section headers and note colours working 2022-08-05 21:52:17 +01:00
Keith Edmunds
4f03306aff SQLA2: WIP, playlists load 2022-08-03 21:11:02 +01:00