func init // checks installation Adobe Acrobat include("AdobeAcrobat") // initialize instance sys.add_var(this.name, 'ac.CAcroAVDoc') // initialize properties if(isdef("Acrobat")) warning(this.name + ' - manager does not defined') else this.ac = sys.get_undef_manager("Acrobat") this.setfield('ex', 'ex' + this.id) end // initialize methods sys._method_init('BringToFront') sys._method_init('ClearSelection') sys._method_init('Close', 1) sys._method_init('Maximize', 1) sys._method_init('SetFrame', 0) sys._method_init('SetTextSelection', 0) sys._method_init('SetTitle', 2) sys._method_init('SetViewMode', 1) sys._method_init('ShowTextSelect') end func doView(data) if(not isdef("Acrobat")) linked("onError") ? blk.println('try {').inc() : '' blk.println(this.codename, ' = (ac.CAcroAVDoc)Activator.CreateInstance(Type.GetTypeFromProgID("AcroExch.AVDoc"));') event("onComplete", this.codename) if(linked("onError")) blk.dec().println('} catch(Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end end func doFindText(data) if((typeof(data)==5) and data.size()) blk.println(this.codename, '.FindText(', sys.to_type(sys.mt_pop(data), 2), ', ', sys.to_type(sys.mt_pop(data), 1), ', ', sys.to_type(sys.mt_pop(data), 1), ', ', sys.to_type(sys.mt_pop(data), 1), ');') end end func doOpen(data) if((typeof(data)==5) and data.size()) blk.println(this.codename, '.Open(', sys.to_type(sys.mt_pop(data), 2), ', ', sys.to_type(sys.mt_pop(data), 1), ');') else blk.println(this.codename, '.Open(', sys.to_type(data, 2), ', null);') end end func doOpenInWindowEx(data) if((typeof(data)==5) and data.size()) a = this.props("OpenFlags").value flg = ((a _and_ 1) ? '|(int) ac.AVOpenParams.AV_DOC_VIEW' : '') + ((a _and_ 2) ? '|(int) ac.AVOpenParams.AV_EXTERNAL_VIEW' : '') + ((a _and_ 4) ? '|(int) ac.AVOpenParams.AV_PAGE_VIEW' : '') if(linked("onError")) blk.println('try {').inc() .print('if (!') end blk.print(this.codename, '.OpenInWindowEx(', sys.to_type(sys.mt_pop(data), 2), ', ', '(int)', sys.to_type(sys.mt_pop(data), 1), ', ', '(0' + flg + ')', ', ', isdef("UseOpenParams") ? 0 : 1, ', ', this.props("PgNum").value, ', ', this.props("PageMode").value, ', ', this.props("ZoomType").value, ', ', this.props("Zoom").value, ', ', this.props("Top").value, ', ', this.props("Left").value, ')') if(linked("onError")) blk.println(') {').inc() event("onError", "Document does not open") blk.dec().println('}') .dec().println('} catch(Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') else blk.println(';') end end end func doPrintPages(data) if((typeof(data)==5) and data.size()) linked("onError") ? blk.println('try {').inc() : '' blk.println(this.codename, '.PrintPages', isdef("Silent") ? '' : 'Silent', isdef("UseExtended") ? '' : 'Ex', '(', sys.to_type(sys.mt_pop(data), 1), ', ', sys.to_type(sys.mt_pop(data), 1), ', ', isdef("PSLevel") ? 2 : 3, ', ', isdef("BinaryOk") ? 1 : 0, ', ', isdef("ShrinkToFit") ? 0 : 1, isdef("UseExtended") ? '' : (', ' + (isdef("Reverse") ? 0 : 1)), isdef("UseExtended") ? '' : (', ' + (isdef("FarEastFontOpt") ? 0 : 1)), isdef("UseExtended") ? '' : (', ' + (isdef("EmitHalftones") ? 0 : 1)), isdef("UseExtended") ? '' : (', -' + (3 + this.props("PageOption"))), ');') if(linked("onError")) blk.dec().println('} catch(Exception ', this.ex, ') {').inc() event("onError", this.ex + '.Message') blk.dec().println('}') end end end func PageView return(this.codename + '.GetAVPageView()') end func Frame return(this.codename + '.GetFrame()') end func PDDoc return(this.codename + '.GetPDDoc()') end func Title return(this.codename + '.GetTitle()') end func ViewMode return(this.codename + '.GetViewMode()') end func IsValid return(this.codename + '.IsValid()') end func View return(this.codename) end