home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / COMAL3-1.DMS / in.adf / CITDemos / CITDemo < prev    next >
Encoding:
Text File  |  1993-03-30  |  4.6 KB  |  177 lines

  1. // CIT demo
  2. //
  3. // This is a CIT version of GadToolsDemo
  4. //
  5.  
  6. USE CITScreen
  7. USE CITWindow
  8. USE CITGadgets
  9.  
  10. // Make some data for our gadgets
  11. DIM DayName$(0..6) OF 9
  12. DayName$(0):="Sunday"
  13. DayName$(1):="Monday"
  14. DayName$(2):="Tuesday"
  15. DayName$(3):="Wednesday"
  16. DayName$(4):="Thursday"
  17. DayName$(5):="Friday"
  18. DayName$(6):="Saturday"
  19.  
  20. DIM MonthName$(0..11) OF 9
  21. MonthName$(0):="January"
  22. MonthName$(1):="February"
  23. MonthName$(2):="March"
  24. MonthName$(3):="April"
  25. MonthName$(4):="May"
  26. MonthName$(5):="June"
  27. MonthName$(6):="July"
  28. MonthName$(7):="August"
  29. MonthName$(8):="September"
  30. MonthName$(9):="October"
  31. MonthName$(10):="November"
  32. MonthName$(11):="December"
  33.  
  34. DIM Error OF SHORT
  35.  
  36. DIM DemoWindow OF CITWindow
  37. DemoWindow.Position(50,20)
  38. DemoWindow.Size(530,150)
  39. DemoWindow.CloseGadget
  40. DemoWindow.DragBar
  41. DemoWindow.DepthGadget
  42. DemoWindow.Activate
  43. ComalScreen.InsObject(DemoWindow,Error)
  44. IF Error THEN
  45.   STOP "Could'nt open the window"
  46. ENDIF
  47.  
  48. // Make a QUIT gadget
  49. DIM QuitGad OF ButtonGadget
  50. QuitGad.Position(10,5)
  51. QuitGad.Label("QUIT",INSIDE)
  52. DemoWindow.InsObject(QuitGad,Error)
  53.  
  54. // Create a head line text using the read only TextGadget
  55. DIM Text OF TextGadget
  56. Text.Position(214,5)
  57. Text.Label("CIT demo",INSIDE+HIGHLIGHT)
  58. DemoWindow.InsObject(Text,Error)
  59.  
  60. // Make a string input gadget for our ListView gadget below
  61. // NOTE: do not create explicitely. ListView will do it for you
  62. DIM StringGad OF StringGadget
  63. StringGad.Size(150,14)
  64. StringGad.EventHandler(StringEvent())
  65. PROC StringEvent(ID OF USHORT)
  66.   PRINT "LISTVIEW STRING GADGET: string=",StringGad.Value$
  67. ENDPROC StringEvent
  68.  
  69. // Now, make the ListView
  70. DIM ListView OF ListViewGadget
  71. ListView.Position(10,41)
  72. ListView.Size(150,57)
  73. ListView.Label("Months:",ABOVE+HIGHLIGHT)
  74. ListView.ChoiceArray(MonthName$())
  75. ListView.ShowSelected(StringGad)
  76. ListView.Selected(3)
  77. ListView.EventHandler(ListEvent())
  78. DemoWindow.InsObject(ListView,Error)
  79. PROC ListEvent(ID OF USHORT)
  80.   PRINT "LISTVIEW GADGET: item=",MonthName$(ListView.Value)
  81. ENDPROC ListEvent
  82.  
  83. // Make a cycle gadget with names of week days
  84. DIM CycleGad OF CycleGadget
  85. CycleGad.Position(50,111)
  86. CycleGad.Size(100,12)
  87. CycleGad.Choices(DayName$())
  88. CycleGad.EventHandler(CycleEvent())
  89. DemoWindow.InsObject(CycleGad,Error)
  90. PROC CycleEvent(ID OF USHORT)
  91.   PRINT "CYCLE GADGET: item=",DayName$(CycleGad.Value)
  92. ENDPROC CycleEvent
  93.  
  94. // Make a mutually exclusive gadged (radio buttons) - also with day names
  95. DIM RadioButtons OF RadioButtonsGadget
  96. RadioButtons.Position(260,36)
  97. RadioButtons.Choices(DayName$(),LEFT)
  98. RadioButtons.Spacing(3)
  99. RadioButtons.EventHandler(RadioEvent())
  100. DemoWindow.InsObject(RadioButtons,Error)
  101. PROC RadioEvent(ID OF USHORT)
  102.   PRINT "RADIO BUTTON GADGET: item=",DayName$(RadioButtons.Value)
  103. ENDPROC RadioEvent
  104.  
  105. // And now a slider gadget with day of month
  106. DIM SliderGad OF SliderGadget
  107. SliderGad.Position(316,121)
  108. SliderGad.Size(180,12)
  109. SliderGad.Limits(1,31)
  110. SliderGad.Label("##",LEFT)
  111. SliderGad.Level(2)
  112. SliderGad.EventHandler(SliderEvent())
  113. DemoWindow.InsObject(SliderGad,Error)
  114. PROC SliderEvent(ID OF USHORT)
  115.   PRINT "SLIDER GADGET: ",SliderGad.Value
  116. ENDPROC SliderEvent
  117.  
  118. // A check box
  119. DIM CheckGad OF CheckboxGadget
  120. CheckGad.Label("Check Me",LEFT)
  121. CheckGad.Position(470,11)
  122. CheckGad.EventHandler(CheckEvent())
  123. DemoWindow.InsObject(CheckGad,Error)
  124. PROC CheckEvent(ID OF USHORT)
  125.   PRINT "CHECKBOX GADGET: state=",
  126.   IF CheckGad.Value THEN
  127.     PRINT "ON"
  128.   ELSE
  129.     PRINT "OFF"
  130.   ENDIF
  131. ENDPROC CheckEvent
  132.  
  133. // An integer Gadget for cosmic significance
  134. DIM IntegerGad OF IntegerGadget
  135. IntegerGad.Label("Cosmic significance:",LEFT+HIGHLIGHT)
  136. IntegerGad.Position(460,41)
  137. IntegerGad.Size(40,14)
  138. IntegerGad.Replace
  139. IntegerGad.Number(42)
  140. IntegerGad.EventHandler(IntegerEvent())
  141. DemoWindow.InsObject(IntegerGad,Error)
  142. PROC IntegerEvent(ID OF USHORT)
  143.   PRINT "INTEGER GADGET: value=",IntegerGad.Value
  144. ENDPROC IntegerEvent
  145.  
  146. // And make a button to play with the integer Gadget with
  147. DIM PlayGad OF ButtonGadget
  148. PlayGad.Position(400,61)
  149. PlayGad.Size(100,12)
  150. PlayGad.Label("INCREMENT",INSIDE)
  151. PlayGad.EventHandler(PlayEvent())
  152. DemoWindow.InsObject(PlayGad,Error)
  153. PROC PlayEvent(ID OF USHORT)
  154.   IntegerGad.Number(IntegerGad.Value+1)
  155.   PRINT "INCREMENT INTEGER: value=",IntegerGad.Value
  156. ENDPROC PlayEvent
  157.  
  158. // Neat-o! make a ready-to-go palette selector Gadget
  159. DIM Palette OF PaletteGadget
  160. Palette.Position(350,82)
  161. Palette.Size(150,30)
  162. Palette.Color(2)
  163. Palette.IndicatorWidth(20)
  164. Palette.EventHandler(PaletteEvent())
  165. DemoWindow.InsObject(Palette,Error)
  166. PROC PaletteEvent(ID OF USHORT)
  167.   PRINT "PALETTE GADGET: color=",Palette.Value
  168. ENDPROC PaletteEvent
  169.  
  170. IF Error THEN
  171.   PRINT "Could'nt create one or more of the gadgets"
  172. ELSE
  173.   WHILE NOT (DemoWindow.ClosePressed OR QuitGad.Pressed) DO WAIT
  174. ENDIF
  175.  
  176. ComalScreen.RemObject(DemoWindow)
  177.