home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 106 / EnigmaAmiga106CD.iso / www / amosfactory / ext / lha / intui.lha / examples / Image_View.AMOS / Image_View.amosSourceCode
Encoding:
AMOS Source Code  |  1996-04-06  |  3.0 KB  |  131 lines

  1. Global WIDTH,HEIGHT,_ASL,_IFFLOADED,_SCREEN,_EXIT,_MENU,_MODE
  2. Global FILE$
  3. Amos To Back 
  4.  Extension_25_021E $2000,$100,,,,,,,
  5.  Extension_25_0070 $800,$1000,,,,,,,
  6.  Extension_25_0006 0,0,0,640,256,100,50,640,256
  7. _MENUS
  8. WIDTH=640 : HEIGHT=256 : _MODE=$8000
  9. Repeat 
  10. EV= Extension_25_0210 
  11. If EV=$2000 : _DEFAULT_PALETTE : End If 
  12. Until _EXIT=1
  13.  Extension_25_002C 0
  14. SCR= Extension_25_0562(0)
  15. If SCR>0 : Extension_25_02A8 0 : SCR=0 : End If 
  16. Erase 1
  17. Amos To Front 
  18. Procedure _DEFAULT_PALETTE
  19.  Extension_25_02F6 0,$AAA,$0,$FFF,$68C,,,,
  20.  Extension_25_0318 4
  21. Repeat 
  22. EV= Extension_25_0210 
  23. Until EV=$100
  24. _MENU= Extension_25_011E 
  25. If _MENU=1 : Extension_25_01BA 0 : Extension_25_01F8 0,0 To WIDTH,HEIGHT : End If 
  26. If _MENU=2 : _LOADIFF : End If 
  27. If _MENU=3 : _LOADIFF : End If 
  28. If _MENU=5 : _SAVEIFF : End If 
  29. If _MENU=7 : _EXIT=1 : End If 
  30. If _IFFLOADED=1
  31.  Extension_25_0522 1,0
  32. End If 
  33. End Proc
  34. Procedure _LOADIFF
  35.  Extension_25_03D6 1
  36. If _ASL=0
  37.  Extension_25_04A8 "sys:"
  38. End If 
  39. If _MENU=2 : _TEXT$="Pick A IFF To Load" : End If 
  40. If _MENU=3 : _TEXT$="Pick A DataType To Load" : End If 
  41. FILE$= Extension_25_0172(_TEXT$,"Load","Cancel",0,1,125,30,310,193)
  42. If FILE$>""
  43. _WINDOW
  44. Erase 1
  45. _ASL=1
  46. If _MENU=2
  47.  Extension_25_035C FILE$,1
  48. _IFFLOADED=1
  49. End If 
  50. If _MENU=3
  51.  Extension_25_053E 0,0,FILE$,1,1
  52. _IFFLOADED=1
  53. End If 
  54.  Extension_25_002C 1
  55. _OPENSCREEN
  56. End If 
  57. End Proc
  58. Procedure _SAVEIFF
  59.  Extension_25_03D6 1
  60. If _ASL=0
  61.  Extension_25_04A8 "sys:"
  62. End If 
  63. _TEXT$="Pick A File To Save IFF To"
  64. FILE$= Extension_25_0172(_TEXT$,"Save","Cancel",0,1,125,30,310,193)
  65. If FILE$>""
  66.  Extension_25_0522 1,0
  67.  Extension_25_05AA FILE$,0
  68. End If 
  69. End Proc
  70. Procedure _OPENSCREEN
  71. BASE=Start(1)
  72. WIDTH=Deek(BASE)
  73. HEIGHT=Deek(BASE+2)
  74. _MODE=Deek(BASE+4)
  75. DEPTH=Deek(BASE+6)
  76. 'If WIDTH>640 : WIDTH=640 : End If 
  77. A= Extension_25_032A(0)
  78. If A>0
  79.  Extension_25_002C 0
  80. End If 
  81. _SCR= Extension_25_0562(0)
  82. If _SCR>0 : Extension_25_02A8 0 : _SCR=0 : End If 
  83.  Extension_25_02BE $F,,,,,,,
  84.  Extension_25_0282 0,0,0,WIDTH,HEIGHT,DEPTH,0,0,_MODE
  85.  Extension_25_021E $2000,$100,,,,,,,
  86.  Extension_25_0070 $800,$1000,,,,,,,
  87.  Extension_25_0006 0,0,0,WIDTH,HEIGHT,100,50,WIDTH,HEIGHT
  88.  Extension_25_0340 0,1
  89. _MENUS
  90. End Proc
  91. Procedure _MENUS
  92.  Extension_25_0096 "Project"
  93. '
  94. ' $1=Checkit  $8=MenuToggle  $100=Checked
  95. '
  96.  Extension_25_00BE "Clear Screen","",,,,
  97.  Extension_25_00BE "Load IFF","",,,,
  98.  Extension_25_00BE "Load DataType","",,,,
  99.  Extension_25_00BE "","",,,,
  100.  Extension_25_00BE "Save IFF","",,,,
  101.  Extension_25_00BE "","",,,,
  102.  Extension_25_00BE "Quit","",,,,
  103.  Extension_25_00FE(0)
  104. End Proc
  105. Procedure _WINDOW
  106.  Extension_25_021E $400,,,,,,,,
  107.  Extension_25_0070 $2,$1000,,,,,,,
  108. WIDTH2=WIDTH/2
  109. HEIGHT2=HEIGHT/5
  110. X1=WIDTH/2-(WIDTH2/2)-20
  111. Y1=HEIGHT/2-(HEIGHT2)
  112. X2=WIDTH2/4
  113. If _MODE=0 : X2=6 : End If 
  114. If _MODE=4096 : X2=6 : End If 
  115. Y2=(HEIGHT2/2)+6
  116.  Extension_25_0006 1,X1,Y1,WIDTH2+20,HEIGHT2,WIDTH2+20,HEIGHT2,WIDTH2+20,HEIGHT2
  117.  Extension_25_01BA 1
  118. If _MENU=2
  119.  Extension_25_014C "  Loading Iff File",X2,Y2
  120. 'Wb Text Str$(_MODE),X2,Y2+10
  121. End If 
  122. If _MENU=3
  123.  Extension_25_014C "Loading DataType File",X2,Y2
  124. 'Wb Text Str$(_MODE),X2,Y2+10
  125. End If 
  126. Wait 200
  127. End Proc
  128. '
  129. '
  130. '
  131. '