J'ai créé un script qui ouvre un nouveau calque, puis j'appelle le module concerné.
Seulement si l'on clique sur abandon, le script demande si l'on veut continuer le script ou pas.
Je voudrais intercepter cela, donc sans message, et supprimer ce calque.
J'ai essayé de voir ce que renvois le module mais j'ai l'erreur de script : TypeError: cannot concatenate 'str' and 'NoneType' objects
.
Code : Tout sélectionner
from PSPApp import *
import PSPUtils
def ScriptProperties():
return {
'Author': u'F. Schneider',
'Copyright': u'\u00A9 2013-19 by F. Schneider',
'Description': u'Adjust 5.2',
'Host': u'PaintShop Pro',
'Host Version': u'16.00'
}
def Do(Environment):
# EnableOptimizedScriptUndo
App.Do( Environment, 'EnableOptimizedScriptUndo', {
'GeneralSettings': {
'ExecutionMode': App.Constants.ExecutionMode.Default,
'AutoActionMode': App.Constants.AutoActionMode.Match,
'Version': ((15,0,0),1)
}
})
# LayerDuplicate
App.Do( Environment, 'LayerDuplicate', {
'GeneralSettings': {
'ExecutionMode': App.Constants.ExecutionMode.Default,
'AutoActionMode': App.Constants.AutoActionMode.Match,
'Version': ((17,0,0),1)
}
})
# Propriétés de calque
App.Do( Environment, 'LayerProperties', {
'General': {
'Opacity': None,
'Name': u'Topaz Adjust',
'IsVisible': None,
'IsTransparencyLocked': None,
'LinkSet': None,
'UseHighlight': None,
'PaletteHighlightColor': None,
'GroupLink': None,
'BlendMode': None
},
'BlendRanges': None,
'Path': (0,0,[],False),
'ArtMediaTexture': None,
'Effects': None,
'BrightnessContrast': None,
'ChannelMixer': None,
'ColorBalance': None,
'CurveParams': None,
'HSL': None,
'Threshold': None,
'Levels': None,
'Posterize': None,
'Vibrancy': None,
'Overlay': None,
'LocalToneMapping': None,
'Invert': None,
'HistogramAdjustment': None,
'FillLightClarity': None,
'GeneralSettings': {
'ExecutionMode': App.Constants.ExecutionMode.Silent,
'AutoActionMode': App.Constants.AutoActionMode.Default,
'Version': ((18,0,0),1)
}
})
# Topaz Labs_Topaz Adjust 5
res = App.Do( Environment, 'Topaz Labs_Topaz Adjust 5', {
'GeneralSettings': {
'ExecutionMode': App.Constants.ExecutionMode.Interactive,
'Version': ((15,0,0),1)
}
})
if res == App.Constants.Boolean.false:
# DeleteLayer
App.Do( Environment, 'DeleteLayer', {
'Path': None,
'MergeMask': True,
'WorkingMode': 1,
'GeneralSettings': {
'ExecutionMode': App.Constants.ExecutionMode.Silent,
'AutoActionMode': App.Constants.AutoActionMode.Match,
'Version': ((21,0,0),1)
}
})
Frédéric