* Add bulk metadata editing support
* Enable multi-file selection in Metadata Editor using getOpenFileNames()
* Disable Volume, Number, and Title fields in bulk mode
* Pre-fill Series and author fields from first selected file in bulk mode
* Show status "Editing Y files" in bulk mode
* Add progress display during bulk save ("Processing X/Y: filename")
* Disable buttons during processing
* Skip read-only CBR files with error collection
* Show error summary dialog if any files fail to save
* Keep single file metadata editing the same
* Add bulk volume editing with rich tooltip
* Add checkbox next to Volume field for enabling bulk volume editing (only in bulk mode)
* Support single number (5), range (1-10), or comma list (1, 3, 5) input formats
* Sort files alphabetically before volume assignment
* Validate that volume count matches file count
* Add rich HTML tooltip explaining the feature
* Move bulkVolumeCheck widget definition to MetaEditor.ui
* Define bulkVolumeCheck QCheckBox in MetaEditor.ui instead of creating it programmatically in KCC_gui.py
* Update tab order to include bulkVolumeCheck after volumeLine
* Add multi-directory selection for bulk metadata editing
* Shift+click on editor button now opens multi-directory selection dialog
* Multiple directories enable bulk mode with volume number assignment
* Uses Qt's built-in dialog with multi-selection enabled for native look and feel
* Fix volume input validation in bulk metadata editor
* Handle invalid range formats like "1-2-3" or "--" that previously fell through, now returns an error message
* Add explicit check for empty/malformed range parts before attempting to parse
* Add positive number validation for all input types (range, comma-list, single number) to be consistent with single file mode which uses isnumeric()
* Add explicit validation for empty volumes list after parsing
* Keep metadata editor dialog open when error occur during bulks save
* Fix CBR read-only check in bulk metadata editor
* Check all files for CBR format during load instead of during save
* Unify the CBR check for single and bulk mode
* Handle mixed metadata values in bulk editing
* In bulk mode, compare Series + Writer/Penciller/Inker/Colorist across all selected files (instead of using only the first file)
* When values differ, show “(multiple values)” placeholder for that field
* Add hover tooltip with overwrite warning and a File|Value table (or Value|Count summary when there are >20 files)
* Code comments cleanup
* Use ExtendedSelection for multi-directory file dialog
* use !=
* set tabulation order for metadata editor fields
- loop through fields in from top to down order
* don't change rc
---------
Co-authored-by: Alex Xu <alexkurosakimh3@gmail.com>
* Added basic CBZ combine func
Need to add support for epub and maybe mobi.
* Removed irrelevant code for CBZ file fusion
* Fixed false description
* Removed irrelevant code
* Removed redundant code
Replaced page tracker and os.rename with os.renames. Removed unneeded reference to gui. Changed mkdir to mkdtemp.
* Made folder and cbz work together
You can select multiple folders of images, multiple cbz files, and folders with subfolders. Fusion will combine them all together at the same time. Mainly added this to idiot proof it.
* Updated gui
Removed redundant tooltip
* simplify code
* fix merging chapter folders with .
* uncheck fusion message
---------
Co-authored-by: Alex Xu <alexkurosakimh3@gmail.com>
1. Replaced both crop margins and crop margins & page num with newer algorithm.
2. Crop max power level increased to 3.0
3. Adds NumPy as a new dependency.
* Adds --author argument to CLI
* Add --prefercoverfile and --nocoveraspage arguments to CLI
* cover checks only run once
* Revert "cover checks only run once"
This reverts commit ad7b3cc106.
* split off author portion
* split off author
* remove prefercover
* whitespace fixes
* rename to duplicatecover
* whitespace fixes
* rename to dedupecover
* add dedupe to UI
---------
Co-authored-by: Alex Xu <alexkurosakimh3@gmail.com>