10 Commits

Author SHA1 Message Date
Saleem Edah-Tally
b1f4f2d15f Use wxAboutBox dialog. 2025-07-14 13:31:01 +02:00
Saleem Edah-Tally
0e517799c8 Cancel scanning if window closure is requested.
The job is cancelled but the window remains open and functional.
At least, the application survives; a crash would happen without this patch.
2025-07-13 22:36:09 +02:00
Saleem Edah-Tally
24f58fa13d Allow using multiple instances of the application window.
All instances share the same config file.
Each instance can independently
 - work on a device
 - define its own stamps.
They can work simultaneously.
2025-07-13 21:26:00 +02:00
Saleem Edah-Tally
c10aac922d Veto window closure during scanner discovery in the background. 2025-07-13 20:24:50 +02:00
Saleem Edah-Tally
0f286efe4c Prefer two-step construction of UI classes for consistency. 2025-07-13 17:44:46 +02:00
Saleem Edah-Tally
059b16f08a Process command line and configuration file in the application class. 2025-07-13 14:36:02 +02:00
Saleem Edah-Tally
4b23b1f3de Allow cancelling a scan session.
- perform scanning in a thread
 - change the label of the scan button
 - trigger cancel with the same button and with the ESC key
 - process all GUI updates in asynchronous mode.

Do not use a top window as parent of popups:
 - If a top window goes away in an application with multiple instances of
 XInsaneWidget, any call to a scanner widget leads to a crash.

Minor changes.
2025-07-12 23:03:32 +02:00
Saleem Edah-Tally
a2045aa1f6 Add a 'Stamp' widget.
Place one or multiple stamps on scanned pages in defined locations.

A stamp is understood here as
 - a transparent text in a transparent frame with no borders
 - an opaque text on an opaque background with no borders.

Stamp parameters:
 - text
 - font
 - foreground colour
 - background colour
 - angle of rotation
 - transparency.

Locations:
 - centre
 - cardinal directions
 - inter-cardinal directions.
2025-07-09 21:12:02 +02:00
Saleem Edah-Tally
c2c792dd3d Add a keyboard shortcut to quit the application. 2025-07-09 20:29:02 +02:00
Saleem Edah-Tally
ef6f25ef27 Initial commit. 2025-06-28 17:40:42 +02:00