| pyPhotoAlbum/__init__.py |
(no function) |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer._record_initial_states |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.check_collision |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.find_max_scale |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.grow_iteration |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.check_element_collision |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.center_element_horizontally |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.center_element_vertically |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.center_elements |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
ElementMaximizer.maximize |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.get_bounds |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_left |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_right |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_top |
|
9 |
1 |
0 |
|
89% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_bottom |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_horizontal_center |
|
11 |
1 |
0 |
|
91% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.align_vertical_center |
|
11 |
1 |
0 |
|
91% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.make_same_size |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.make_same_width |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.make_same_height |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.distribute_horizontally |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.distribute_vertically |
|
14 |
1 |
0 |
|
93% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.space_horizontally |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.space_vertically |
|
16 |
1 |
0 |
|
94% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.fit_to_page_width |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.fit_to_page_height |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.fit_to_page |
|
11 |
11 |
0 |
|
0% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.maximize_pattern |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
AlignmentManager.expand_to_bounds |
|
55 |
0 |
0 |
|
100% |
| pyPhotoAlbum/alignment.py |
(no function) |
|
52 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog.__init__ |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog._init_ui |
|
30 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog._scan_missing_assets |
|
27 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog._add_search_path |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog._remove_search_path |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
AssetHealDialog._attempt_healing |
|
68 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_heal_dialog.py |
(no function) |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
compute_file_md5 |
|
11 |
3 |
0 |
|
73% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.import_asset |
|
16 |
1 |
0 |
|
94% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.acquire_reference |
|
10 |
10 |
0 |
|
0% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.release_reference |
|
16 |
16 |
0 |
|
0% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.get_absolute_path |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.get_reference_count |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.deserialize |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.compute_asset_hash |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.compute_all_hashes |
|
12 |
1 |
0 |
|
92% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.find_duplicates |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.deduplicate_assets |
|
35 |
7 |
0 |
|
80% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.get_duplicate_stats |
|
14 |
2 |
0 |
|
86% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.find_unused_assets |
|
13 |
1 |
0 |
|
92% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.get_unused_stats |
|
11 |
2 |
0 |
|
82% |
| pyPhotoAlbum/asset_manager.py |
AssetManager.remove_unused_assets |
|
26 |
4 |
0 |
|
85% |
| pyPhotoAlbum/asset_manager.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
get_image_dimensions |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache._estimate_image_size |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache._make_key |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache.get |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache.put |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache.clear |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
ImageCache.get_stats |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.__init__ |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.start |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.stop |
|
15 |
3 |
0 |
|
80% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._run_event_loop |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._process_queue |
|
13 |
2 |
0 |
|
85% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._cancel_all_tasks |
|
7 |
2 |
0 |
|
71% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._load_image |
|
27 |
27 |
0 |
|
0% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._load_and_process_image |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._emit_loaded |
|
6 |
3 |
0 |
|
50% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader._emit_failed |
|
6 |
3 |
0 |
|
50% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.request_load |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.cancel_load |
|
12 |
4 |
0 |
|
67% |
| pyPhotoAlbum/async_backend.py |
AsyncImageLoader.get_stats |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.__init__ |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.start |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.stop |
|
12 |
1 |
0 |
|
92% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator._run_event_loop |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.export_pdf |
|
11 |
4 |
0 |
|
64% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.cancel_export |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator._export_pdf_async |
|
29 |
29 |
0 |
|
0% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator._export_pdf_async.progress_callback |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator._export_with_cache |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator._export_with_cache.cached_open |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.is_exporting |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
AsyncPDFGenerator.get_stats |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_backend.py |
(no function) |
|
66 |
0 |
0 |
|
100% |
| pyPhotoAlbum/async_project_loader.py |
AsyncProjectLoader.__init__ |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/async_project_loader.py |
AsyncProjectLoader.cancel |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/async_project_loader.py |
AsyncProjectLoader.run |
|
75 |
75 |
0 |
|
0% |
| pyPhotoAlbum/async_project_loader.py |
AsyncProjectLoader._normalize_asset_paths |
|
23 |
23 |
0 |
|
0% |
| pyPhotoAlbum/async_project_loader.py |
load_from_zip_async |
|
9 |
9 |
0 |
|
0% |
| pyPhotoAlbum/async_project_loader.py |
(no function) |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.__init__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager._ensure_checkpoint_directory |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager._get_checkpoint_path |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.create_checkpoint |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager._save_checkpoint_metadata |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.list_checkpoints |
|
14 |
2 |
0 |
|
86% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.load_checkpoint |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.delete_checkpoint |
|
10 |
3 |
0 |
|
70% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.delete_all_checkpoints |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.cleanup_old_checkpoints |
|
22 |
2 |
0 |
|
91% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.has_checkpoints |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
AutosaveManager.get_latest_checkpoint |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/autosave_manager.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
_normalize_asset_path |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
_deserialize_element |
|
10 |
2 |
0 |
|
80% |
| pyPhotoAlbum/commands.py |
Command.execute |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/commands.py |
Command.undo |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/commands.py |
Command.redo |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/commands.py |
Command.serialize |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/commands.py |
Command.deserialize |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.__init__ |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.execute |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.undo |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AddElementCommand.deserialize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.__init__ |
|
7 |
1 |
0 |
|
86% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.execute |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.undo |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.redo |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
DeleteElementCommand.deserialize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.execute |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.undo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
MoveElementCommand.deserialize |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.execute |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.undo |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.redo |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementCommand.deserialize |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.__init__ |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.execute |
|
30 |
11 |
0 |
|
63% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.undo |
|
9 |
2 |
0 |
|
78% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
RotateElementCommand.deserialize |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.execute |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.undo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.redo |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AdjustImageCropCommand.deserialize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.__init__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.execute |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.undo |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.redo |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
AlignElementsCommand.deserialize |
|
9 |
2 |
0 |
|
78% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.execute |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.undo |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.redo |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ResizeElementsCommand.deserialize |
|
10 |
2 |
0 |
|
80% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.execute |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.undo |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
ChangeZOrderCommand.deserialize |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.execute |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.undo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
StateChangeCommand.deserialize |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory.execute |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/commands.py |
CommandHistory._release_command_assets |
|
8 |
6 |
0 |
|
25% |
| pyPhotoAlbum/commands.py |
CommandHistory.undo |
|
8 |
1 |
0 |
|
88% |
| pyPhotoAlbum/commands.py |
CommandHistory.redo |
|
8 |
1 |
0 |
|
88% |
| pyPhotoAlbum/commands.py |
CommandHistory.can_undo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory.can_redo |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory.clear |
|
6 |
1 |
0 |
|
83% |
| pyPhotoAlbum/commands.py |
CommandHistory.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory.deserialize |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/commands.py |
CommandHistory._fixup_page_layout |
|
10 |
2 |
0 |
|
80% |
| pyPhotoAlbum/commands.py |
CommandHistory._deserialize_command |
|
12 |
1 |
0 |
|
92% |
| pyPhotoAlbum/commands.py |
(no function) |
|
101 |
0 |
11 |
|
100% |
| pyPhotoAlbum/decorators.py |
RibbonAction.__init__ |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
RibbonAction.__call__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
RibbonAction.__call__.wrapper |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
ribbon_action |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
NumericalInput.__init__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
NumericalInput.__call__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
NumericalInput.__call__.wrapper |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
numerical_input |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
UndoableOperation.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
UndoableOperation.__call__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
UndoableOperation.__call__.wrapper |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
UndoableOperation.__call__.wrapper.restore_state |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/decorators.py |
UndoableOperation._capture_state |
|
6 |
1 |
0 |
|
83% |
| pyPhotoAlbum/decorators.py |
UndoableOperation._restore_state |
|
16 |
16 |
0 |
|
0% |
| pyPhotoAlbum/decorators.py |
undoable_operation |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
DialogAction.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
DialogAction.__call__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
DialogAction.__call__.wrapper |
|
14 |
2 |
0 |
|
86% |
| pyPhotoAlbum/decorators.py |
dialog_action |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/decorators.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/__init__.py |
(no function) |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePreviewWidget.__init__ |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePreviewWidget.paintEvent |
|
29 |
29 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePreviewWidget.mousePressEvent |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePreviewWidget.set_selected |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog.__init__ |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._setup_ui |
|
65 |
65 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._create_category_tab |
|
29 |
29 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._on_frame_clicked |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._clear_selection |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._update_selection_display |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._update_corners |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._update_corners_visibility |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._select_all_corners |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._select_no_corners |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog._select_diagonal_corners |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
FramePickerDialog.get_values |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/frame_picker_dialog.py |
(no function) |
|
24 |
24 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog.__init__ |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._setup_ui |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._create_page_selection_group |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._create_cover_settings_group |
|
31 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._create_page_size_group |
|
31 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._create_dpi_settings_group |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._create_button_layout |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._connect_signals |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._initialize_values |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._on_page_changed |
|
22 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog._update_spine_info |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
PageSetupDialog.get_values |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/page_setup_dialog.py |
(no function) |
|
17 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/print_settings_dialog.py |
PrintSettingsDialog.__init__ |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/print_settings_dialog.py |
PrintSettingsDialog._setup_ui |
|
40 |
40 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/print_settings_dialog.py |
PrintSettingsDialog.get_values |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/print_settings_dialog.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
CornerRadiusDialog.__init__ |
|
31 |
31 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
CornerRadiusDialog._on_slider_changed |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
CornerRadiusDialog.get_value |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ColorButton.__init__ |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ColorButton._update_style |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ColorButton._pick_color |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ColorButton.get_color |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
BorderDialog.__init__ |
|
35 |
35 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
BorderDialog._apply_preset |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
BorderDialog.get_values |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ShadowDialog.__init__ |
|
63 |
63 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ShadowDialog._update_controls |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ShadowDialog._apply_preset |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
ShadowDialog.get_values |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/dialogs/style_dialogs.py |
(no function) |
|
22 |
22 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._get_frames_directory |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._load_bundled_frames |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._register_frame |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.get_frame |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.get_frames_by_category |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.get_all_frames |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.get_frame_names |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._load_svg_as_image |
|
31 |
31 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._recolor_svg |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._get_corner_image |
|
16 |
16 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.render_frame_opengl |
|
22 |
22 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_svg_corners_gl |
|
38 |
38 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_svg_corners_gl.draw_corner_quad |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_svg_corners_gl.get_flips |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_corner_frame_gl |
|
31 |
31 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_decorative_swirls_gl |
|
16 |
16 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_full_frame_gl |
|
15 |
15 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager.render_frame_pdf |
|
21 |
21 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_svg_corners_pdf |
|
27 |
27 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_svg_corners_pdf.get_flipped_image |
|
11 |
11 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_corner_frame_pdf |
|
20 |
20 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
FrameManager._render_full_frame_pdf |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/frame_manager.py |
get_frame_manager |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/frame_manager.py |
(no function) |
|
53 |
0 |
0 |
|
100% |
| pyPhotoAlbum/gl_imports.py |
(no function) |
|
26 |
23 |
0 |
|
12% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.__init__ |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.window |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.update |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.closeEvent |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/gl_widget.py |
GLWidget._get_project_folder |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.keyPressEvent |
|
33 |
14 |
0 |
|
58% |
| pyPhotoAlbum/gl_widget.py |
GLWidget.event |
|
39 |
33 |
0 |
|
15% |
| pyPhotoAlbum/gl_widget.py |
GLWidget._handle_pinch_gesture |
|
36 |
36 |
0 |
|
0% |
| pyPhotoAlbum/gl_widget.py |
GLWidget._apply_zoom_at_point |
|
21 |
21 |
0 |
|
0% |
| pyPhotoAlbum/gl_widget.py |
(no function) |
|
25 |
0 |
0 |
|
100% |
| pyPhotoAlbum/image_utils.py |
apply_pil_rotation |
|
10 |
2 |
0 |
|
80% |
| pyPhotoAlbum/image_utils.py |
convert_to_rgba |
|
3 |
1 |
0 |
|
67% |
| pyPhotoAlbum/image_utils.py |
calculate_center_crop_coords |
|
23 |
6 |
0 |
|
74% |
| pyPhotoAlbum/image_utils.py |
crop_image_to_coords |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/image_utils.py |
resize_to_fit |
|
6 |
1 |
0 |
|
83% |
| pyPhotoAlbum/image_utils.py |
apply_rounded_corners |
|
31 |
4 |
0 |
|
87% |
| pyPhotoAlbum/image_utils.py |
apply_drop_shadow |
|
31 |
0 |
0 |
|
100% |
| pyPhotoAlbum/image_utils.py |
create_border_image |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/image_utils.py |
apply_style_to_image |
|
15 |
15 |
0 |
|
0% |
| pyPhotoAlbum/image_utils.py |
(no function) |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.__init__ |
|
27 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.opacity |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.opacity |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.show_loading |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.hide_loading |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.set_status |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.set_progress |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.set_indeterminate |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget._reposition |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.showEvent |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
LoadingWidget.resizeParent |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/loading_widget.py |
(no function) |
|
17 |
0 |
0 |
|
100% |
| pyPhotoAlbum/main.py |
MainWindow.__init__ |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._init_state |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._init_ui |
|
49 |
49 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._on_vertical_scroll |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._on_horizontal_scroll |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow.update_scrollbars |
|
23 |
23 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._register_shortcuts |
|
13 |
13 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow.resizeEvent |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._add_sample_page |
|
16 |
16 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._perform_autosave |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow._check_checkpoint_recovery |
|
27 |
27 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
MainWindow.closeEvent |
|
19 |
19 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
main |
|
19 |
19 |
0 |
|
0% |
| pyPhotoAlbum/main.py |
(no function) |
|
30 |
30 |
2 |
|
0% |
| pyPhotoAlbum/merge_dialog.py |
PagePreviewWidget.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
PagePreviewWidget.paintEvent |
|
32 |
32 |
0 |
|
0% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget._init_ui |
|
44 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget._create_element_details |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget._create_settings_details |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget._on_resolution_changed |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
ConflictItemWidget.get_resolution |
|
6 |
1 |
0 |
|
83% |
| pyPhotoAlbum/merge_dialog.py |
MergeDialog.__init__ |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
MergeDialog._init_ui |
|
43 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
MergeDialog._on_resolution_changed |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
MergeDialog._auto_resolve |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
MergeDialog.get_merged_project_data |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_dialog.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager.__init__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager.should_merge_projects |
|
6 |
2 |
0 |
|
67% |
| pyPhotoAlbum/merge_manager.py |
MergeManager.detect_conflicts |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._detect_project_settings_conflicts |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._detect_page_conflicts |
|
12 |
3 |
0 |
|
75% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._detect_page_modification_conflicts |
|
16 |
6 |
0 |
|
62% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._detect_element_conflicts |
|
11 |
3 |
0 |
|
73% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._detect_element_modification_conflicts |
|
20 |
5 |
0 |
|
75% |
| pyPhotoAlbum/merge_manager.py |
MergeManager.auto_resolve_conflicts |
|
13 |
10 |
0 |
|
23% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._get_timestamp |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/merge_manager.py |
MergeManager.apply_resolutions |
|
9 |
5 |
0 |
|
44% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._apply_their_version |
|
18 |
18 |
0 |
|
0% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._merge_non_conflicting_changes |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._add_missing_pages |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._merge_page_elements |
|
8 |
1 |
0 |
|
88% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._merge_element |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._is_element_in_conflict |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
MergeManager._merge_by_timestamp |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
concatenate_projects |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/merge_manager.py |
(no function) |
|
45 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/__init__.py |
(no function) |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin.dragEnterEvent |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin.dragMoveEvent |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin.dropEvent |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._extract_image_path |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._handle_drop_on_element |
|
11 |
1 |
0 |
|
91% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._replace_placeholder_with_image |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._handle_drop_on_empty_space |
|
14 |
2 |
0 |
|
86% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._calculate_image_dimensions |
|
5 |
1 |
0 |
|
80% |
| pyPhotoAlbum/mixins/asset_drop.py |
AssetDropMixin._add_new_image_to_page |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_drop.py |
(no function) |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_path.py |
AssetPathMixin.resolve_asset_path |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_path.py |
AssetPathMixin.get_asset_full_path |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_path.py |
AssetPathMixin._get_project_folder |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/asset_path.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin.update |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin.window |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._init_async_loading |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._cleanup_async_loading |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_image_loaded |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_image_load_failed |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_pdf_progress |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_pdf_complete |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_pdf_failed |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin.request_image_load |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin.export_pdf_async |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin._on_pdf_cancel |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
AsyncLoadingMixin.get_async_stats |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/async_loading.py |
(no function) |
|
24 |
0 |
2 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.project |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.project |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.gl_widget |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.status_bar |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.template_manager |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin._get_most_visible_page_index |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.get_current_page |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.get_current_page_index |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.show_status |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.show_error |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.show_warning |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.show_info |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.require_page |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.require_selection |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/base.py |
ApplicationStateMixin.update_view |
|
4 |
1 |
0 |
|
75% |
| pyPhotoAlbum/mixins/base.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/dialog_mixin.py |
DialogMixin.create_dialog |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/dialog_mixin.py |
DialogMixin.show_dialog |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/dialog_mixin.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_manipulation.py |
ElementManipulationMixin.window |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_manipulation.py |
ElementManipulationMixin.__init__ |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_manipulation.py |
ElementManipulationMixin._resize_element |
|
23 |
2 |
0 |
|
91% |
| pyPhotoAlbum/mixins/element_manipulation.py |
ElementManipulationMixin._resize_element_no_snap |
|
24 |
1 |
0 |
|
96% |
| pyPhotoAlbum/mixins/element_manipulation.py |
ElementManipulationMixin._transfer_element_to_page |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_manipulation.py |
(no function) |
|
10 |
0 |
3 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin.window |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin.selected_element |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin.selected_element |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin._get_element_at |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
ElementSelectionMixin._get_resize_handle_at |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/element_selection.py |
(no function) |
|
13 |
0 |
2 |
|
100% |
| pyPhotoAlbum/mixins/image_pan.py |
ImagePanMixin.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/image_pan.py |
ImagePanMixin._handle_image_pan_move |
|
31 |
2 |
0 |
|
94% |
| pyPhotoAlbum/mixins/image_pan.py |
(no function) |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
CommandBuilder.__init__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
CommandBuilder.can_build |
|
0 |
0 |
12 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
CommandBuilder.build |
|
0 |
0 |
12 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
CommandBuilder.log_command |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
MoveCommandBuilder.can_build |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
MoveCommandBuilder.build |
|
11 |
1 |
0 |
|
91% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
ResizeCommandBuilder.can_build |
|
9 |
1 |
0 |
|
89% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
ResizeCommandBuilder.build |
|
12 |
2 |
0 |
|
83% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
RotateCommandBuilder.can_build |
|
5 |
1 |
0 |
|
80% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
RotateCommandBuilder.build |
|
11 |
2 |
0 |
|
82% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
ImagePanCommandBuilder.can_build |
|
9 |
1 |
0 |
|
89% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
ImagePanCommandBuilder.build |
|
15 |
3 |
0 |
|
80% |
| pyPhotoAlbum/mixins/interaction_command_builders.py |
(no function) |
|
19 |
0 |
4 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory._register_default_builders |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory.register_builder |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory.create_command |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory.has_builder |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionCommandFactory.get_supported_types |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionState.__init__ |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionState.to_dict |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionState.is_valid |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
InteractionState.clear |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_command_factory.py |
(no function) |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._begin_move |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._begin_resize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._begin_rotate |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._begin_image_pan |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._end_interaction |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._clear_interaction_state |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
UndoableInteractionMixin._cancel_interaction |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_undo.py |
(no function) |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
significant_change |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/interaction_validators.py |
significant_change.decorator |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/interaction_validators.py |
significant_change.decorator.wrapper |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/mixins/interaction_validators.py |
ChangeValidator.position_changed |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
ChangeValidator.size_changed |
|
5 |
1 |
0 |
|
80% |
| pyPhotoAlbum/mixins/interaction_validators.py |
ChangeValidator.rotation_changed |
|
3 |
1 |
0 |
|
67% |
| pyPhotoAlbum/mixins/interaction_validators.py |
ChangeValidator.crop_changed |
|
5 |
1 |
0 |
|
80% |
| pyPhotoAlbum/mixins/interaction_validators.py |
InteractionChangeDetector.__init__ |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
InteractionChangeDetector.detect_position_change |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
InteractionChangeDetector.detect_size_change |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
InteractionChangeDetector.detect_rotation_change |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
InteractionChangeDetector.detect_crop_change |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/interaction_validators.py |
(no function) |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
KeyboardNavigationMixin._navigate_to_next_page |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
KeyboardNavigationMixin._navigate_to_previous_page |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
KeyboardNavigationMixin._scroll_to_page |
|
24 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
KeyboardNavigationMixin._move_viewport_with_arrow_keys |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
KeyboardNavigationMixin._move_selected_elements_with_arrow_keys |
|
30 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/keyboard_navigation.py |
(no function) |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.window |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.update |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.setCursor |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.setFocus |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._begin_rotate |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._begin_resize |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._begin_image_pan |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._begin_move |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._end_interaction |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._resize_element |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._get_page_at |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._get_element_at |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._get_resize_handle_at |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._check_ghost_page_click |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._transfer_element_to_page |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_image_pan_move |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._update_page_status |
|
0 |
0 |
1 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_rotation_start |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_resize_start |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_image_pan_start |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_multi_select |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_element_drag_start |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.mousePressEvent |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_left_click |
|
26 |
1 |
0 |
|
96% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_canvas_pan |
|
11 |
1 |
0 |
|
91% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_rotation_move |
|
17 |
1 |
0 |
|
94% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_resize_move |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._handle_element_move |
|
12 |
1 |
0 |
|
92% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._move_element_within_page |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.mouseMoveEvent |
|
17 |
1 |
0 |
|
94% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.mouseReleaseEvent |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.mouseDoubleClickEvent |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin.wheelEvent |
|
46 |
3 |
0 |
|
93% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
MouseInteractionMixin._edit_text_element |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/mouse_interaction.py |
(no function) |
|
36 |
0 |
3 |
|
100% |
| pyPhotoAlbum/mixins/operations/__init__.py |
(no function) |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin._get_selected_elements_list |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin._execute_alignment |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_left |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_right |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_top |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_bottom |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_horizontal_center |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.align_vertical_center |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
AlignmentOperationsMixin.maximize_pattern |
|
14 |
14 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/alignment_ops.py |
(no function) |
|
20 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin._get_selected_elements_list |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin._execute_distribution |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin.distribute_horizontally |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin.distribute_vertically |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin.space_horizontally |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
DistributionOperationsMixin.space_vertically |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/distribution_ops.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.undo |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.redo |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.delete_selected_element |
|
16 |
5 |
0 |
|
69% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.rotate_left |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.rotate_right |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
EditOperationsMixin.reset_rotation |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/edit_ops.py |
(no function) |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/element_ops.py |
ElementOperationsMixin.add_image |
|
28 |
4 |
0 |
|
86% |
| pyPhotoAlbum/mixins/operations/element_ops.py |
ElementOperationsMixin.add_text |
|
15 |
1 |
0 |
|
93% |
| pyPhotoAlbum/mixins/operations/element_ops.py |
ElementOperationsMixin.add_placeholder |
|
15 |
1 |
0 |
|
93% |
| pyPhotoAlbum/mixins/operations/element_ops.py |
(no function) |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.show_status |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.show_error |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.resolve_asset_path |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.new_project |
|
96 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.new_project.set_preset |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.open_project |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._on_load_progress |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._on_load_complete |
|
17 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._on_load_failed |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.save_project |
|
21 |
2 |
0 |
|
90% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.save_project._on_progress |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.save_project._on_finished |
|
19 |
4 |
0 |
|
79% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.heal_assets |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._check_missing_assets |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._show_missing_assets_warning |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.project_settings |
|
111 |
37 |
0 |
|
67% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._apply_page_size_to_project |
|
20 |
1 |
0 |
|
95% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._scale_page_elements |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin._reposition_page_elements |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.export_pdf |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.clean_assets |
|
72 |
72 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.clean_assets.format_bytes |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.clean_assets.update_image_references |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
FileOperationsMixin.show_about |
|
20 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/file_ops.py |
(no function) |
|
44 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/merge_ops.py |
MergeOperationsMixin.merge_projects |
|
26 |
1 |
0 |
|
96% |
| pyPhotoAlbum/mixins/operations/merge_ops.py |
MergeOperationsMixin._perform_merge_with_conflicts |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/merge_ops.py |
MergeOperationsMixin._perform_concatenation |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/merge_ops.py |
MergeOperationsMixin._apply_merged_data |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/merge_ops.py |
(no function) |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/page_ops.py |
PageOperationsMixin.add_page |
|
24 |
1 |
0 |
|
96% |
| pyPhotoAlbum/mixins/operations/page_ops.py |
PageOperationsMixin.page_setup |
|
58 |
2 |
0 |
|
97% |
| pyPhotoAlbum/mixins/operations/page_ops.py |
PageOperationsMixin.toggle_double_spread |
|
23 |
1 |
0 |
|
96% |
| pyPhotoAlbum/mixins/operations/page_ops.py |
PageOperationsMixin.remove_page |
|
16 |
1 |
0 |
|
94% |
| pyPhotoAlbum/mixins/operations/page_ops.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin._get_selected_elements_list |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin._execute_resize |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin._execute_fit_to_page |
|
13 |
1 |
0 |
|
92% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.make_same_size |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.make_same_width |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.make_same_height |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.fit_to_width |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.fit_to_height |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.fit_to_page |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
SizeOperationsMixin.expand_image |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/size_ops.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._get_selected_images |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change |
|
19 |
19 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.__init__ |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand._invalidate_texture |
|
10 |
10 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.execute |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.undo |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.redo |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.serialize |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin._apply_style_change.StyleChangeCommand.deserialize |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_corner_radius_dialog |
|
10 |
10 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.remove_corner_radius |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_border_dialog |
|
11 |
11 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_border_dialog.update_border |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.remove_border |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_shadow_dialog |
|
11 |
11 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_shadow_dialog.update_shadow |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.toggle_shadow |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.apply_polaroid_style |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.apply_polaroid_style.apply_preset |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.apply_rounded_style |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.apply_rounded_style.apply_preset |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.clear_style |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.clear_style.clear_all |
|
10 |
10 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_frame_picker |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.show_frame_picker.update_frame |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.remove_frame |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
StyleOperationsMixin.remove_frame.clear_frame |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/style_ops.py |
(no function) |
|
27 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/template_ops.py |
TemplateOperationsMixin.save_page_as_template |
|
20 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/template_ops.py |
TemplateOperationsMixin.new_page_from_template |
|
68 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/template_ops.py |
TemplateOperationsMixin.apply_template_to_page |
|
82 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/template_ops.py |
(no function) |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.zoom_in |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.zoom_out |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.zoom_fit |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_grid_snap |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_edge_snap |
|
7 |
1 |
0 |
|
86% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_guide_snap |
|
7 |
1 |
0 |
|
86% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_show_grid |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.open_print_settings |
|
9 |
9 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_print_guides |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_snap_lines |
|
7 |
1 |
0 |
|
86% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.add_horizontal_guide |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.add_vertical_guide |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.clear_guides |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.toggle_image_browser |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
ViewOperationsMixin.set_grid_size |
|
46 |
7 |
0 |
|
85% |
| pyPhotoAlbum/mixins/operations/view_ops.py |
(no function) |
|
33 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
ZOrderOperationsMixin.bring_to_front |
|
19 |
1 |
0 |
|
95% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
ZOrderOperationsMixin.send_to_back |
|
19 |
2 |
0 |
|
89% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
ZOrderOperationsMixin.bring_forward |
|
19 |
3 |
0 |
|
84% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
ZOrderOperationsMixin.send_backward |
|
19 |
3 |
0 |
|
84% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
ZOrderOperationsMixin.swap_order |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/operations/zorder_ops.py |
(no function) |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin.update |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin.window |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin._get_page_at |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin._get_page_positions |
|
38 |
6 |
0 |
|
84% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin._check_ghost_page_click |
|
30 |
2 |
0 |
|
93% |
| pyPhotoAlbum/mixins/page_navigation.py |
PageNavigationMixin._update_page_status |
|
21 |
7 |
0 |
|
67% |
| pyPhotoAlbum/mixins/page_navigation.py |
(no function) |
|
12 |
0 |
2 |
|
100% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin.paintGL |
|
58 |
11 |
0 |
|
81% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin._draw_selection_handles |
|
74 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin._render_text_overlays |
|
44 |
1 |
0 |
|
98% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin._render_ghost_page |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin._draw_page_print_guides |
|
23 |
21 |
0 |
|
9% |
| pyPhotoAlbum/mixins/rendering.py |
RenderingMixin._draw_page_print_guides._draw_rect_outline |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/mixins/rendering.py |
(no function) |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin.__init__ |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin.initializeGL |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin.resizeGL |
|
17 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._calculate_fit_to_screen_zoom |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._calculate_center_pan_offset |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin.get_content_bounds |
|
19 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._clamp_vertical_pan |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._build_page_centerlines |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._interpolate_target_centerline |
|
11 |
2 |
0 |
|
82% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._find_page_at_viewport_y |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin._clamp_horizontal_pan |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/mixins/viewport.py |
ViewportMixin.clamp_pan_offset |
|
13 |
1 |
0 |
|
92% |
| pyPhotoAlbum/mixins/viewport.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.__init__ |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.copy |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.has_styling |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.deserialize |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.__eq__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageStyle.__repr__ |
|
0 |
0 |
12 |
|
100% |
| pyPhotoAlbum/models.py |
set_asset_resolution_context |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
get_asset_search_paths |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.__init__ |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.mark_modified |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.mark_deleted |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement._serialize_base_fields |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement._deserialize_base_fields |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.render |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.serialize |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/models.py |
BaseLayoutElement.deserialize |
|
0 |
0 |
2 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData.__init__ |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData.resolve_image_path |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData._extract_dimensions_metadata |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData.render |
|
63 |
7 |
0 |
|
89% |
| pyPhotoAlbum/models.py |
ImageData._render_shadow |
|
17 |
17 |
0 |
|
0% |
| pyPhotoAlbum/models.py |
ImageData._render_border |
|
14 |
14 |
0 |
|
0% |
| pyPhotoAlbum/models.py |
ImageData._render_frame |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/models.py |
ImageData.serialize |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData.deserialize |
|
22 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData._on_async_image_loaded |
|
26 |
8 |
0 |
|
69% |
| pyPhotoAlbum/models.py |
ImageData._get_style_hash |
|
3 |
1 |
0 |
|
67% |
| pyPhotoAlbum/models.py |
ImageData._create_texture_from_pending_image |
|
37 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
ImageData._on_async_image_load_failed |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
PlaceholderData.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
PlaceholderData.render |
|
29 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
PlaceholderData.serialize |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
PlaceholderData.deserialize |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
TextBoxData.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
TextBoxData.render |
|
22 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
TextBoxData.serialize |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
TextBoxData.deserialize |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
GhostPageData.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
GhostPageData.render |
|
24 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
GhostPageData.get_page_rect |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
GhostPageData.serialize |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
GhostPageData.deserialize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/models.py |
(no function) |
|
59 |
0 |
7 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.__init__ |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.add_element |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.remove_element |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.set_grid_layout |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.render |
|
60 |
1 |
0 |
|
98% |
| pyPhotoAlbum/page_layout.py |
PageLayout._render_snap_lines |
|
46 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
PageLayout.deserialize |
|
27 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.merge_cells |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.get_cell_position |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.get_cell_size |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
GridLayout.deserialize |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_layout.py |
(no function) |
|
20 |
0 |
2 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.__init__ |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.page_to_screen |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.screen_to_page |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.is_point_in_page |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.get_sub_page_at |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.begin_render |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.end_render |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.get_page_bounds_screen |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
PageRenderer.get_page_bounds_page |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/page_renderer.py |
(no function) |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
_process_image_task |
|
38 |
38 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter.__init__ |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter.export |
|
44 |
12 |
0 |
|
73% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._compute_page_sequence |
|
15 |
2 |
0 |
|
87% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._render_item_to_bytes |
|
28 |
8 |
0 |
|
71% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._make_blank_page_bytes |
|
5 |
5 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._merge_page_pdfs |
|
10 |
1 |
0 |
|
90% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._make_task_id |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._collect_image_tasks |
|
14 |
4 |
0 |
|
71% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._collect_page_tasks |
|
18 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._collect_spread_tasks |
|
28 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._add_image_task |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._preprocess_images_parallel |
|
25 |
8 |
0 |
|
68% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._export_cover |
|
7 |
7 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._export_single_page |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._export_spread |
|
28 |
0 |
0 |
|
100% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._render_element |
|
19 |
1 |
0 |
|
95% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._render_split_element |
|
30 |
1 |
0 |
|
97% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._render_image |
|
28 |
13 |
0 |
|
54% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._process_image_fallback |
|
37 |
31 |
0 |
|
16% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._draw_shadow_pdf |
|
13 |
13 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._draw_border_pdf |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._draw_frame_pdf |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/pdf_exporter.py |
PDFExporter._render_textbox |
|
42 |
14 |
0 |
|
67% |
| pyPhotoAlbum/pdf_exporter.py |
(no function) |
|
80 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Page.__init__ |
|
21 |
2 |
0 |
|
90% |
| pyPhotoAlbum/project.py |
Page.get_page_numbers |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Page.get_page_count |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Page.mark_modified |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Page.mark_deleted |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Page.render |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Page.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Page.deserialize |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.__init__ |
|
34 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.mark_dirty |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.mark_clean |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.is_dirty |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.mark_modified |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.add_page |
|
6 |
1 |
0 |
|
83% |
| pyPhotoAlbum/project.py |
Project.remove_page |
|
4 |
1 |
0 |
|
75% |
| pyPhotoAlbum/project.py |
Project.calculate_spine_width |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Project.update_cover_dimensions |
|
17 |
17 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Project.get_page_display_name |
|
8 |
1 |
0 |
|
88% |
| pyPhotoAlbum/project.py |
Project.calculate_page_layout_with_ghosts |
|
18 |
18 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Project.render_all_pages |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/project.py |
Project.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.deserialize |
|
42 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
Project.cleanup |
|
8 |
2 |
0 |
|
75% |
| pyPhotoAlbum/project.py |
Project.__del__ |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project.py |
(no function) |
|
35 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project_serializer.py |
_import_external_images |
|
26 |
16 |
0 |
|
38% |
| pyPhotoAlbum/project_serializer.py |
_normalize_asset_paths |
|
26 |
8 |
0 |
|
69% |
| pyPhotoAlbum/project_serializer.py |
save_to_zip |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project_serializer.py |
save_to_zip_async |
|
28 |
28 |
0 |
|
0% |
| pyPhotoAlbum/project_serializer.py |
save_to_zip_async._background_save |
|
37 |
37 |
0 |
|
0% |
| pyPhotoAlbum/project_serializer.py |
load_from_zip |
|
39 |
2 |
0 |
|
95% |
| pyPhotoAlbum/project_serializer.py |
get_project_info |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/project_serializer.py |
(no function) |
|
17 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_builder.py |
build_ribbon_config |
|
31 |
2 |
0 |
|
94% |
| pyPhotoAlbum/ribbon_builder.py |
get_keyboard_shortcuts |
|
12 |
2 |
0 |
|
83% |
| pyPhotoAlbum/ribbon_builder.py |
validate_ribbon_config |
|
37 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_builder.py |
print_ribbon_summary |
|
15 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_builder.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget.__init__ |
|
15 |
2 |
0 |
|
87% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget._build_ribbon |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget._create_tab |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget._create_group |
|
23 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget._create_action_button |
|
7 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
RibbonWidget._execute_action |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/ribbon_widget.py |
(no function) |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
Guide.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
Guide.deserialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.__init__ |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.add_guide |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.remove_guide |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.clear_guides |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.snap_position |
|
59 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.snap_resize |
|
45 |
7 |
0 |
|
84% |
| pyPhotoAlbum/snapping.py |
SnappingSystem._snap_edge_to_targets |
|
30 |
4 |
0 |
|
87% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.get_snap_lines |
|
21 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.serialize |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
SnappingSystem.deserialize |
|
8 |
0 |
0 |
|
100% |
| pyPhotoAlbum/snapping.py |
(no function) |
|
31 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.__init__ |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.add_element |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.to_dict |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.from_dict |
|
11 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.save_to_file |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
Template.load_from_file |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.__init__ |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager._get_templates_directory |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager._get_builtin_templates_directory |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager._ensure_templates_directory |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.list_templates |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.load_template |
|
16 |
5 |
0 |
|
69% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.save_template |
|
5 |
2 |
0 |
|
60% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.delete_template |
|
12 |
1 |
0 |
|
92% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.embed_template |
|
4 |
1 |
0 |
|
75% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.create_template_from_page |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.scale_template_elements |
|
45 |
1 |
0 |
|
98% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.apply_template_to_page |
|
27 |
2 |
0 |
|
93% |
| pyPhotoAlbum/template_manager.py |
TemplateManager.create_page_from_template |
|
13 |
0 |
0 |
|
100% |
| pyPhotoAlbum/template_manager.py |
(no function) |
|
30 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog.__init__ |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog._init_ui |
|
40 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog._load_values |
|
16 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog._choose_color |
|
4 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog._update_color_button |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
TextEditDialog.get_values |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/text_edit_dialog.py |
(no function) |
|
10 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
DateHeader.__init__ |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailItem.__init__ |
|
12 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailItem.get_bounds |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailItem.contains_point |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.__init__ |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.window |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.update |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.initializeGL |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.resizeGL |
|
8 |
8 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.paintGL |
|
10 |
10 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.paintEvent |
|
14 |
14 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._render_thumbnail |
|
48 |
48 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._render_date_header |
|
18 |
18 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._create_texture_for_thumbnail |
|
23 |
23 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.load_folder |
|
9 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._arrange_thumbnails |
|
60 |
24 |
0 |
|
60% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._update_scrollbar_range |
|
19 |
17 |
0 |
|
11% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._on_scrollbar_changed |
|
4 |
4 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._update_scrollbar_position |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.update_used_images |
|
14 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._request_thumbnail_load |
|
14 |
4 |
0 |
|
71% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._on_image_loaded |
|
6 |
6 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget._on_image_load_failed |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.screen_to_viewport |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.get_thumbnail_at |
|
5 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.mousePressEvent |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.mouseMoveEvent |
|
18 |
18 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.mouseReleaseEvent |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailGLWidget.wheelEvent |
|
15 |
15 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock.__init__ |
|
47 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._connect_async_loader |
|
14 |
11 |
0 |
|
21% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock.showEvent |
|
2 |
2 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._select_folder |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock.load_folder |
|
6 |
0 |
0 |
|
100% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._sort_by |
|
9 |
9 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._apply_sort |
|
16 |
14 |
0 |
|
12% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._get_image_date |
|
18 |
18 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
ThumbnailBrowserDock._get_camera_model |
|
13 |
13 |
0 |
|
0% |
| pyPhotoAlbum/thumbnail_browser.py |
(no function) |
|
52 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
VersionCompatibility.is_compatible |
|
3 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
VersionCompatibility.needs_migration |
|
1 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
VersionCompatibility.get_version_info |
|
1 |
1 |
0 |
|
0% |
| pyPhotoAlbum/version_manager.py |
VersionCompatibility.get_migration_path |
|
10 |
3 |
0 |
|
70% |
| pyPhotoAlbum/version_manager.py |
DataMigration.register_migration |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
DataMigration.register_migration.decorator |
|
2 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
DataMigration.migrate |
|
15 |
3 |
0 |
|
80% |
| pyPhotoAlbum/version_manager.py |
migrate_1_0_to_2_0 |
|
3 |
3 |
0 |
|
0% |
| pyPhotoAlbum/version_manager.py |
migrate_2_0_to_3_0 |
|
35 |
0 |
0 |
|
100% |
| pyPhotoAlbum/version_manager.py |
check_version_compatibility |
|
22 |
17 |
0 |
|
23% |
| pyPhotoAlbum/version_manager.py |
format_version_info |
|
12 |
12 |
0 |
|
0% |
| pyPhotoAlbum/version_manager.py |
(no function) |
|
27 |
0 |
0 |
|
100% |