Script d'appel de module externe

Scripts et tutoriels concernant les scripts
Règles du forum
Techniques pour gagner du temps ou automatiser des tâches
Répondre
Avatar du membre
fs999
entraideur doctorant
entraideur doctorant
Messages : 170
Enregistré le : 19 sept. 2015, 21:58
Sexe : Homme
Localisation : Luxembourg
Système d'exploitation : Windows 10
Système d'exploitation 64 bits : Oui
Version de PaintShop Pro : 2019 64 bits

Script d'appel de module externe

Message par fs999 » 29 juil. 2019, 16:43

Bonjour,

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)
                  }
              })
Je ne sais pas si on peut intercepter un abandon...

Frédéric
2019 Ultimate

Répondre