func init // checks installation Adobe Photoshop and adds references include("AdobePhotoshop") // initialize instance if(linked("doDocument")) sys.add_var(this.name, 'ps.Document') end // make methods for properties sys._prop_init('.Height', 1, 0, 7, this.instance()) sys._prop_init('.Width', 1, 0, 7, this.instance()) sys._prop_init('ActiveChannels', 1, 0, 0, this.instance()) sys._prop_init('ActiveLayer', 1, 0, 0, this.instance()) sys._prop_init('ArtLayers', 1, 0, 0, this.instance()) sys._prop_init('BackgroundLayer', 1, 0, 0, this.instance()) sys._prop_init('BitsPerChannel', 1, 0, 0, this.instance()) sys._prop_init('.Channels', 1, 0, 0, this.instance()) sys._prop_init('ColorProfileName', 1, 0, 2, this.instance()) sys._prop_init('ColorProfileType', 1, 0, 0, this.instance()) sys._prop_init('FullName', 1, 0, 2, this.instance()) sys._prop_init('Info', 1, 0, 0, this.instance()) sys._prop_init('LayerComps', 1, 0, 0, this.instance()) sys._prop_init('Layers', 1, 0, 0, this.instance()) sys._prop_init('LayerSets', 1, 0, 0, this.instance()) sys._prop_init('Mode', 1, 0, 0, this.instance()) sys._prop_init('Name', 1, 0, 2, this.instance()) sys._prop_init('Path', 1, 0, 2, this.instance()) sys._prop_init('PathItems', 1, 0, 0, this.instance()) sys._prop_init('Resolution', 1, 0, 7, this.instance()) sys._prop_init('Saved', 1, 0, 104, this.instance()) sys._prop_init('Selection', 1, 0, 0, this.instance()) sys._prop_init('XMPMetadata', 1, 0, 0, this.instance()) // makes implementation of methods as properties sys._mtd_as_prop_init('SplitChannels()', this.instance()) // makes implementation of simple methods sys._method_init('Flatten', '', this.instance()) sys._method_init('MergeVisibleLayers', '', this.instance()) sys._method_init('RasterizeAllLayers', '', this.instance()) sys._method_init('RevealAll', '', this.instance()) sys._method_init('Save', '', this.instance()) end func doDocument(data) blk.println(this.codename, ' = ', d("Document", 20), ';') end func doActiveChannels(data) blk.println(this.instance(data), '.ActiveChannels = ', d("channels"), ';') end func doActiveLayer(data) blk.println(this.instance(data), '.ActiveLayer = ', d("layer"), ';') end func doBitsPerChannel(data) blk.println(this.instance(data), '.BitsPerChannel = ', d("depth"), ';') end func doColorProfileName(data) blk.println(this.instance(data), '.ColorProfileName = ', d("profilename", 2), ';') end func doColorProfileType(data) blk.println(this.instance(data), '.ColorProfileType = ', d("profiletype"), ';') end func doTrap(data) blk.println(this.instance(data), '.Trap(', d("width", 105), ');') end func .Document return(this.instance()) end func instance(data) if(linked("doDocument")) return(this.codename) else return(d("Document", 20)) end end