Keith Edmunds
4eabf4a02a
WIP V3: ready for testing
2023-11-27 21:46:19 +00:00
Keith Edmunds
b1442b2c7d
WIP V3: check track already present in playlist when adding
2023-11-27 20:55:24 +00:00
Keith Edmunds
3cab9f737c
WIP V3: click on current/next header scrolls to track
2023-11-27 16:16:33 +00:00
Keith Edmunds
04f0e95653
WIP V3: fix minor issues
2023-11-27 15:21:20 +00:00
Keith Edmunds
480c832852
WIP V3: implement searching with QSortFilterProxyModel (ooo!)
2023-11-26 15:22:01 +00:00
Keith Edmunds
23a9eff43b
WIP V3 wire in QSortFilterProxyModel
2023-11-23 18:28:10 +00:00
Keith Edmunds
25e3be6fae
WIP V3: add track to header working
2023-11-23 17:12:03 +00:00
Keith Edmunds
223fb3bdec
WIP V3: tests for moving rows between playlists pass
2023-11-22 16:57:16 +00:00
Keith Edmunds
e3d20c9bdc
WIP V3: cleanup
2023-11-20 11:24:12 +00:00
Keith Edmunds
88e638a56e
WIP V3: search wikipedia/songfacts from menu
2023-11-19 21:31:09 +00:00
Keith Edmunds
4f4408400f
WIP V3: info popup implemented
2023-11-19 03:11:03 +00:00
Keith Edmunds
f4a374f68c
WIP V3: select duplicate rows working
2023-11-19 03:09:58 +00:00
Keith Edmunds
199f0e27fa
WIP V3: fixup row insertion/deletion
...
All row insertions and deletions are now wrapped in beginRemoveRows /
endRemoveRows (and similar for insertions).
2023-11-17 22:17:47 +00:00
Keith Edmunds
93c5475a29
WIP V3: preview button works
2023-11-16 18:06:21 +00:00
Keith Edmunds
2861511f1f
WIP V3: remove functions, formatting
2023-11-16 00:08:12 +00:00
Keith Edmunds
a8aa157484
Remove lots of unuse functions from playlists.py
2023-11-15 23:54:06 +00:00
Keith Edmunds
71f3e4cda8
WIP V3: delete rows works
2023-11-15 23:40:48 +00:00
Keith Edmunds
9467ae4ee5
WIP V3: show selected time plus drag 'n' drop refinements
2023-11-15 22:37:42 +00:00
Keith Edmunds
de710b1dc7
WIP V3: start/end times, moving row bug
...
Start/end times now stored separately from self.playlist_rows. Moving
next row to above current row now works.
2023-11-15 20:09:00 +00:00
Keith Edmunds
d5871fe77f
WIP V3: context menu started
...
Sort by title implemented
2023-11-14 23:45:47 +00:00
Keith Edmunds
0d2dad9f3c
WIP V3: remove references to HEADER_NOTES_COLUMN in playlists.py
2023-11-12 22:36:17 +00:00
Keith Edmunds
6d648a56b7
WIP V3: fix editing headers rows
2023-11-08 18:34:10 +00:00
Keith Edmunds
a8ac67b9e3
V3 WIP Black
2023-11-05 08:03:02 +00:00
Keith Edmunds
a35905dee8
WIP V3: play track working
2023-11-03 15:16:27 +00:00
Keith Edmunds
e137045812
WIP V3: select next track works with caveats
...
Peformance isn't great
Selecting a non-existent track isn't caught
2023-11-01 22:53:25 +00:00
Keith Edmunds
d9ad001c75
Relayout files
...
Created classes.py and moved common classes to classes.py. Ordered
imports.
2023-11-01 19:08:22 +00:00
Keith Edmunds
15ecae54cf
Move MusicMusterSignals into helpers
2023-11-01 07:49:40 +00:00
Keith Edmunds
fedcfc3eea
WIP V3: Add track to header row implemented
2023-10-31 20:09:45 +00:00
Keith Edmunds
813b325029
Black reformatting, tidying
2023-10-31 08:15:24 +00:00
Keith Edmunds
734d5cb545
Make MusicMusterSignals a singleton class
...
Moved into datastructures.py
2023-10-31 08:14:34 +00:00
Keith Edmunds
3557d22c54
WIP V3: insert track works
2023-10-30 21:55:02 +00:00
Keith Edmunds
858c86d907
test_insert_header_row passes
2023-10-25 22:17:52 +01:00
Keith Edmunds
86a1678f41
WIP V3: move row initial tests working
...
More tests to write
2023-10-24 20:48:28 +01:00
Keith Edmunds
9d3e4b8d0c
V3 WIP Drag and drop partly implemented
...
UI works but outputs model changes needed to stdout
2023-10-22 22:53:59 +01:00
Keith Edmunds
95c7ccbf34
WIP V3: editing saves
2023-10-21 13:49:13 +01:00
Keith Edmunds
5d19d1ed9f
Move playlists_v3 to playlists
2023-10-21 11:07:25 +01:00
Keith Edmunds
2ca2471f5e
Fix bug where unable to preview first row of playlist.
2023-10-16 23:25:09 +01:00
Keith Edmunds
d57ffbdb09
Implement select duplicate rows
...
Fixes #157
2023-10-16 23:16:56 +01:00
Keith Edmunds
3e2293195a
Improve track creation in database
...
Pass all arguments to Tracks.__init__ on track creation
Smarten up metadata collecting
Reformat code
Reinstate stackprinter, but with more sensible settings (mostly
defaults, oddly enough)
2023-10-16 19:44:51 +01:00
Keith Edmunds
8cd8f80883
Shift-sort reverses sort
2023-10-15 22:46:32 +01:00
Keith Edmunds
3a612558e4
Set playlist column widths before populating playlist
...
Big speed improvment. Loading a 540 line playlist went from 0.445s to
0.264s.
2023-10-15 22:17:46 +01:00
Keith Edmunds
9ac2911a55
Typing and mypy fixes
2023-10-15 21:04:54 +01:00
Keith Edmunds
3513c32a62
Speed increases, more typing, cleanup
...
Pull all playlist row info in one database query when loading a
playlist.
Fixup some type hints in models.
Comment out stackprinter calls - they mostly get in the way
interactively.
2023-10-15 19:04:58 +01:00
Keith Edmunds
a8c5a56c1a
Implent subtotal times and unplayed time
2023-10-13 19:01:22 +01:00
Keith Edmunds
8cebf7829b
Save playlist after undoing sort
2023-10-12 18:44:01 +01:00
Keith Edmunds
c8a7ae7f73
Black formatting
2023-10-12 08:55:26 +01:00
Keith Edmunds
87ab973439
Implement playlist range sort and unsort
2023-10-12 02:43:17 +01:00
Keith Edmunds
06e457a3da
Save sorted selection
2023-10-10 01:28:31 +01:00
Keith Edmunds
8e2edb6af3
Add sort selection
2023-10-10 01:27:36 +01:00
Keith Edmunds
ee391e42e7
Minor tidying
2023-10-10 01:27:13 +01:00
Keith Edmunds
986257bef6
Flake8 and Black run on all files
2023-07-09 16:12:21 +01:00
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