home *** CD-ROM | disk | FTP | other *** search
/ CD/PC Actual 11 / CDACTUAL11.iso / cdactual / demobin / share / os2 / VPREVAL / VISPRORX._ / BASE.EXT < prev    next >
Encoding:
Text File  |  1995-09-08  |  5.9 KB  |  256 lines

  1. @Work with files
  2. %File open
  3. $filename = VpFileDialog(window,'OPEN','*.*','Open File')
  4. IF LENGTH(filename) > 0 THEN
  5.    DO
  6.       DO WHILE LINES(filename)
  7.          value=LINEIN(filename)
  8.          /* insert here to use value */
  9.       END
  10.       rc=stream(filename,'c','close')
  11.    END
  12. %File save
  13. $filename = VpFileDialog(window,'SAVE','*.*','Save As')
  14. IF LENGTH(filename) > 0 THEN
  15.    DO
  16.       DO index = 1 to 10 by 1
  17.          /* insert here to load value */
  18.          rc=LINEOUT(filename,value)
  19.       END
  20.       rc=LINEOUT(filename) /*close*/
  21.    END
  22. %Picture open
  23. $filename = VpFileDialog(window,'OPEN','*.*','Open Picture')
  24. IF LENGTH(filename) > 0 THEN
  25.    DO
  26.      value = VpLoadPicture('FILE',filename)
  27.      /* insert here to use value */
  28.    END
  29. %Load picture
  30. $value = VpLoadPicture('FILE',filename)
  31. %Load bitmap from BLOB
  32. $value = VpLoadPicture('BLOB',value)
  33. %Load file icon
  34. $value = VpLoadPicture('FILEICON',filename)
  35. %Load system icon
  36. $/* valid index 1 - 22 */
  37. value = VpLoadPicture('SYSICON',index)
  38. %Load system bitmap
  39. $/* valid index 1 - 48 */
  40. value = VpLoadPicture('SYSBITMAP',index)
  41. %Release graphic
  42. $CALL VpFreePicture value
  43. %Load resource icon
  44. $value = VpLoadPicture('RESICON',index)
  45. %Load resource bitmap
  46. $value = VpLoadPicture('RESBMP',index)
  47.  
  48. @Message boxes
  49. %Plain
  50. $response=VpMessageBox(window,'title','message')
  51. %OK/Cancel
  52. $response=VpMessageBox(window,'title','message')
  53. %Yes/No
  54. $response=VpMessageBox(window,'title','message','YESNO')
  55. %Yes/No/Cancel
  56. $response=VpMessageBox(window,'title','message','YESNOCNCL')
  57. %Retry/Cancel
  58. $response=VpMessageBox(window,'title','message','RETRY')
  59. %Ignore/Cancel
  60. $response=VpMessageBox(window,'title','message','IGNORE')
  61.  
  62. @Rexx Constructs
  63. %If-then-else
  64. $IF value = 0 THEN
  65.    DO
  66.    END
  67. ELSE
  68.    DO
  69.    END
  70. %Iterative loop
  71. $DO index = 1 to 100 by 1
  72. END
  73. %Do while loop
  74. $DO WHILE value > 0
  75. END
  76. %Do until loop
  77. $DO UNTIL value > 0
  78. END
  79. %Select when
  80. $SELECT
  81.    WHEN value > 0
  82.       THEN
  83.    WHEN value = 0
  84.       THEN
  85.    WHEN value < 0
  86.       THEN
  87.    OTHERWISE
  88. END
  89.  
  90. @Window management
  91. %Size/position window
  92. $CALL VpWindow window,"SETPOS", x, y, xsize, ysize
  93. %Get window size
  94. $parse value VpWindow(window,"GETSIZE") with x y
  95. %Get window position
  96. $parse value VpWindow(window,"GETPOS") with x y
  97. %Set window title
  98. $CALL VpWindow window,"SETTITLE",value
  99. %Close window
  100. $CALL VpWindow window,"CLOSE"
  101. %Show window
  102. $CALL VpWindow window,"SHOW"
  103. %Hide window
  104. $CALL VpWindow window,"HIDE"
  105. %Make window active
  106. $CALL VpWindow window,"ACTIVATE"
  107. %Minimize window
  108. $CALL VpWindow window,"MINIMIZE"
  109. %Maximze window
  110. $CALL VpWindow window,"MAXIMIZE"
  111. %Restore window
  112. $CALL VpWindow window,"RESTORE"
  113. %Get screen size
  114. $parse value VpWindow(window,"GETSCREENSIZE")with x y
  115.  
  116.  
  117.  
  118.  
  119.  
  120. @Miscellaneous
  121. %Get date
  122. $value = DATE()
  123. %Get time
  124. $value = TIME()
  125. %Beep
  126. $/* 1000 Hz for 200 millisec */
  127. CALL VpBeep 1000,200
  128. %Set form drag info
  129. $/* max num items, type, rendering, moveok, copyok, linkok, default */
  130. CALL VpWindow window,"SETFORMDRAGINFO",1,"Plain Text","<DRM_OS2FILE,DRF_TEXT>",1,1,1,"MOVE"
  131. %Start drag
  132. $draginfo.0=1 /* count */
  133. draginfo.1=1 /* moveable */
  134. draginfo.2=1 /* copyable */
  135. draginfo.3=1 /* linkable */
  136. draginfo.4=0 /* optional icon */
  137. draginfo.1.1="Plain Text" /* type */
  138. draginfo.1.2="<DRM_OS2FILE,DRF_TEXT>" /* rendering */
  139. draginfo.1.3="c:\"    /* source dir */
  140. draginfo.1.4=filename /* source */
  141. draginfo.1.5=filename /* target */
  142. CALL VpWindow window,"DRAGSTART","DRAGINFO."
  143. %Set pointer
  144. $CALL VpWindow window,"SETPOINTER",value
  145. %Start timer
  146. $/* duration in 1/1000 secs */
  147. CALL VpWindow window,"STARTTIMER",duration
  148. %Stop timer
  149. $CALL VpWindow window,"STOPTIMER"
  150. %Set clipboard
  151. $CALL VpWindow window,"SETCLIPBOARD","TEXT",value
  152. %Get clipboard
  153. $value=VpWindow(window,"GETCLIPBOARD","TEXT")
  154.  
  155.  
  156. @Threads
  157. %Start thread
  158. $tid=VpThread('START',window, filename, arg1, arg2)
  159. %Kill thread
  160. $rc=VpThread('KILL', tid)
  161. %Suspend a thread
  162. $rc=VpThread('SUSPEND', tid)
  163. %Resuming a thread
  164. $rc=VpThread('RESUME', tid)
  165. %Get process identifier
  166. $pid=VpThread('GETPID')
  167. %Get thread identifier
  168. $tid=VpThread('GETTID')
  169. %Change thread priority
  170. $rc=VpThread('SETPRIORITY', priority, tid)
  171. %Get thread list
  172. $rc=VpThread('GETIDLIST', 'threadlst.')
  173. %Pause thread execution
  174. $rc=VpThread('SLEEP', time)
  175.  
  176.  
  177. @Application variables
  178. %Set variable
  179. $CALL VpAppVariable 'SET', variable, value
  180. %Get variable
  181. $value=VpAppVariable('GET', variable)
  182.  
  183. @Semaphores
  184. %Create MUTEX
  185. $semid=VpSemaphore('MUTEX', 'CREATE', semname, initstate)
  186. %Open MUTEX
  187. $semid=VpSemaphore('MUTEX', 'OPEN', semname)
  188. %Request access MUTEX
  189. $rc=VpSemaphore('MUTEX', 'WAITREQUEST', semid, timeout)
  190. %Release access MUTEX
  191. $rc=VpSemaphore('MUTEX', 'POSTRELEASE', semid)
  192. %Query MUTEX
  193. $value=VpSemaphore('MUTEX', 'QUERY', semid, 'OWNER.')
  194. %Close MUTEX
  195. $rc=VpSemaphore('MUTEX', 'CLOSE', semid)
  196. %Close event
  197. $semid=VpSemaphore('EVENT', 'CREATE', semname, initstate)
  198. %Open event
  199. $semid=VpSemaphore('EVENT', 'OPEN', semname)
  200. %Wat for event
  201. $rc=VpSemaphore('EVENT', 'WAITREQUEST', semid, timeout)
  202. %Post event
  203. $rc=VpSemaphore('EVENT', 'POSTRELEASE', semid)
  204. %Reset event
  205. $rc=VpSemaphore('EVENT', 'RESET', semid)
  206. %Query event
  207. $value=VpSemaphore('EVENT', 'QUERY', semid)
  208. %Close event
  209. $rc=VpSemaphore('EVENT', 'CLOSE', semid)
  210.  
  211. @VpPrint
  212. %List
  213. $CALL VpPrint window, "title", "subtitle", "Page %d", "LIST","10.Helvetica"
  214. %Array
  215. $CALL VpPrint window, "title", "subtitle", "Page %d", "ARRAY","10.Helvetica","DATA."
  216. %Form
  217. $CALL VpPrint window, "title", "subtitle", "Page %d", "FORM","10.Helvetica"
  218.  
  219. @VpFont
  220. %Font Dialog
  221. $value=VpFontDialog(window, "10.Courier")
  222.  
  223. @VpSharedMemory
  224. %Access
  225. $memhandle=VpSharedMemory("GETSHARED",name)
  226. %Allocate
  227. $memhandle=VpSharedMemory("ALLOC",name,size)
  228. %Free
  229. $CALL VpSharedMemory "FREE", memhandle
  230. %Get contents
  231. $value=VpSharedMemory("GET", memhandle)
  232. %Set contents
  233. $CALL VpSharedMemory "SET", memhandle, value
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.