func init // checks installation Adobe Indesign and adds references include("AdobeIndesign") // adds assembly references if(this.props("VersionCS").value == '5.0') sys.add_assembly('Interop.InDesign', 'Interop.InDesign.dll', 'assembly\\AdobeCS5.0\\') elseif(this.props("VersionCS").value == '5.5') sys.add_assembly('Interop.InDesign', 'Interop.InDesign.dll', 'assembly\\AdobeCS5.5\\') elseif(this.props("VersionCS").value == '6.0') sys.add_assembly('Interop.InDesign', 'Interop.InDesign.dll', 'assembly\\AdobeCS6.0\\') end // initialize instance if(linked("Document") or not isdef("Name") or not user_level) sys.add_var(this.name, 'id.Document') end end func doOpen(data) if(linked("Document") or not isdef("Name") or not user_level) blk.println(this.codename, ' = ', this.make_open(data), ';') event("onComplete", this.codename) else event("onComplete", this.make_open(data)) end end func Document if(sys.is_linked(1) or not isdef("Name") or not user_level) return(this.codename) else return(this.make_open()) end end func make_open(data) return( d("Indesign", 20) + '.Open(' + d("Path") + ', ' + sys.get_typed_field('true', 'ShowingWindow', 104) + ', ' + sys.get_typed_field('id.idOpenOptions.idDefault', 'OpenOptions', 14, 'id.idOpenOptions') + ') as InDesign.Document') end