home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / vxcliser.zip / VRCS.3 / CHTSAMP / TITLES / TITLES.VRX < prev    next >
Text File  |  1994-12-23  |  4KB  |  202 lines

  1. /*:VRX         Main
  2. */
  3. /*  Main
  4. */
  5. Main:
  6. /*  Process the arguments.
  7.     Get the parent window.
  8. */
  9.     parse source . calledAs .
  10.     parent = ""
  11.     argCount = arg()
  12.     argOff = 0
  13.     if( calledAs \= "COMMAND" )then do
  14.         if argCount >= 1 then do
  15.             parent = arg(1)
  16.             argCount = argCount - 1
  17.             argOff = 1
  18.         end
  19.     end
  20.     InitArgs.0 = argCount
  21.     if( argCount > 0 )then do i = 1 to argCount
  22.         InitArgs.i = arg( i + argOff )
  23.     end
  24.     drop calledAs argCount argOff
  25.  
  26. /*  Load the windows
  27. */
  28.     call VRInit
  29.     parse source . . spec
  30.     _VREPrimaryWindowPath = ,
  31.         VRParseFileName( spec, "dpn" ) || ".VRW"
  32.     _VREPrimaryWindow = ,
  33.         VRLoad( parent, _VREPrimaryWindowPath )
  34.     drop parent spec
  35.     if( _VREPrimaryWindow == "" )then do
  36.         call VRMessage "", "Cannot load window:" VRError(), ,
  37.             "Error!"
  38.         _VREReturnValue = 32000
  39.         signal _VRELeaveMain
  40.     end
  41.  
  42. /*  Process events
  43. */
  44.     call Init
  45.     signal on halt
  46.     do while( \ VRGet( _VREPrimaryWindow, "Shutdown" ) )
  47.         _VREEvent = VREvent()
  48.         interpret _VREEvent
  49.     end
  50. _VREHalt:
  51.     _VREReturnValue = Fini()
  52.     call VRDestroy _VREPrimaryWindow
  53. _VRELeaveMain:
  54.     call VRFini
  55. exit _VREReturnValue
  56.  
  57. VRLoadSecondary: procedure
  58.     name = arg( 1 )
  59.  
  60.     window = VRLoad( VRWindow(), VRWindowPath(), name )
  61.     call VRMethod window, "CenterWindow"
  62.     call VRSet window, "Visible", 1
  63.     call VRMethod window, "Activate"
  64. return window
  65.  
  66. /*:VRX         DDCB_ApplyTo_Change
  67. */
  68. DDCB_ApplyTo_Change:
  69.     call ResetControls
  70. return
  71.  
  72. /*:VRX         Fini
  73. */
  74. Fini:
  75.     /* Destroy the window
  76.     */
  77.  
  78.     window = VRWindow()
  79.     call VRSet window, "Visible", 0
  80.     drop window
  81. return 0
  82.  
  83. /*:VRX         Halt
  84. */
  85. Halt:
  86.     signal _VREHalt
  87. return
  88.  
  89. /*:VRX         Init
  90. */
  91. Init:
  92.     /* Create the window
  93.     */
  94.  
  95.     window = VRWindow()
  96.     call VRMethod window, "CenterWindow"
  97.     call VRSet window, "Visible", 1
  98.     call VRMethod window, "Activate"
  99.     drop window
  100.  
  101.     /* Fill in all the DDCB's
  102.     */
  103.  
  104.     call ResetControls
  105. return
  106.  
  107. /*:VRX         MI_ProdInfo_Click
  108. */
  109. MI_ProdInfo_Click:
  110.     /* Display the product information as a multiline
  111.        message dialog.
  112.     */
  113.  
  114.     buttons.0 = 1
  115.     buttons.1 = "Ok"
  116.     
  117.     message.0 = 4
  118.     message.1 = "Chart Titles Sample"
  119.     message.2 = ""
  120.     message.3 = "This sample application shows some"
  121.     message.4 = "of the text available on the chart."
  122.  
  123.     call VRMessageStem VRWindow(), "message.", ,
  124.         "Product Information", "I", "buttons.", 1, 1    
  125. return
  126.  
  127. /*:VRX         PB_Apply_Click
  128. */
  129. /* The following procedure updates the chart according to
  130.    the selections made in the entry fields.
  131. */
  132.  
  133. PB_Apply_Click:
  134.     /* Read values from controls 
  135.     */
  136.  
  137.     text = VRGet( "EF_Text", "Value" )
  138.     color = VRGet( "EF_Color", "Value" )
  139.     alignment = VRGet( "DDCB_Alignment", "Value" )
  140.  
  141.     call VRSet "WC_Titles", "Painting", 0
  142.  
  143.     /* Set all of the related attributes on the chart 
  144.     */
  145.  
  146.     call VRMethod "WC_Titles", "SetOption", applyTo, text
  147.     call VRMethod "WC_Titles", "SetOption", applyTo||"Color", color
  148.     call VRMethod "WC_Titles", "SetOption", applyTo||"Alignment", alignment
  149.  
  150.     /* Reset the entry fields.
  151.     */
  152.  
  153.     call ResetControls
  154.  
  155.     call VRSet "WC_Titles", "Painting", 1
  156. return
  157.  
  158. /*:VRX         Quit
  159. */
  160. Quit:
  161.     /* Close the application
  162.     */
  163.  
  164.     window = VRWindow()
  165.     call VRSet window, "Shutdown", 1
  166.     drop window
  167. return
  168.  
  169. /*:VRX         ResetControls
  170. */
  171. /* The following procedure fills in all the text fields and
  172.    DDCB boxes according to the selected in the Apply_To DDCB.
  173. */
  174.  
  175. ResetControls:
  176.     /* Find out which chart title we're talking about 
  177.     */
  178.  
  179.     applyTo = VRGet( "DDCB_ApplyTo", "SelectedString" )
  180.     
  181.     /* Get all of the related attributes from the chart 
  182.     */
  183.  
  184.     text = VRMethod( "WC_Titles", "GetOption", applyTo )
  185.     color = VRMethod( "WC_Titles", "GetOption", applyTo||"Color" )
  186.     alignment = VRMethod( "WC_Titles", "GetOption", applyTo||"Alignment" )
  187.  
  188.     /* Update the corresponding controls 
  189.     */
  190.  
  191.     call VRSet "EF_Text", "Value", text
  192.     call VRSet "EF_Color", "Value", color
  193.     call VRSet "DDCB_Alignment", "Value", alignment
  194. return
  195.  
  196. /*:VRX         Window1_Close
  197. */
  198. Window1_Close:
  199.     call Quit
  200. return
  201.  
  202.