Outil d'imposition PDF desktop (PyQt6) remplacant Quite Imposing Plus. 9 fonctions : livret, n-up, step & repeat, imposition manuelle, jointure pages, pages blanches, numerotation, masquage, fonds perdus. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
39 lines
1.3 KiB
Python
39 lines
1.3 KiB
Python
"""Dialogue Joindre deux pages."""
|
|
|
|
from PyQt6.QtWidgets import (QDialog, QVBoxLayout, QLabel, QGroupBox,
|
|
QRadioButton, QDialogButtonBox)
|
|
|
|
|
|
class JoinPagesDialog(QDialog):
|
|
def __init__(self, parent=None):
|
|
super().__init__(parent)
|
|
self.setWindowTitle("Joindre deux pages")
|
|
self.setMinimumWidth(300)
|
|
self._setup_ui()
|
|
|
|
def _setup_ui(self):
|
|
layout = QVBoxLayout(self)
|
|
|
|
layout.addWidget(QLabel("Les pages seront jointes par paires (1+2, 3+4, ...)."))
|
|
|
|
grp = QGroupBox("Direction")
|
|
gl = QVBoxLayout(grp)
|
|
self.rb_horizontal = QRadioButton("Cote a cote (horizontal)")
|
|
self.rb_horizontal.setChecked(True)
|
|
self.rb_vertical = QRadioButton("Dessus/dessous (vertical)")
|
|
gl.addWidget(self.rb_horizontal)
|
|
gl.addWidget(self.rb_vertical)
|
|
layout.addWidget(grp)
|
|
|
|
buttons = QDialogButtonBox(
|
|
QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel
|
|
)
|
|
buttons.accepted.connect(self.accept)
|
|
buttons.rejected.connect(self.reject)
|
|
layout.addWidget(buttons)
|
|
|
|
def get_settings(self):
|
|
return {
|
|
"direction": "horizontal" if self.rb_horizontal.isChecked() else "vertical"
|
|
}
|