MTGProxyPrinter

Timeline
Login

Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2025-06-03
15:45
Merge with trunk Leaf check-in: 524f02ba05 user: thomas tags: refactor_async_tasks
2025-06-02
21:15
README: Update the package building and installation sections. Leaf check-in: 6d588d93e5 user: thomas tags: trunk
16:23
Use pre-defined paper sizes instead of the current approach. Also use location-aware paper size defaults, so that US-based users get US Letter format by default. This uses a hard-coded list of locations to switch to US Letter, which is hopefully conclusive. check-in: bb6e7da159 user: thomas tags: trunk
12:51
Document: Fix crash during saving Closed-Leaf check-in: 123eb9de6d user: thomas tags: enum_based_paper_size
12:51
Remove constants introduced during bug hunting check-in: 4a386665fb user: thomas tags: enum_based_paper_size
11:58
Update changelog entry. check-in: d90b8fd31d user: thomas tags: enum_based_paper_size
11:53
Prevent entering margins causing zero page capacity. This should complete the feature. check-in: 8ce52c362e user: thomas tags: enum_based_paper_size
11:01
Merge with trunk check-in: ac0a647f0d user: thomas tags: enum_based_paper_size
2025-06-01
16:07
Optimize renderer. Fixes [c93d3a51f1a47877]. check-in: b6c0c95383 user: thomas tags: trunk
16:06
Fix bug in PageScene.update_card_bleeds() Closed-Leaf check-in: 5ce698c6df user: thomas tags: optimize_rendering
16:03
Add changelog entry check-in: 1c9ed266fc user: thomas tags: optimize_rendering
15:54
Move conversion from Quantity to int up from the low level CardBleedItem class to PageScene.update_card_bleeds(). This moves the conversion out of the hot code path, reducing call count from 20000 to 8 for a page with 600 cards. check-in: d67a00f88a user: thomas tags: optimize_rendering
15:38
PageScene: Cache the row and column counts as attributes. This saves multiple seconds in _compute_position_for_image() and _has_neighbors(). check-in: ccc0a7e590 user: thomas tags: optimize_rendering
14:53
PageScene: Rewrite _has_neighbors() to use pure math instead of empirically testing for presence of elements. This is currently slower because of a call to page_layout.compute_page_column_count() check-in: c2e5371efb user: thomas tags: optimize_rendering
14:23
CardItem: Pass a QModelIndex, instead of a Card to CardItem.__init__(), and adjust calling code. Remove old TODOs in test_page_scene.py for off-by-one errors that are now fixed with recent changes. check-in: ddfb134d0a user: thomas tags: optimize_rendering
11:51
Cache conversions between pint quantities and raw float/int mm/pixels check-in: 544eaa976a user: thomas tags: optimize_rendering
11:05
PageScene: Extract _distance_to_rounded_px() as a module function check-in: 9b897477e6 user: thomas tags: optimize_rendering
10:58
CardBleeds: Introduce zero-mm constant, shaving off ~300ms/1000 invocations of from_card() by not parsing "0 mm" each invocation. check-in: a39bf46467 user: thomas tags: optimize_rendering
10:33
PageScene: Cache results of _distance_to_rounded_px(), reducing runtime by 100ms/1000 invocations check-in: 4d3fde0115 user: thomas tags: optimize_rendering
09:51
ActionLoadDocument: Optimize constructing the first page by batching cards. Minimizes the number of ActionAddCard instances and number of calls into the draw code. check-in: 3a582cc523 user: thomas tags: optimize_rendering
2025-05-31
11:50
Dependencies: Capitalize the Pint library package name to match the case on PyPI. Also specify a version range for typing_extensions check-in: 244c5fdb16 user: thomas tags: trunk
2025-05-29
19:50
Restrict acceptable paper sizes to ones that allow printing at least one oversized card in both portrait and landscape mode. check-in: 5fb761c701 user: thomas tags: enum_based_paper_size
19:29
Add a comment check-in: 18f06e89cb user: thomas tags: enum_based_paper_size
16:42
Introduce a lookup table for default paper sizes based on system location. When there is no default printer to query, use that as a fallback check-in: 73a489a3f5 user: thomas tags: enum_based_paper_size
2025-05-28
13:52
Merge with trunk check-in: ec162d04f8 user: thomas tags: enum_based_paper_size
2025-05-26
16:15
Release v0.32.0 Leaf check-in: 73d0989b15 user: thomas tags: port_pyside6
16:09
Release v0.32.0 check-in: 31d1829412 user: thomas tags: trunk, release, v0.32.0
10:15
Merge with trunk check-in: 2e4501ff9d user: thomas tags: port_pyside6
10:07
changelog.md: Add GitHub note. Fixed grammar issues. check-in: 1a0aaeee16 user: thomas tags: trunk
2025-05-23
22:08
ImageDownloader: Fix unreachable code warning check-in: c9d1c92ca8 user: thomas tags: refactor_async_tasks
22:02
ImageDownloader: Relay signal missing_image_obtained through the ImageDatabase to further encapsulate the Downloader class and not have random signal connections scattered around. Remove now obsolete ImageDownloader.connect_image_db_signals() method check-in: 1039f24c5b user: thomas tags: refactor_async_tasks
21:45
Rename ImageDatabase Runner classes to Task classes, to reflect the use of the new AsyncTask API. check-in: d8f61c7721 user: thomas tags: refactor_async_tasks
21:41
ImageDatabase: Remove old progress report relay signals check-in: e0691f1ba0 user: thomas tags: refactor_async_tasks
21:33
ImageDownloader: Remove unused parameter in _load_from_disk() check-in: 908342a43e user: thomas tags: refactor_async_tasks
21:30
ImageDownloader: Emit image_obtained only in one location. check-in: 327fe75bf8 user: thomas tags: refactor_async_tasks
16:38
Use a Qt Signal/Slot connection to move downloaded images from the ImageDownloader into the ImageDatabase. This replaces a cross-thread dict key set. check-in: 5d97ddac19 user: thomas tags: refactor_async_tasks
15:59
WIP Port the ImageDownloader classes to the new AsyncTask API. check-in: 76977194c6 user: thomas tags: refactor_async_tasks
2025-05-18
13:59
Double the export card images dialog width to 600px. This shows more of the selected directory path. check-in: 5c912b947e user: thomas tags: trunk
13:53
Implement exporting card images to a directory. check-in: adc58b9007 user: thomas tags: trunk
13:53
Update translations from Crowdin Leaf check-in: e2a128619d user: thomas tags: export_card_images
13:50
Needs to submit str literals to QDialog.tr() for translation to work. check-in: 7d3196be7c user: thomas tags: export_card_images
13:43
Implemented error reporting when exporting cards fails. check-in: 4a6bf04930 user: thomas tags: export_card_images
13:42
Fixed Card.is_custom_card check-in: cebad57e8c user: thomas tags: export_card_images
13:27
Update translations from Crowdin check-in: b95416f31f user: thomas tags: export_card_images
13:07
Fix crash in item delegates introduced in [e34871803fd1df70]. check-in: 2945c05ddc user: thomas tags: trunk
13:01
Additional fixes. Do not export the same custom card multiple times, if there are multiple copies. Do not try to export blank placeholders as official cards. check-in: e811c35a62 user: thomas tags: export_card_images
12:51
Support exporting custom cards check-in: 816a9285ab user: thomas tags: export_card_images
12:23
Actually honor the card selection check boxes. Document.get_all_image_keys_in_document() now only works with official cards. ExportCardImagesDialog() now uses the check boxes to enable the section for official cards and custom cards based on what is enabled. Custom card export is still TODOâ€. check-in: bfa529d95d user: thomas tags: export_card_images
12:11
Add changelog entry. check-in: 8ea042c4b0 user: thomas tags: export_card_images
11:53
ProgressBar: Ensure the instances are re-usable, by resetting the visibility of UI items in the begin_task slot check-in: 30c90c4622 user: thomas tags: refactor_async_tasks