Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Operation Chaining #1

Open
DrearyWillow opened this issue Jul 3, 2024 · 3 comments
Open

Add Operation Chaining #1

DrearyWillow opened this issue Jul 3, 2024 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@DrearyWillow
Copy link
Owner

DrearyWillow commented Jul 3, 2024

Allow users to create operation chains to perform actions back to back.
Example: epub|crop|ocr would take an epub as input, run Briss auto-cropping, and then run OCR on the Briss output.

Implementation details:

  • Checkbox in settings to enable/disable. If enabled, it will appear in the buttons widget as a dropdown and button pair.
  • Option to delete intermediate files
  • Dropdown menu in settings, user inputs pipe delimited string with pre-defined literals. Long term, could consider another popup window as a constructor GUI. (Maybe too many pop-up windows though, I might try making draggable elements or multiple buttons to construct the string in-window.)
  • Favorited chains in a json file in 'saves' folder. Maybe one file, maybe multiple, not sure yet.
  • History chains saved in json file in 'saves' folder. Set max limit? Can they be the same file?

UI:

  • Horizontal buttons for each operation
  • Horizontal: favorite button; bar displaying current operation selection. dropdown menu can select history; execute chain button
  • In settings: enable/disable, clear history, clear favorites
  • Undecided: independent popup or housed between logging and filetree/buttons
@DrearyWillow DrearyWillow added the enhancement New feature or request label Jul 3, 2024
@DrearyWillow DrearyWillow self-assigned this Jul 3, 2024
@DrearyWillow DrearyWillow pinned this issue Jul 16, 2024
@DrearyWillow
Copy link
Owner Author

8f572d8

@DrearyWillow
Copy link
Owner Author

likely add another argument to each operation indicating chaining - button toggle and what to return

@DrearyWillow
Copy link
Owner Author

from multiprocessing import Process

def ocrmypdf_process():
ocrmypdf.ocr('input.pdf', 'output.pdf')

def call_ocrmypdf_from_my_app():
p = Process(target=ocrmypdf_process)
p.start()
p.join()

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant