WPCG mRpMနq M0] R# :i(5cՃ =T㐷\Mގ{$; 4EKV Cڮ~fr{vE`).]:ʒW488f k 6^{|>Jzi|~UFm$0^"ez֙-SG3Vy<I?8 tt}%GQWХW[:R`hz' o4فRiN+ga˃O;nx{lŰb8nRP%}NE)TT6Vޣpnʓ\Ds/lhX3tɤ5n{ Hυ]D.^qdrgπb#*]ۯV! dHaӪ>1C|!A4 # %N 0( 104@(@ 7@^ M@wY@]@Sr_@T @T|@WA mSB 0DjB 72BUNB .C 0N4C4C  CCCCCCCCCCCCCCCCCCCCCCCCCC 1uCCCCCC DDDDDDDN+D+D+D+D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D-D BDD 0DE AQTEE BkFkFkF FFFF D1FFF 0DFF G3G3G3G3G3G3G 0DGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG B-GMacro    ' 0Michael A. Koenecke00Michael A. Koenecke .   Lexmark Optra S 1250,,,,,,0X($95 ,C:\Data\Macros\Stamps.wcmA////510$'NotFound(Off!)H[LIB*@5Global (vBlock := "")oVBLOCK?While (?Substructure) // Exit headers, footers, footnotes, etc. HB+1 SubstructureExit() HEEndWhile XLWhile (?GraphicSelected) // Unselect any graphic or text boxes left selected HBP7 BoxEnd(Save!; Hide!) H[LI[LIEEndWhilewe-If (?BlockActive) // If something is selectedHB@dJI If (?InTable) // If within a table, select the text, not the table cell.HB>' SelectOff ()HE1 PosTableCellTop()HE 7X SelectOn (CharMode!)H[LIE7 PosTableCellBottom()HE/ SelectLineEnd ()HE/ EndIf;= vBlock := ?SelectedTextHBAVBLOCK/u SelectMode (Off!)H[LIEEndIfd/? If (NOT ?DocBlank)HB){Cl  BookmarkCreate ("bCurrent")HobCurrentLQE-  If (vBlock = "")rVBLOCKo*/  Call (GetBlock@)GETBLOCK@  EndIf EndIf m 1vBranch := "Software\Corel\WordPerfect\MacroData""Oo$Software\Corel\WordPerfect\MacroDataVBRANCHg .x := RegistryCreateKey (CurrentUser!; vBranch)#H[LIrVBRANCHLNB1* Xw 6vPassword := RegistryQueryValue (x; "StampsPassword")$H rXLI#oStampsPasswordLNB9* VPASSWORD/[ If (vPassword = 0)%r VPASSWORD[* < y := "Enter password if you want it entered automatically:"&oo4Enter password if you want it entered automatically: Yk 0 GetString (z; y; "Set Stamps.com Password"; 12)'H vZLR rYLN5oSet Stamps.com PasswordLN[ LUEi)s. 4 RegistrySetValue (x; "StampsPassword"; z; String!)(H rXLI#oStampsPasswordLN rZL@[LIB;*@)  vPassword := z) rZ VPASSWORD EndIf* Ox := RegistryOpenKey (LocalMachine!; "SOFTWARE\Stamps.com\IPostage"; ReadOnly!)+H[LI?oSOFTWARE\Stamps.com\IPostageLN[LIB2* XY5'vPath := RegistryQueryValue (x; "PATH"),H rXLIoPATHLNB9*VPATH5qClipboardPut (vBlock)-HrVBLOCKLQE*S$AppExecute (vPath + "\ipostage.exe").HrVPATH!o \ipostage.exeLVB(@_*While (AppLocate ("Stamps.com login") = 0)/H'oStamps.com loginLNB!([*n Wait (1)0H[LUE*<EndWhile1YY'If (vPassword <> "" AND vPassword <> 0)2r VPASSWORDo;r VPASSWORD[;- pKeys(vPassword)3r VPASSWORDPKEYS@5 SendKeys ("{Enter}")4Ho{Enter}LQE*Else5c, While (AppLocate ("Stamps.com login") <> 0)6H'oStamps.com loginLNB!([;` Wait (1)7H[LUE* EndWhile8ZEndIf9k0AppActivate (AppLocate ("Stamps.com"); Restore!);HHo Stamps.comLNB!(LN[ LIB(@3]SendKeys ("{Alt+F}")=Ho{Alt+F}LQE*1SendKeys ("{Down}")>Ho{Down}LQE*3SendKeys ("{Enter}")?Ho{Enter}LQE*3SendKeys ("{Alt+D}")@Ho{Alt+D}LQE*5SendKeys ("{Ctrl+V}")AHo{Ctrl+V}LQE**QuitBHE*-DLabel (GetBlock@)Dx := 0E[ X# PosDocTop ()FHE0RepeatG' PosLineBeg ()HHE,+1 y := ?RightCodeIHB@ Y'a PosLineEnd ()JHE.Q# If (y = 0) // If text on this lineK rY[*y7 If (x = 0 AND (?RightCode = 204 OR ?RightCode = 188))L rX[*HB@[*HB@[*?; BookmarkCreate ("A1")NH oA1LQE$ x := 1O[ Xc ElsePA# x := x +1Q rX[ X EndIfR@ If (?RightCode = 0 OR (?RightCode > 190 AND ?RightCode < 202))SHB@[*HB@[-HB@[2?@%} If (x > 2)T rX[-5 Go (DefineBlock@)U, DEFINEBLOCK ElseV x := 0W[ XI EndIfX EndIfY@C Else // No text on the lineZ!i/ If (x >2) // Block already defined, assign it[ rX[-K!5 PosCharPrevious ()\HE9 Label (DefineBlock@)]=_ BookmarkCreate ("A2")^H oA2LQE9 BookmarkFind ("A1")_H oA1LQEr- PosLineBeg ()`HE,;m SelectOn (CharMode!)aH[LIE9 BookmarkFind ("A2")bH oA2LQEr= BookmarkDelete ("A2")cH oA2LQEuAx vBlock := ?SelectedTextdHBAVBLOCK+ SelectOff ()eHE% EndIffK!9W BookmarkDelete ("A1")gH oA1LQEu x := 0h[ X EndIfi+ y := ?RightCodejHB@ Y)( PosCharNext ()kHE{8Until (y=0 or y=131 or y=134 or y=207 or x>6 or ?Page>1)m rY[* rY[*? rY[*? rY[*? rX[-?HBB@[-?a Returnn[|5`Procedure pKeys ( p1)p:/3/ P1 y := ""qo YA ForNext (x; 1; StrLen(p1))r[ XY #(F1-FIRST)H rP1LQB )r #(F1-FIRST)$( rX-$[$c #(F1-STEP),%r #(F1-STEP) rX XZ #(F1-FIRST) rXr #(F1-STEP)[2%-..%2..;/  z := SubStr (p1; x; 1)sH rP1LQ rXLU[LUB) Z)r  Switch (True)tY&] ) CaseOf z = ".": y = y + "{NumDecimal}"u( rZ o.**q'@ rYo {NumDecimal} Y_!* CaseOf z = "*": y = y + "{NumMultiply}"v .( rZ o***-(@ rY!o {NumMultiply} YS!$ CaseOf z = "\": y = y + "{VK220}"w .( rZ o\**(@ rYo{VK220} YS!$ CaseOf z = "-": y = y + "{VK109}"x .( rZ o-**)@ rYo{VK109} Y_K"* CaseOf z = "_": y = y + "{Shift+VK189}"y .( rZ o_**a*@ rY!o {Shift+VK189} Y_"* CaseOf z = ":": y = y + "{Shift+VK186}"z .( rZ o:**+@ rY!o {Shift+VK186} YS!#$ CaseOf z = " ": y = y + "{Space}"{ .( rZ o **+@ rYo{Space} YS#$ CaseOf z = ",": y = y + "{VK188}"| .( rZ o,**,@ rYo{VK188} Y#F CaseOf CtoN(z) >= 65 AND CtoN(z) <= 90: y = y + "{Shift+" + z + "}"} .(H rZLQB)[A.H rZLQB)[Z3*-@ rYo{Shift+ rZ o} YEr$ Default: y = y + "{"+z+"}"~ .@ rY o{ rZ o} Y!$ EndSwitch$ EndFors$ #(F1-FIRST) #(F1-STEP)%"% If (y <> "") rYo;/'O% SendKeys (y)H rYLQE*% EndIf/%EndProc[|5[)5%1] DEFINEBLOCK1DGETBLOCK+1p#PKEYSN!OEN WordPerfect)OENPSMacroFacility/OENPSMacroInterpreterS0Ma3|xbCurrentzT01 7fEC/Qk'!X(4SelectNumberNewDialogdInstructNewDialogdInstallNewDialog )  __,EnvelopeMacro##G&__Page_Ԁ  1  ڀof  3  U(3$ !  2i)(O Z6Times New Roman RegularH(O$A1DefineBlock@3#37=CIQYag1.a.i.(1)(a)(i)1)a)pKeysLevel 1Level 2Level 3Level 4Level 5 d(3$ !  WbUk_C<< CLevel 1Level 2Level 3Level 4Level 5P PdGetBlock@XX)! dxdx(3$ !  DefineBlock@GetBlock@($$   1  )Hairline d !  _,=2XXdd=%  ',,XX'//***************************************************************%    //*0  MACRO:04&&0` 4&4& Stamps.wcmp` &` & //*0  VERSION:0` && 2.0,February20,2004\` &` &  //*0  DESCRIPTION: Getsaddress,sendstoStamps.comsoftwareH&& //*0  AUTHOR:0` && 2004MichaelA.Koenecke(mkoenecke@alum.haverford.edu)4` &` & //***************************************************************   NotFound(Off!)     Global0  (vBlock:="") t&& While(?Substructure) 0 //0 & &Exitheaders,footers,footnotes,etc.  ` & &   SubstructureExit()  L  EndWhile%    8  While(?GraphicSelected) 0 //0 & &Unselectanygraphicortextboxesleftselected  $ &&   BoxEnd(Save!;Hide!)   EndWhile   If(?BlockActive) 0 ` //0 ` &` &Ifsomethingisselected l  & &   If(?InTable) 0 ` //0 ` &` &Ifwithinatable,selectthetext,notthetablecell. X  & &     SelectOff() D     PosTableCellTop() 0     SelectOn(CharMode!)      PosTableCellBottom()      SelectLineEnd() p   EndIf \   vBlock:=?SelectedText H   SelectMode(Off!) 4 EndIf    //0  Ifnoaddresswasselected,andnotblankdocument,searchfortheaddress.  &&  If(NOT?DocBlank) |   BookmarkCreate("bCurrent") h   If(vBlock="") T     Call(4e_O  5  GetBlock@6 O   7_R 9 ) @   EndIf , EndIf   //0  StufftosendblocktoStampshere;vBlockiswhatweenter ! && vBranch:="Software\Corel\WordPerfect\MacroData" !l! x:=RegistryCreateKey(CurrentUser!;vBranch) "X" vPassword:=RegistryQueryValue(x;"StampsPassword") #D # If(vPassword=0) $0!$   y:="Enterpasswordifyouwantitenteredautomatically:" %"%   GetString(z;y;"SetStamps.comPassword";12) &#&   RegistrySetValue(x;"StampsPassword";z;String!) x'#'   vPassword:=z d($(  EndIf P)%) x:=RegistryOpenKey(LocalMachine!;"SOFTWARE\Stamps.com\IPostage";ReadOnly!) <*&* vPath:=RegistryQueryValue(x;"PATH") (+'+ ClipboardPut(vBlock) ,(, AppExecute(vPath+"\ipostage.exe") -|)- While(AppLocate("Stamps.comlogin")=0)    Wait(1) p EndWhile \ If(vPassword<>""ANDvPassword<>0) H   pKeys(vPassword) 4   SendKeys("{Enter}")   Else     While(AppLocate("Stamps.comlogin")<>0)  t     Wait(1)  `   EndWhile  L  EndIf  8  //Wait(10)  $  AppActivate(AppLocate("Stamps.com");Restore!)   //Wait(10)   SendKeys("{Alt+F}") l  SendKeys("{Down}") X  SendKeys("{Enter}") D SendKeys("{Alt+D}") 0 SendKeys("{Ctrl+V}")  Quit  Label(% [ GetBlock@%[[)D \ x:=0 H PosDocTop() 4 Repeat     PosLineBeg()     y:=?RightCode |   PosLineEnd() h   If(y=0)0 4 //Iftextonthisline T4&4&     If(x=0AND(?RightCode=204OR?RightCode=188)) @  //0  Iffirstlineofblockandhardreturn(204)ORlinebreak(188)atend,bookmarkit ,&&       BookmarkCreate("A1")         x:=1 !      Else !l!       x:=x+1 "X"     EndIf #D # 0    If(?RightCode=0OR(?RightCode>190AND?RightCode<202))$0!$&&       If(x>2)  %"%        4 Go(4Nu O  5  DefineBlock@6Oerin  7NuN<) &#&       Else x'#'        4 x:=0 d($(       EndIf P)%)     EndIf <*&*   Else0  //Notextontheline (+'+&&     If(x>2)0 ` //Blockalreadydefined,assignit ,(,` &` &       PosCharPrevious() -|)-       Label(% d DefineBlock@%d )        0 4 BookmarkCreate("A2")p4&4&        4 BookmarkFind("A1") \        4 PosLineBeg() H        4 SelectOn(CharMode!) 4        4 BookmarkFind("A2")          4 BookmarkDelete("A2")          4 vBlock:=?SelectedText  t        4 SelectOff()  `     EndIf  L      BookmarkDelete("A1")  8      x:=0  $    EndIf      y:=?RightCode     PosCharNext() l  //Until(y=0ory=131ory=134ory=207ory=188orx>5or?Page>1) X  Until(y=0ory=131ory=134ory=207orx>6or?Page>1) D Return  0 Procedure% 8 pKeys%8zԀ(p1)`    y:="" p   ForNext(x;1;StrLen(p1)) \     z:=SubStr(p1;x;1) H     Switch(True) 4       CaseOfz=".": y=y+"{NumDecimal}"         CaseOfz="*": y=y+"{NumMultiply}"         CaseOfz="\": y=y+"{VK220}" |       CaseOfz="-": y=y+"{VK109}" h       CaseOfz="_": y=y+"{Shift+VK189}" T       CaseOfz=":": y=y+"{Shift+VK186}" @       CaseOfz="": y=y+"{Space}" ,       CaseOfz=",": y=y+"{VK188}"         CaseOfCtoN(z)>=65ANDCtoN(z)<=90: D y=y+"{Shift+"+z+"}" !        Default:y=y+"{"+z+"}" !l!     EndSwitch "X"   EndFor #D #   If(y<>"") $0!$     SendKeys(y) %"%   EndIf &#& EndProc%