V3.4.2 — Fix menu contextuel Windows
- Les sous-menus sont maintenant des entrees individuelles dans le menu contextuel (pas de SubCommands qui ne fonctionne pas) - Chaque action a sa propre entree : CopyDev: Livret A4, Livret A3, etc. - Le unregister nettoie toutes les entrees - Suppression de l'ancienne entree CopyDevImpose vide Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1291,26 +1291,30 @@ class MainWindow(QMainWindow):
|
|||||||
import subprocess
|
import subprocess
|
||||||
exe = sys.executable if getattr(sys, 'frozen', False) else os.path.abspath("main.py")
|
exe = sys.executable if getattr(sys, 'frozen', False) else os.path.abspath("main.py")
|
||||||
try:
|
try:
|
||||||
|
base = "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell"
|
||||||
cmds = [
|
cmds = [
|
||||||
# Association PDF
|
# Association PDF (Ouvrir avec)
|
||||||
f'reg add "HKCU\\Software\\Classes\\.pdf\\OpenWithProgids" /v "CopyDevImpose" /t REG_SZ /d "" /f',
|
f'reg add "HKCU\\Software\\Classes\\.pdf\\OpenWithProgids" /v "CopyDevImpose" /t REG_SZ /d "" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose" /ve /d "CopyDev Imposing Tool" /f',
|
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose" /ve /d "CopyDev Imposing Tool" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose\\shell\\open\\command" /ve /d "\\"{exe}\\" \\"%1\\"" /f',
|
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose\\shell\\open\\command" /ve /d "\\"{exe}\\" \\"%1\\"" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose\\DefaultIcon" /ve /d "{exe},0" /f',
|
f'reg add "HKCU\\Software\\Classes\\CopyDevImpose\\DefaultIcon" /ve /d "{exe},0" /f',
|
||||||
# Menu contextuel
|
# Entrees individuelles dans le menu contextuel
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose" /ve /d "CopyDev Impose" /f',
|
# Ouvrir avec CopyDev
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose" /v "SubCommands" /t REG_SZ /d "" /f',
|
f'reg add "{base}\\CopyDev_Ouvrir" /ve /d "Ouvrir avec CopyDev Impose" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose" /v "Icon" /t REG_SZ /d "{exe},0" /f',
|
f'reg add "{base}\\CopyDev_Ouvrir" /v "Icon" /t REG_SZ /d "{exe},0" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\open" /ve /d "Ouvrir avec CopyDev" /f',
|
f'reg add "{base}\\CopyDev_Ouvrir\\command" /ve /d "\\"{exe}\\" \\"%1\\"" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\open\\command" /ve /d "\\"{exe}\\" \\"%1\\"" /f',
|
# Livret A4
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\bookletA4" /ve /d "Livret A4" /f',
|
f'reg add "{base}\\CopyDev_LivretA4" /ve /d "CopyDev: Livret A4" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\bookletA4\\command" /ve /d "\\"{exe}\\" --action booklet_a4 \\"%1\\"" /f',
|
f'reg add "{base}\\CopyDev_LivretA4\\command" /ve /d "\\"{exe}\\" --action booklet_a4 \\"%1\\"" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\bookletA3" /ve /d "Livret A3" /f',
|
# Livret A3
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\bookletA3\\command" /ve /d "\\"{exe}\\" --action booklet_a3 \\"%1\\"" /f',
|
f'reg add "{base}\\CopyDev_LivretA3" /ve /d "CopyDev: Livret A3" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\nup2x2" /ve /d "2x2 par feuille" /f',
|
f'reg add "{base}\\CopyDev_LivretA3\\command" /ve /d "\\"{exe}\\" --action booklet_a3 \\"%1\\"" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\nup2x2\\command" /ve /d "\\"{exe}\\" --action nup_2x2 \\"%1\\"" /f',
|
# 2x2
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\unbooklet" /ve /d "Delivretiser" /f',
|
f'reg add "{base}\\CopyDev_2x2" /ve /d "CopyDev: 2x2 par feuille" /f',
|
||||||
f'reg add "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose\\shell\\unbooklet\\command" /ve /d "\\"{exe}\\" --action unbooklet \\"%1\\"" /f',
|
f'reg add "{base}\\CopyDev_2x2\\command" /ve /d "\\"{exe}\\" --action nup_2x2 \\"%1\\"" /f',
|
||||||
|
# Delivretiser
|
||||||
|
f'reg add "{base}\\CopyDev_Delivretiser" /ve /d "CopyDev: Delivretiser" /f',
|
||||||
|
f'reg add "{base}\\CopyDev_Delivretiser\\command" /ve /d "\\"{exe}\\" --action unbooklet \\"%1\\"" /f',
|
||||||
]
|
]
|
||||||
for cmd in cmds:
|
for cmd in cmds:
|
||||||
subprocess.run(cmd, shell=True, capture_output=True)
|
subprocess.run(cmd, shell=True, capture_output=True)
|
||||||
@@ -1327,10 +1331,16 @@ class MainWindow(QMainWindow):
|
|||||||
return
|
return
|
||||||
import subprocess
|
import subprocess
|
||||||
try:
|
try:
|
||||||
|
base = "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell"
|
||||||
cmds = [
|
cmds = [
|
||||||
'reg delete "HKCU\\Software\\Classes\\CopyDevImpose" /f',
|
'reg delete "HKCU\\Software\\Classes\\CopyDevImpose" /f',
|
||||||
'reg delete "HKCU\\Software\\Classes\\.pdf\\OpenWithProgids" /v "CopyDevImpose" /f',
|
'reg delete "HKCU\\Software\\Classes\\.pdf\\OpenWithProgids" /v "CopyDevImpose" /f',
|
||||||
'reg delete "HKCU\\Software\\Classes\\SystemFileAssociations\\.pdf\\shell\\CopyDevImpose" /f',
|
f'reg delete "{base}\\CopyDevImpose" /f',
|
||||||
|
f'reg delete "{base}\\CopyDev_Ouvrir" /f',
|
||||||
|
f'reg delete "{base}\\CopyDev_LivretA4" /f',
|
||||||
|
f'reg delete "{base}\\CopyDev_LivretA3" /f',
|
||||||
|
f'reg delete "{base}\\CopyDev_2x2" /f',
|
||||||
|
f'reg delete "{base}\\CopyDev_Delivretiser" /f',
|
||||||
]
|
]
|
||||||
for cmd in cmds:
|
for cmd in cmds:
|
||||||
subprocess.run(cmd, shell=True, capture_output=True)
|
subprocess.run(cmd, shell=True, capture_output=True)
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ REPO = "jules/copydev-imposing-tool"
|
|||||||
BRANCH = "master"
|
BRANCH = "master"
|
||||||
|
|
||||||
# Version actuelle (incrementee a chaque release)
|
# Version actuelle (incrementee a chaque release)
|
||||||
VERSION = "3.4.1"
|
VERSION = "3.4.2"
|
||||||
|
|
||||||
|
|
||||||
def get_remote_version():
|
def get_remote_version():
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3.4.1
|
3.4.2
|
||||||
|
|||||||
Reference in New Issue
Block a user