home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / Converter / DC-PGS21.DMS / in.adf / Extras / DevDocs.LHA / DeveloperDocs / pgs-arexx.doc < prev    next >
Encoding:
Text File  |  1996-06-03  |  73.6 KB  |  2,954 lines

  1. TABLE OF CONTENTS
  2.  
  3. photogenics/ABOUT
  4. photogenics/ADDSPACE
  5. photogenics/ADDTEXT
  6. photogenics/ADDTEXTDO
  7. photogenics/ADDTEXTFONT
  8. photogenics/ALPHA
  9. photogenics/ALPHATOPAINT
  10. photogenics/ASKBOOLEAN
  11. photogenics/ASKDRAWER
  12. photogenics/ASKFILE
  13. photogenics/ASKNUMBER
  14. photogenics/ASKSAVEFILE
  15. photogenics/ASKSIZE
  16. photogenics/ASKSTRING
  17. photogenics/ASKTWONUMBERS
  18. photogenics/BRUSH
  19. photogenics/BRUSHSIZE
  20. photogenics/BUFFER
  21. photogenics/CLEAR
  22. photogenics/CLEARPAINT
  23. photogenics/CLONE
  24. photogenics/CLOSE
  25. photogenics/CLOSEPROGRESS
  26. photogenics/COLOUR
  27. photogenics/COMPOSE
  28. photogenics/CROP
  29. photogenics/DEPTH
  30. photogenics/EFFECT
  31. photogenics/EFFECTAREA
  32. photogenics/EFFECTPAINT
  33. photogenics/ELLIPSE
  34. photogenics/ELLIPSEFILL
  35. photogenics/FILLIMAGE
  36. photogenics/FIX
  37. photogenics/FIXKEEP
  38. photogenics/GETLINE
  39. photogenics/GETPAINTMODE
  40. photogenics/GETTRANSLINE
  41. photogenics/HEIGHT
  42. photogenics/HELP
  43. photogenics/INVERTALPHA
  44. photogenics/INVERTPAINT
  45. photogenics/KPRINTF
  46. photogenics/LINE
  47. photogenics/LISTBRUSHES
  48. photogenics/LISTEFFECTS
  49. photogenics/LISTLOADERS
  50. photogenics/LISTMODES
  51. photogenics/LISTSAVERS
  52. photogenics/LOAD
  53. photogenics/LOADHIDE
  54. photogenics/LOADHIDEGIO
  55. photogenics/LOADGIO
  56. photogenics/LOADVIRT
  57. photogenics/MODEOPTS
  58. photogenics/NEW
  59. photogenics/NEWVIRT
  60. photogenics/OPENPROGRESS
  61. photogenics/PAINTMODE
  62. photogenics/PAINTTOALPHA
  63. photogenics/PGSTOBACK
  64. photogenics/PGSTOFRONT
  65. photogenics/PLOT
  66. photogenics/PRESSURE
  67. photogenics/QUIT
  68. photogenics/RECT
  69. photogenics/RECTFILL
  70. photogenics/REDRAW
  71. photogenics/RELEASELINE
  72. photogenics/RELEASETRANSLINE
  73. photogenics/RENAME
  74. photogenics/RESIZETILED
  75. photogenics/ROTATE
  76. photogenics/SAVE
  77. photogenics/SAVECLIP
  78. photogenics/SCALE
  79. photogenics/SECONDARY
  80. photogenics/SELECTSIM
  81. photogenics/SETALPHA
  82. photogenics/SETIMAGE
  83. photogenics/SETPROGRESS
  84. photogenics/SETSECONDARY
  85. photogenics/SHEAR
  86. photogenics/SHOWERROR
  87. photogenics/SHOWMESSAGE
  88. photogenics/TRANSFIX
  89. photogenics/TRANSGRAD
  90. photogenics/TRANSPARENCY
  91. photogenics/UNDO
  92. photogenics/VCLIP
  93. photogenics/WARPER
  94. photogenics/WIDTH
  95. photogenics/ABOUT
  96.  
  97.         NAME
  98.                 ABOUT   - Display the Photogenics About requester.
  99.  
  100.         SYNOPSIS
  101.                 ABOUT
  102.  
  103.         FUNCTION
  104.                 The About requester is displayed and script execution   
  105.                 paused until the requester is closed.
  106.  
  107.         INPUTS
  108.                 None
  109.  
  110.         RETURNS
  111.  
  112.         NOTES
  113.         
  114.         SEE ALSO
  115.  
  116.         EXAMPLE
  117.                 /* show about requester */
  118.                 address PHOTOGENICS.1
  119.                 ABOUT
  120.  
  121.         BUGS   
  122.  
  123. photogenics/ADDSPACE
  124.  
  125.         NAME
  126.                 ADDSPACE - Add space to the edges of an image.
  127.  
  128.         SYNOPSIS
  129.                 ADDSPACE buffer top left bottom right
  130.  
  131.         FUNCTION
  132.                 Adds more space to the outside of the image (borders).
  133.                 
  134.         INPUTS
  135.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  136.                          LOADGIO or NEW
  137.  
  138.                 top    - number of pixels to add to the top.
  139.  
  140.                 left   - number of pixels to add to the left.
  141.  
  142.                 bottom - number of pixels to add to the bottom.
  143.  
  144.                 right  - number of pixels to add to the right.
  145.  
  146.         
  147.         
  148.         RETURNS
  149.  
  150.         NOTES
  151.  
  152.         SEE ALSO
  153.  
  154.         EXAMPLE
  155.  
  156.         BUGS                    
  157. photogenics/ADDTEXT
  158.  
  159.         NAME
  160.                 ADDTEXT - Select the text for use in AddText.
  161.  
  162.         SYNOPSIS
  163.                 ADDTEXT buffer x y justify text
  164.  
  165.         FUNCTION
  166.                 Sets the text used in ADDTEXT to the selected font
  167.                 parameters.
  168.  
  169.         INPUTS
  170.  
  171.                 buffer  - the image buffer to draw text into.
  172.  
  173.                 x       - the x coordinate of the top left hand corner.
  174.                 y       - the y coordinate of the top left hand corner.
  175.                 justify - how to justify the text:
  176.                                 0 - left
  177.                                 1 - right
  178.                                 2 - center
  179.  
  180.                 text    - the text to print. Use newline characters     
  181.                           to split the line up.
  182.         
  183.         
  184.         RETURNS
  185.  
  186.         NOTES
  187.                 This doesn't actually draw the text. You need to issue an
  188.                 ADDTEXTDO command to draw, once ADDTEXT and ADDTEXTFONT
  189.                 are set.
  190.                 
  191.         SEE ALSO
  192.                 ADDTEXT ADDTEXTDO
  193.         EXAMPLE
  194.  
  195.         BUGS                    
  196. photogenics/ADDTEXTDO
  197.  
  198.         NAME
  199.                 ADDTEXTDO - Perform an addtext operation
  200.  
  201.         SYNOPSIS
  202.                 ADDTEXTDO buffer
  203.  
  204.         FUNCTION
  205.                 Applies the AddText operation previously set up
  206.                 with ADDTEXTFONT and ADDTEXT
  207.  
  208.         INPUTS
  209.  
  210.                 buffer - Pointer to the buffer. Must be the same as used
  211.                          in ADDTEXT. 
  212.         
  213.         
  214.         RETURNS
  215.  
  216.         NOTES
  217.  
  218.         SEE ALSO
  219.                 ADDTEXT ADDTEXTFONT
  220.         EXAMPLE
  221.  
  222.         BUGS                    
  223. photogenics/ADDTEXTFONT
  224.  
  225.         NAME
  226.                 ADDTEXTFONT - Select the font for use in AddText
  227.  
  228.         SYNOPSIS
  229.                 ADDTEXTFONT fontname fontsize fontstyle
  230.  
  231.         FUNCTION
  232.                 Sets the font used in ADDTEXT to the selected font
  233.                 parameters.
  234.  
  235.         INPUTS
  236.  
  237.                 fontname  - Name of the font. Must be in quotes, and
  238.                             end with .font
  239.  
  240.                 fontsize  - The font size (vertical), eg. 8
  241.                         
  242.                 fontstyle - The style of the font (eg whether it is bold
  243.                             or normal). use 0 for default style. See
  244.                             Amiga RKM's for more information on font
  245.                             styles.
  246.         
  247.         
  248.         RETURNS
  249.  
  250.         NOTES
  251.  
  252.         SEE ALSO
  253.                 ADDTEXT ADDTEXTDO
  254.         EXAMPLE
  255.  
  256.         BUGS                    
  257. photogenics/ALPHA
  258.  
  259.         NAME
  260.                 ALPHA - Return a pointer to the current alpha channel
  261.                         image.
  262.  
  263.         SYNOPSIS
  264.                 ALPHA
  265.  
  266.         FUNCTION
  267.                 Return a pointer to the current alpha image, if one
  268.                 is selected within Photogenics.
  269.  
  270.         INPUTS
  271.         
  272.         RETURNS
  273.                 Buffer is a unique pointer to the alpha image buffer. 
  274.                 This result is used as a lock on the image for all further 
  275.                 operations.
  276.         
  277.                 rc = 0 on success, 1 if there was no alpha image.
  278.                 
  279.         NOTES
  280.  
  281.  
  282.         SEE ALSO
  283.                 BUFFER SECONDARY
  284.  
  285.         EXAMPLE
  286.                         
  287.         BUGS
  288. photogenics/ALPHATOPAINT
  289.  
  290.         NAME
  291.                 ALPHATOPAINT - Moves the Alpha Channel to the paintlayer.
  292.                             
  293.  
  294.         SYNOPSIS
  295.                 ALPHATOPAINT buffer
  296.  
  297.         FUNCTION
  298.                 The Alpha channel, if one is selected, is moved into
  299.                 the paintlayer for the currently selected image (it
  300.                 is converted to greyscale).
  301.  
  302.         INPUTS
  303.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  304.                 LOADGIO, NEW, etc.
  305.  
  306.         RETURNS
  307.                 
  308.                 
  309.         NOTES
  310.  
  311.         SEE ALSO
  312.                 PAINTTOALPHA
  313.         EXAMPLE
  314.  
  315.         BUGS
  316. photogenics/ASKBOOLEAN
  317.  
  318.         NAME
  319.                 ASKBOOLEAN - Ask a 'yes'/'no' type question.
  320.  
  321.         SYNOPSIS
  322.                 result ASKBOOLEAN title prompt gadget1 gadget2
  323.  
  324.         FUNCTION
  325.                 A requester is displayed. 
  326.  
  327.         INPUTS
  328.                 title  - the title for the message requester
  329.                          (eg. "Continue Request")
  330.  
  331.                 prompt - the text required inside the requester
  332.                          (eg. "Do you wish to continue:")
  333.  
  334.                 gadget1- the text for gadget1 
  335.                          (eg "Yes please!")
  336.  
  337.                 gadget2- the text for gadget2
  338.                          (eg "Sorry, no.")
  339.  
  340.         RETURNS
  341.                 result - a string containing the resultant number.
  342.  
  343.         NOTES
  344.                 
  345.         SEE ALSO
  346.  
  347.         EXAMPLE
  348.                         
  349.         BUGS                    
  350.  
  351.  
  352. photogenics/ASKDRAWER
  353.  
  354.         NAME
  355.                 ASKDRAWER - Ask the user to select a drawer.
  356.  
  357.         SYNOPSIS
  358.                 result ASKDRAWER title drawer
  359.  
  360.         FUNCTION
  361.                 A directory requester is displayed and a directory requested.
  362.  
  363.         INPUTS
  364.                 title  - the title for the file requester
  365.                          (eg. "'File Request'")
  366.  
  367.                 drawer - the default path for the file requester
  368.  
  369.         RETURNS
  370.                 result - a string containing the directory selected.
  371.  
  372.         NOTES
  373.                 
  374.         SEE ALSO
  375.                 ASKFILE ASKSAVEFILE
  376.         EXAMPLE
  377.                         
  378.         BUGS                    
  379.  
  380. photogenics/ASKFILE
  381.  
  382.         NAME
  383.                 ASKFILE - Ask the user to select a file.
  384.  
  385.         SYNOPSIS
  386.                 result ASKFILE title drawer
  387.  
  388.         FUNCTION
  389.                 A file requester is displayed and a filename requested.
  390.  
  391.         INPUTS
  392.                 title  - the title for the file requester
  393.                          (eg. "'File Request'")
  394.  
  395.                 drawer - the default path for the file requester
  396.  
  397.         RETURNS
  398.                 result - a string containing the filename selected.
  399.  
  400.         NOTES
  401.                 
  402.         SEE ALSO
  403.                 ASKSAVEFILE ASKDRAWER
  404.         EXAMPLE
  405.                         
  406.         BUGS                    
  407.  
  408. photogenics/ASKNUMBER
  409.  
  410.         NAME
  411.                 ASKNUMBER - Ask the user to select a number.
  412.  
  413.         SYNOPSIS
  414.                 result ASKNUMBER title prompt min max
  415.  
  416.         FUNCTION
  417.                 A number requester is displayed. 
  418.  
  419.         INPUTS
  420.                 title  - the title for the message requester
  421.                          (eg. "Age Request")
  422.  
  423.                 prompt - the text required inside the requester
  424.                          (eg. "Please enter your age:")
  425.  
  426.                 min    - the minimum value for the result.
  427.                          (eg. "3")
  428.  
  429.                 max    - the maximum value for the result.
  430.                          (eg. "133")
  431.  
  432.         RETURNS
  433.                 result - a string containing the resultant number.
  434.  
  435.         NOTES
  436.                 
  437.         SEE ALSO
  438.                 ASKTWONUMBERS
  439.         EXAMPLE
  440.                         
  441.         BUGS                    
  442.  
  443. photogenics/ASKSAVEFILE
  444.  
  445.         NAME
  446.                 ASKSAVEFILE - Ask the user to select a file (for save).
  447.  
  448.         SYNOPSIS
  449.                 result ASKSAVEFILE title drawer
  450.  
  451.         FUNCTION
  452.                 A file requester (of the black-background Save variety)
  453.                 is displayed and a filename requested.
  454.  
  455.         INPUTS
  456.                 title  - the title for the file requester
  457.                          (eg. "'File Request'")
  458.  
  459.                 drawer - the default path for the file requester
  460.  
  461.         RETURNS
  462.                 result - a string containing the filename selected.
  463.  
  464.         NOTES
  465.                 
  466.         SEE ALSO
  467.                 ASKFILE ASKDRAWER
  468.         EXAMPLE
  469.                         
  470.         BUGS                    
  471.  
  472. photogenics/ASKSIZE
  473.  
  474.         NAME
  475.                 ASKSIZE - Ask for an image size.
  476.  
  477.         SYNOPSIS
  478.                 result ASKSIZE title def_x def_y
  479.  
  480.         FUNCTION
  481.                 An Image dimensions requester (like the one used
  482.                 for New Image) is displayed.    
  483.  
  484.                 The size selected is returned in result.
  485.  
  486.         INPUTS
  487.                 title  - the title for the message requester
  488.                          (eg. "'Size for new Thing'")
  489.  
  490.                 def_x  - The default setting for the x slider.
  491.                 
  492.                 def_y  - The default setting for the y slider.
  493.  
  494.         RETURNS
  495.                 result - a string containing the dimensions selected
  496.                          seperated by a space.
  497.  
  498.         NOTES
  499.                 
  500.         SEE ALSO
  501.  
  502.         EXAMPLE
  503.                         
  504.         BUGS                    
  505. photogenics/ASKSTRING
  506.  
  507.         NAME
  508.                 ASKSTRING - Ask the user to enter a string.
  509.  
  510.         SYNOPSIS
  511.                 result ASKSTRING title prompt
  512.  
  513.         FUNCTION
  514.                 A string requester is displayed. 
  515.  
  516.         INPUTS
  517.                 title  - the title for the message requester
  518.                          (eg. "Name Request")
  519.                 prompt - the text required inside the requester
  520.                          (eg. "Please enter your name:")
  521.         RETURNS
  522.                 result - a string containing the resultant string.
  523.  
  524.         NOTES
  525.                 
  526.         SEE ALSO
  527.  
  528.         EXAMPLE
  529.                         
  530.         BUGS                    
  531. photogenics/ASKTWONUMBERS
  532.  
  533.         NAME
  534.                 ASKTWONUMBERS - Ask for two numbers.
  535.  
  536.         SYNOPSIS
  537.                 result ASKTWONUMBERS title prompt min max prompt2 min2 max2
  538.  
  539.         FUNCTION
  540.                 A number requester is displayed. 
  541.  
  542.         INPUTS
  543.                 title  - the title for the message requester
  544.                          (eg. "'Age Request'")
  545.  
  546.                 prompt - the text required inside the requester
  547.                          (eg. "'Please enter your age:'")
  548.  
  549.                 min    - the minimum value for the result.
  550.                          (eg. "3")
  551.  
  552.                 max    - the maximum value for the result.
  553.                          (eg. "133")
  554.  
  555.                 prompt2 - the text required inside the requester
  556.                          (eg. "'Please enter your shoesize:'")
  557.  
  558.                 min    - the minimum value for the result.
  559.                          (eg. "1")
  560.  
  561.                 max    - the maximum value for the result.
  562.                          (eg. "50")
  563.  
  564.         RETURNS
  565.                 result - a string containing the resultant numbers
  566.                          seperated by a space.
  567.  
  568.         NOTES
  569.                 
  570.         SEE ALSO
  571.                 ASKNUMBER
  572.         EXAMPLE
  573.                         
  574.         BUGS                    
  575. photogenics/BRUSH
  576.  
  577.         NAME
  578.                 BRUSH  - Sets the current brush for painting operations
  579.  
  580.         SYNOPSIS
  581.                 BRUSH brushname
  582.                 
  583.  
  584.         FUNCTION
  585.                 The brush is selected as the brush for further painting
  586.                 operations.
  587.  
  588.         INPUTS
  589.                 brushname - the name of the brush, in quotes.
  590.         
  591.         RETURNS
  592.                 
  593.         NOTES
  594.  
  595.         SEE ALSO
  596.  
  597.         EXAMPLE
  598.                 /* Set brush to AirBrush. */
  599.                 address PHOTOGENICS.1
  600.                 BRUSH "AirBrush"
  601.         BUGS
  602. photogenics/BRUSHSIZE
  603.  
  604.         NAME
  605.                 BRUSHSIZE  - Sets the current brush size
  606.  
  607.         SYNOPSIS
  608.                 BRUSHSIZE size
  609.                 
  610.  
  611.         FUNCTION
  612.                 The brush is resized to the selected size
  613.  
  614.         INPUTS
  615.                 size - the requested size, in pixels.
  616.         
  617.         RETURNS
  618.                 
  619.         NOTES
  620.  
  621.         SEE ALSO
  622.  
  623.         EXAMPLE
  624.  
  625.         BUGS
  626. photogenics/BUFFER
  627.  
  628.         NAME
  629.                 BUFFER  - Return a pointer to the currently selected buffer.
  630.  
  631.         SYNOPSIS
  632.                 BUFFER
  633.                 
  634.  
  635.         FUNCTION
  636.                 If a buffer is selected inside Photogenics, the buffer 
  637.                 number is returned.
  638.  
  639.         INPUTS
  640.                 None
  641.         
  642.         RETURNS
  643.                 Buffer is a unique pointer to the image buffer. This    
  644.                 result is used as a pointer to 
  645.                 the image for all further operations. 
  646.         
  647.                 rc = 0 on success, 1 if there was any problems preventing 
  648.                 the image loading.
  649.                 
  650.         NOTES
  651.                 This is useful if you wish to write an effect macro to 
  652.                 apply to the current image within Photogenics. 
  653.  
  654.         SEE ALSO
  655.  
  656.         EXAMPLE
  657.                 /* fill current buffer */
  658.                 option results
  659.                 address PHOTOGENICS.1
  660.                 BUFFER
  661.                 FILLIMAGE result                        
  662.         BUGS
  663. photogenics/CLEAR
  664.  
  665.         NAME
  666.                 CLEAR - Clear the image.
  667.  
  668.         SYNOPSIS
  669.                 CLEAR buffer r g b
  670.  
  671.         FUNCTION
  672.                 Clear the image buffer to the RGB value supplied.
  673.         INPUTS
  674.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  675.                          LOADGIO or NEW
  676.  
  677.                 r      - red component (0 to 255)
  678.                 g      - green component (0 to 255)
  679.                 b      - blue component (0 to 255)
  680.  
  681.         RETURNS
  682.  
  683.         NOTES
  684.  
  685.         SEE ALSO
  686.  
  687.         EXAMPLE
  688.  
  689.         BUGS
  690.                 Doesn't currently work for virtual images.
  691. photogenics/CLEARPAINT
  692.  
  693.         NAME
  694.                 CLEARPAINT - Clears the paint layer
  695.  
  696.         SYNOPSIS
  697.                 CLEARPAINT buffer
  698.  
  699.         FUNCTION
  700.                 Clears the paintlayer attached to the buffer.
  701.         INPUTS
  702.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  703.                          LOADGIO or NEW
  704.  
  705.         RETURNS
  706.  
  707.         NOTES
  708.  
  709.         SEE ALSO
  710.  
  711.         EXAMPLE
  712.  
  713.         BUGS
  714.              
  715. photogenics/CLONE
  716.  
  717.         NAME
  718.                 CLONE - Clone an image.
  719.  
  720.         SYNOPSIS
  721.                 CLONE buffer
  722.  
  723.         FUNCTION
  724.                 Clones a photogenics image buffer. A new buffer pointer
  725.                 is returned.
  726.  
  727.         INPUTS
  728.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  729.                          LOADGIO or NEW
  730.         
  731.         RETURNS
  732.                 A new buffer pointer for the cloned image.
  733.         NOTES
  734.                 The name of the cloned image is automatically created
  735.                 using the same algorithmn that Workbench uses for copies
  736.                 of files.
  737.                 (filename, Copy of Filename, Copy 2 of Filename, etc.)
  738.  
  739.         SEE ALSO
  740.  
  741.         EXAMPLE
  742.                 /* free the current buffer */
  743.                 options results
  744.                 address PHOTOGENICS.1
  745.                 BUFFER
  746.                 CLOSE result
  747.         BUGS                
  748.                 You cannot currently clone virtual images.    
  749. photogenics/CLOSE
  750.  
  751.         NAME
  752.                 CLOSE - Close an image.
  753.  
  754.         SYNOPSIS
  755.                 CLOSE buffer
  756.  
  757.         FUNCTION
  758.                 Close a Photogenics image buffer, freeing its memory and
  759.                 losing any unsaved changes.
  760.  
  761.         INPUTS
  762.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  763.                          LOADGIO or NEW
  764.         
  765.         RETURNS
  766.  
  767.         NOTES
  768.                 
  769.         SEE ALSO
  770.  
  771.         EXAMPLE
  772.                 /* free the current buffer */
  773.                 options results
  774.                 address PHOTOGENICS.1
  775.                 BUFFER
  776.                 CLOSE result
  777.         BUGS                    
  778. photogenics/CLOSEPROGRESS
  779.  
  780.         NAME
  781.                 CLOSEPROGRESS - Close the progress meter.
  782.  
  783.         SYNOPSIS
  784.                 CLOSEPROGRESS
  785.  
  786.         FUNCTION
  787.                 Closes the Progress meter.
  788.  
  789.         INPUTS
  790.         
  791.         RETURNS
  792.  
  793.         NOTES
  794.                 It is *absolutely* imperative that you always
  795.                 CLOSEPROGRESS before ending a script where you have called OPENPROGRESS         
  796.  
  797.         SEE ALSO
  798.                 OPENPROGRESS SETPROGRESS
  799.         EXAMPLE
  800.  
  801.         BUGS                    
  802. photogenics/COLOUR
  803.  
  804.         NAME
  805.                 COLOUR - set the colour.
  806.  
  807.         SYNOPSIS
  808.                 COLOUR buffer RGB r g b
  809.  
  810.         FUNCTION
  811.                 Set the RGB values for the current paint colour for the
  812.                 selected buffer.
  813.  
  814.         INPUTS
  815.                 buffer  - pointer to a buffer returned by BUFFER, LOAD,
  816.                           LOADGIO or NEW
  817.  
  818.                 RGB     - a string to indicate the colour model (in this
  819.                                 case, "RGB")
  820.  
  821.                 r       - red value (0 to 255)
  822.  
  823.                 g       - green value (0 to 255)
  824.         
  825.                 b       - blue value (0 to 255) 
  826.         
  827.         RETURNS
  828.                 
  829.         NOTES
  830.                 
  831.         SEE ALSO
  832.  
  833.         EXAMPLE
  834.                 /* free the current buffer */
  835.                 options results
  836.                 address PHOTOGENICS.1
  837.                 BUFFER
  838.                 CLOSE result
  839.         BUGS                    
  840. photogenics/COMPOSE
  841.  
  842.         NAME
  843.                 COMPOSE - Compose one image into another.
  844.                             
  845.  
  846.         SYNOPSIS
  847.                 COMPOSE - main second x y x1 y1 settings
  848.  
  849.         FUNCTION
  850.                 The second image is composed into the main buffer at
  851.                 the coordinates given using the selected settings.
  852.  
  853.         INPUTS
  854.                 main     - pointer to a buffer returned by BUFFER, LOAD,
  855.                            LOADGIO, NEW, etc.
  856.  
  857.                 second   - pointer to a buffer returned by BUFFER, LOAD,
  858.                            LOADGIO, NEW, etc.
  859.                 
  860.                 x        - left side rectangle
  861.                 y        - top of rectangle
  862.                 x1       - right side of rectangle      
  863.                 y1       - bottom of rectangle
  864.  
  865.                 settings - a number:
  866.  
  867.                         0 - standard compose
  868.                         1 - Brightness Key mode set.
  869.                         2 - Transparent Black mode set.
  870.                         3 - Transparent Colour mode set.
  871.                         
  872.         RETURNS
  873.                 
  874.                 
  875.         NOTES
  876.  
  877.         SEE ALSO
  878.  
  879.         EXAMPLE
  880.  
  881.         BUGS
  882.                 Doesn't currently allow other paintmodes to be used.
  883.                 This will be fixed soon.
  884. photogenics/CROP
  885.  
  886.         NAME
  887.                 CROP - Crop an image.
  888.  
  889.         SYNOPSIS
  890.                 CROP buffer x y width height
  891.  
  892.         FUNCTION
  893.                 Crops an image buffer to the rectangle with top left
  894.                 coordinate x,y, width pixels wide and height pixels high.
  895.  
  896.         INPUTS
  897.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  898.                          LOADGIO or NEW
  899.  
  900.                 x      - x coord for top left corner of new rectangle.
  901.                 
  902.                 y      - y coord for top left corner of new rectangle.
  903.  
  904.                 width  - width of new image in pixels
  905.  
  906.                 height - height of new image in pixels
  907.  
  908.  
  909.         
  910.         
  911.         RETURNS
  912.  
  913.         NOTES
  914.  
  915.         SEE ALSO
  916.                 HEIGHT
  917.  
  918.         EXAMPLE
  919.                 /* crop the current buffer */
  920.                 options results
  921.                 address PHOTOGENICS.1
  922.                 BUFFER
  923.                 CROP result 10 10 50 50 
  924.         BUGS                    
  925. photogenics/DEPTH
  926.  
  927.         NAME
  928.                 DEPTH - Returns the number of bits per pixel in the image
  929.  
  930.         SYNOPSIS
  931.                 DEPTH <buffer>
  932.  
  933.         FUNCTION
  934.                 The number of bits per pixel of the image is returned.
  935.  
  936.         INPUTS
  937.                 buffer = a pointer to the buffer returned by NEW, LOAD 
  938.                          or LOADGIO
  939.         
  940.         RETURNS
  941.                 result is the bits per pixel value
  942.                 
  943.         NOTES
  944.                 Currently only 24-bit buffers are supported, so 24 is
  945.                 always returned. Future versions will support other bit
  946.                 depths.
  947.  
  948.         SEE ALSO
  949.  
  950.         BUGS
  951. photogenics/EFFECT
  952.  
  953.         NAME
  954.                 EFFECT - Apply an effect to an image.
  955.  
  956.         SYNOPSIS
  957.                 EFFECT buffer effect [parameters]
  958.  
  959.         FUNCTION
  960.                 The selected effect is appled to the whole image.
  961.  
  962.         INPUTS
  963.                 buffer     - A valid buffer OR virtual image pointer.
  964.                 effect     - The name of the effect (without .efx)
  965.                 parameters - Optional parameters (see effect docs)
  966.         
  967.         RETURNS
  968.                 
  969.         NOTES
  970.                 Always keep the effect name in quotes, or AREXX
  971.                 will upper-case it and Photogenics won't be able to
  972.                 find it.
  973.  
  974.         SEE ALSO
  975.                 EFFECTPAINT EFFECTAREA
  976.         EXAMPLE
  977.                         
  978.         BUGS
  979. photogenics/EFFECTAREA
  980.  
  981.         NAME
  982.                 EFFECTAREA - Apply an effect to a selected region of an
  983.                              image.
  984.  
  985.         SYNOPSIS
  986.                 EFFECTAREA buffer effect [parameters]
  987.  
  988.         FUNCTION
  989.                 The selected effect is appled to the chosen region
  990.                 of the image.
  991.  
  992.         INPUTS
  993.                 buffer     - A valid buffer or a virtual image pointer.
  994.                 effect     - The name of the effect (without .efx)
  995.                 parameters - Optional parameters (see effect docs)
  996.         
  997.         RETURNS
  998.                 
  999.         NOTES
  1000.                 Always keep the effect name in quotes, or AREXX
  1001.                 will upper-case it and Photogenics won't be able to
  1002.                 find it.
  1003.  
  1004.         SEE ALSO
  1005.                 EFFECT EFFECTAREA
  1006.         EXAMPLE
  1007.                         
  1008.         BUGS
  1009. photogenics/EFFECTPAINT
  1010.  
  1011.         NAME
  1012.                 EFFECTPAINT - Apply an effect to the paintlayer of an image.
  1013.  
  1014.         SYNOPSIS
  1015.                 EFFECTPAINT buffer effect [parameters]
  1016.  
  1017.         FUNCTION
  1018.                 The selected effect is appled to the paintlayer of an
  1019.                 image.
  1020.  
  1021.         INPUTS
  1022.                 buffer     - A valid buffer.
  1023.                 effect     - The name of the effect (without .efx)
  1024.                 parameters - Optional parameters (see effect docs)
  1025.         
  1026.         RETURNS
  1027.                 
  1028.         NOTES
  1029.                 Always keep the effect name in quotes, or AREXX
  1030.                 will upper-case it and Photogenics won't be able to
  1031.                 find it.
  1032.  
  1033.         SEE ALSO
  1034.                 EFFECT EFFECTAREA
  1035.         EXAMPLE
  1036.                         
  1037.         BUGS
  1038. photogenics/ELLIPSE
  1039.  
  1040.         NAME
  1041.                 ELLIPSE
  1042.  
  1043.         SYNOPSIS
  1044.                 ELLIPSE buffer x y w h
  1045.  
  1046.         FUNCTION
  1047.                 Draws an ellipse (or circle) into buffer using the current
  1048.                 brush tool, center at x,y, width w and height h.
  1049.  
  1050.         INPUTS
  1051.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1052.                          LOADGIO or NEW
  1053.         
  1054.                 x      - x position where 0<=x<WIDTH
  1055.                 y      - y position where 0<=y<HEIGHT
  1056.                 w      - width
  1057.                 h      - height
  1058.  
  1059.         RETURNS
  1060.  
  1061.         NOTES
  1062.                 
  1063.         SEE ALSO
  1064.  
  1065.         EXAMPLE
  1066.  
  1067.         BUGS                    
  1068. photogenics/ELLIPSEFILL
  1069.  
  1070.         NAME
  1071.                 ELLIPSEFILL
  1072.  
  1073.         SYNOPSIS
  1074.                 ELLIPSEFILL buffer x y w h
  1075.  
  1076.         FUNCTION
  1077.                 Draws a filled ellipse (or circle) into buffer.
  1078.                 Center at x,y, width w and height h.
  1079.  
  1080.         INPUTS
  1081.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1082.                          LOADGIO or NEW
  1083.         
  1084.                 x      - x position where 0<=x<WIDTH
  1085.                 y      - y position where 0<=y<HEIGHT
  1086.                 w      - width
  1087.                 h      - height
  1088.  
  1089.         RETURNS
  1090.  
  1091.         NOTES
  1092.                 
  1093.         SEE ALSO
  1094.  
  1095.         EXAMPLE
  1096.  
  1097.         BUGS                    
  1098. photogenics/FILLIMAGE
  1099.  
  1100.         NAME
  1101.                 FILLIMAGE - Fill the paintlayer on an image buffer. 
  1102.  
  1103.         SYNOPSIS
  1104.            FILLIMAGE <buffer>
  1105.  
  1106.         FUNCTION
  1107.                 The paintlayer (the 8-bit transparency channel you paint 
  1108.                 into) is filled with a solid colour (or a gradient pattern 
  1109.                 depending on the currently selected gradient).
  1110.  
  1111.         INPUTS
  1112.                 buffer = a pointer to the buffer returned by NEW, LOAD or 
  1113.                          LOADGIO
  1114.         
  1115.         RETURNS
  1116.                 rc = 0 on success, 1 if there was any problems preventing 
  1117.                      the image loading.
  1118.                 
  1119.         NOTES
  1120.  
  1121.         SEE ALSO
  1122.  
  1123.         EXAMPLE
  1124.                         /* Open an image and fill the paintlayer */
  1125.                         options results                                                         
  1126.                         address PHOTOGENICS.1
  1127.                         LOAD "ram:text.jpg"
  1128.                         FILLIMAGE result
  1129.                         
  1130.         BUGS
  1131. photogenics/FIX
  1132.  
  1133.         NAME
  1134.                 FIX
  1135.  
  1136.         SYNOPSIS
  1137.                 FIX buffer
  1138.  
  1139.         FUNCTION
  1140.                 Makes changes applied to buffer permanent.
  1141.  
  1142.         INPUTS
  1143.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1144.                          LOADGIO or NEW
  1145.         
  1146.         RETURNS
  1147.  
  1148.         NOTES
  1149.                 
  1150.         SEE ALSO
  1151.  
  1152.         EXAMPLE
  1153.                 /* fix changes in the currently selected buffer */
  1154.                 options results
  1155.                 address PHOTOGENICS.1
  1156.                 BUFFER
  1157.                 FIX result
  1158.         BUGS
  1159.                         
  1160. photogenics/FIXKEEP - Apply paintlayer changes, but keep paintlayer.
  1161.  
  1162.         NAME
  1163.                 FIXKEEP
  1164.  
  1165.         SYNOPSIS
  1166.                 FIXKEEP buffer
  1167.  
  1168.         FUNCTION
  1169.                 Makes changes applied via the paintlayer permanent,
  1170.                 but unlike FIX the contents of the paintlayer are not
  1171.                 cleared, so further operations can be carried out.
  1172.         INPUTS
  1173.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1174.                          LOADGIO or NEW
  1175.         
  1176.         RETURNS
  1177.  
  1178.         NOTES
  1179.                 
  1180.         SEE ALSO
  1181.  
  1182.         EXAMPLE
  1183.  
  1184.         BUGS
  1185.                         
  1186. photogenics/GETLINE
  1187.  
  1188.         NAME
  1189.                 GETLINE - return the address of a 24-bit data line
  1190.  
  1191.         SYNOPSIS
  1192.                 GETLINE buffer y
  1193.  
  1194.         FUNCTION
  1195.                 A powerful function which must be used with care.
  1196.                 GETLINE provides access to the 24-bit internal data
  1197.                 stored in Photogenics.
  1198.  
  1199.                 This returns the address of the 24-bit data, which you
  1200.                 can then manipulate as you wish.
  1201.                 
  1202.                 The data is stored in RGBRGBRGB... format, with 1 byte
  1203.                 per colour component, three bytes per pixel, no pad data.
  1204.                 
  1205.  
  1206.         INPUTS
  1207.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1208.                          LOADGIO or NEW
  1209.  
  1210.                 y      - The line (0<=y<height) to access.
  1211.         
  1212.         RETURNS
  1213.                 The address of the RGB data.
  1214.  
  1215.         NOTES
  1216.                 ALWAYS RELEASELINE after you have finished accessing the
  1217.                 data.   
  1218.         
  1219.                 DO NOT ATTEMPT any other photogenics operations that alter
  1220.                 the image data (FIX, SCALE, CROP, etc.) while you have
  1221.                 a line locked.
  1222.         
  1223.                 DO NOT GETLINE MORE LINES AT A TIME THAN YOU NEED,
  1224.                 although it is safe to allocate more than one at a time,
  1225.                 as long as they are all released when finished with.
  1226.  
  1227.                 NEVER access the data after RELEASELINE has been called.
  1228.                 
  1229.                 
  1230.  
  1231.         SEE ALSO
  1232.                 RELEASELINE
  1233.  
  1234.         EXAMPLE
  1235.  
  1236.         BUGS               
  1237.                 Does not support Virtual Images yet.     
  1238. photogenics/GETPAINTMODE
  1239.  
  1240.         NAME
  1241.                 GETPAINTMODE - return the paintmode for a buffer.
  1242.  
  1243.         SYNOPSIS
  1244.                 GETPAINTMODE buffer 
  1245.  
  1246.         FUNCTION
  1247.                 Get the paintmode currently selected for this buffer.
  1248.                 
  1249.         INPUTS
  1250.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1251.                          LOADGIO or NEW
  1252.  
  1253.         
  1254.         RETURNS
  1255.                 The name of the paintmode.
  1256.  
  1257.         NOTES
  1258.  
  1259.         SEE ALSO
  1260.  
  1261.         EXAMPLE
  1262.  
  1263.         BUGS               
  1264. photogenics/GETTRANSLINE
  1265.  
  1266.         NAME
  1267.                 GETTRANSLINE - return the address of 8-bit trans line
  1268.  
  1269.         SYNOPSIS
  1270.                 GETTRANSLINE buffer y
  1271.  
  1272.         FUNCTION
  1273.                 A powerful function which must be used with care.
  1274.                 GETLINE provides access to the 8-bit internal data
  1275.                 for the paintlayer stored in Photogenics.
  1276.  
  1277.                 This returns the address of the 8-bit data, which you
  1278.                 can then manipulate as you wish.
  1279.                 
  1280.                 The data is stored with 1 byte per pixel, no pad data.
  1281.                 
  1282.                 0 is transparent, 255 is opaque (assuming the transparency
  1283.                 slider is set to 0%)
  1284.  
  1285.         INPUTS
  1286.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1287.                          LOADGIO or NEW
  1288.  
  1289.                 y      - The line (0<=y<height) to access.
  1290.         
  1291.         RETURNS
  1292.                 The address of the paintlayer data.
  1293.  
  1294.         NOTES
  1295.                 ALWAYS RELEASEPAINTLINE after you have finished accessing 
  1296.                 the data.   
  1297.         
  1298.                 DO NOT ATTEMPT any other photogenics operations that alter
  1299.                 the image data (FIX, SCALE, CROP, etc.) while you have
  1300.                 a line locked.
  1301.         
  1302.                 DO NOT GETTRANSLINE MORE LINES AT A TIME THAN YOU NEED,
  1303.                 although it is safe to allocate more than one at a time,
  1304.                 as long as they are all released when finished with.
  1305.  
  1306.                 NEVER access the data after RELEASETRANSLINE has been called.
  1307.                 
  1308.                 
  1309.  
  1310.         SEE ALSO
  1311.                 RELEASETRANSLINE
  1312.  
  1313.         EXAMPLE
  1314.  
  1315.         BUGS               
  1316. photogenics/HEIGHT
  1317.  
  1318.         NAME
  1319.                 HEIGHT - return the height of the image.
  1320.  
  1321.         SYNOPSIS
  1322.                 HEIGHT buffer
  1323.  
  1324.         FUNCTION
  1325.                 Used to determine the height of a Photogenics image buffer.
  1326.  
  1327.         INPUTS
  1328.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1329.                          LOADGIO or NEW
  1330.         
  1331.         RETURNS
  1332.                 height in pixels.
  1333.  
  1334.         NOTES
  1335.                 
  1336.         SEE ALSO
  1337.                 WIDTH
  1338.  
  1339.         EXAMPLE
  1340.                 /* display the height of the currently selected buffer */
  1341.                 options results
  1342.                 address PHOTOGENICS.1
  1343.                 BUFFER
  1344.                 HEIGHT result
  1345.                 say "Image is " || result || " pixels high"                     
  1346.         BUGS                    
  1347. photogenics/HELP
  1348.  
  1349.         NAME
  1350.                 HELP
  1351.  
  1352.         SYNOPSIS
  1353.                 HELP
  1354.  
  1355.         FUNCTION
  1356.                 Open the Photogenics on-line help.
  1357.  
  1358.         INPUTS
  1359.         
  1360.         RETURNS
  1361.  
  1362.         NOTES
  1363.                 
  1364.         SEE ALSO
  1365.  
  1366.         EXAMPLE
  1367.  
  1368.         BUGS                    
  1369. photogenics/INVERTALPHA
  1370.  
  1371.         NAME
  1372.                 INVERTALPHA - Inverts the Alpha Channel image.
  1373.                             
  1374.  
  1375.         SYNOPSIS
  1376.                 INVERTALPHA 
  1377.  
  1378.         FUNCTION
  1379.                 The Alpha Channel is inverted.
  1380.  
  1381.         INPUTS
  1382.  
  1383.         RETURNS
  1384.                 
  1385.                 
  1386.         NOTES
  1387.  
  1388.         SEE ALSO
  1389.  
  1390.         EXAMPLE
  1391.  
  1392.         BUGS
  1393. photogenics/INVERTPAINT
  1394.  
  1395.         NAME
  1396.                 INVERTPAINT - Inverts the paintlayer on an image.
  1397.                             
  1398.  
  1399.         SYNOPSIS
  1400.                 INVERTPAINT buffer
  1401.  
  1402.         FUNCTION
  1403.                 The paintlayer is inverted.
  1404.  
  1405.         INPUTS
  1406.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1407.                 LOADGIO, NEW, etc.
  1408.  
  1409.         RETURNS
  1410.                 
  1411.                 
  1412.         NOTES
  1413.  
  1414.         SEE ALSO
  1415.  
  1416.         EXAMPLE
  1417.  
  1418.         BUGS
  1419. photogenics/KPRINTF
  1420.  
  1421.         NAME
  1422.                 KPRINTF
  1423.  
  1424.         SYNOPSIS
  1425.                 KPRINTF string
  1426.  
  1427.         FUNCTION
  1428.                 Prints a string to the serial port. This is
  1429.                 useful for debugging purposes.
  1430.  
  1431.         INPUTS
  1432.                 string - A string.
  1433.  
  1434.         RETURNS
  1435.  
  1436.         NOTES
  1437.                 Written for our own debugging purposes. You may find
  1438.                 this a useful way to monitor script process (if you
  1439.                 have a serial terminal attached to your Amiga serial
  1440.                 port.)
  1441.  
  1442.         SEE ALSO
  1443.  
  1444.         EXAMPLE
  1445.  
  1446.         BUGS                    
  1447. photogenics/LINE
  1448.  
  1449.         NAME
  1450.                 LINE
  1451.  
  1452.         SYNOPSIS
  1453.                 LINE buffer x y x1 y1
  1454.  
  1455.         FUNCTION
  1456.                 Draws a line in the current brush into the image starting
  1457.                 at coordinates x,y and ending at x1,y1
  1458.  
  1459.                 This is the equivelant of a single click on the image at the
  1460.                 given coordinates with the standard drawing tool.
  1461.  
  1462.         INPUTS
  1463.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  1464.                          LOADGIO or NEW
  1465.         
  1466.                 x      - x position where 0<=x<WIDTH
  1467.                 y      - y position where 0<=y<HEIGHT
  1468.                 x1     - x1 position where 0<=x1<WIDTH
  1469.                 y1     - y1 position where 0<=y1<HEIGHT
  1470.  
  1471.         RETURNS
  1472.  
  1473.         NOTES
  1474.                 
  1475.         SEE ALSO
  1476.  
  1477.         EXAMPLE
  1478.  
  1479.         BUGS                    
  1480. photogenics/LISTBRUSHES
  1481.  
  1482.         NAME
  1483.                 LISTBRUSHES
  1484.  
  1485.         SYNOPSIS
  1486.                 result LISTBRUSHES
  1487.  
  1488.         FUNCTION
  1489.                 Return a list of all the brushes currently available in
  1490.                 Photogenics.
  1491.  
  1492.         INPUTS
  1493.  
  1494.         RETURNS
  1495.                 A string containing all available brushes, each
  1496.                 seperated by a space.
  1497.         NOTES
  1498.                 
  1499.         SEE ALSO
  1500.                 LISTSAVERS LISTLOADERS LISTEFFECTS LISTMODES
  1501.         EXAMPLE
  1502.                         
  1503.         BUGS                    
  1504. photogenics/LISTEFFECTS
  1505.  
  1506.         NAME
  1507.                 LISTEFFECTS
  1508.  
  1509.         SYNOPSIS
  1510.                 result LISTEFFECTS
  1511.  
  1512.         FUNCTION
  1513.                 Return a list of all the effects currently available in
  1514.                 Photogenics.
  1515.  
  1516.         INPUTS
  1517.  
  1518.         RETURNS
  1519.                 A string containing all available effects, each
  1520.                 seperated by a space.
  1521.         NOTES
  1522.                 
  1523.         SEE ALSO
  1524.                 LISTSAVERS LISTMODES LISTLOADERS
  1525.         EXAMPLE
  1526.                         
  1527.         BUGS                    
  1528. photogenics/LISTLOADERS
  1529.  
  1530.         NAME
  1531.                 LISTLOADERS
  1532.  
  1533.         SYNOPSIS
  1534.                 result LISTLOADERS
  1535.  
  1536.         FUNCTION
  1537.                 Return a list of all the loaders currently available in
  1538.                 Photogenics.
  1539.  
  1540.         INPUTS
  1541.  
  1542.         RETURNS
  1543.                 A string containing all available loaders, each
  1544.                 seperated by a space.
  1545.         NOTES
  1546.                 
  1547.         SEE ALSO
  1548.                 LISTSAVERS LISTMODES LISTEFFECTS
  1549.         EXAMPLE
  1550.                         
  1551.         BUGS                    
  1552. photogenics/LISTMODES
  1553.  
  1554.         NAME
  1555.                 LISTMODES
  1556.  
  1557.         SYNOPSIS
  1558.                 result LISTMODES
  1559.  
  1560.         FUNCTION
  1561.                 Return a list of all the paintmodes currently available in
  1562.                 Photogenics.
  1563.  
  1564.         INPUTS
  1565.  
  1566.         RETURNS
  1567.                 A string containing all available paintmodes, each
  1568.                 seperated by a space.
  1569.         NOTES
  1570.                 
  1571.         SEE ALSO
  1572.                 LISTSAVERS LISTLOADERS LISTEFFECTS
  1573.         EXAMPLE
  1574.                         
  1575.         BUGS                    
  1576. photogenics/LISTSAVERS
  1577.  
  1578.         NAME
  1579.                 LISTSAVERS
  1580.  
  1581.         SYNOPSIS
  1582.                 result LISTSAVERS
  1583.  
  1584.         FUNCTION
  1585.                 Return a list of all the savers currently available in
  1586.                 Photogenics.
  1587.  
  1588.         INPUTS
  1589.  
  1590.         RETURNS
  1591.                 A string containing all available savers, each
  1592.                 seperated by a space.
  1593.         NOTES
  1594.                 
  1595.         SEE ALSO
  1596.                 LISTLOADERS LISTMODES LISTEFFECTS
  1597.         EXAMPLE
  1598.                         
  1599.         BUGS                    
  1600. photogenics/LOAD
  1601.  
  1602.         NAME
  1603.                 LOAD - Load an image file
  1604.  
  1605.         SYNOPSIS
  1606.                 LOAD filename
  1607.  
  1608.         FUNCTION
  1609.                 Photogenics attempts to load a file. 
  1610.  
  1611.         INPUTS
  1612.                 filename   - The name of the file to load.
  1613.         
  1614.         RETURNS
  1615.                 Buffer is a unique pointer to the image buffer. This 
  1616.                 result is used as a lock on the image for all further 
  1617.                 operations.
  1618.         
  1619.                 rc = 0 on success, 1 if there was any problems preventing 
  1620.                      the image loading.
  1621.                 
  1622.         NOTES
  1623.                 It is *slightly* faster and more memory efficient to use 
  1624.                 LOADGIO and specify the GIO type if you know what type of 
  1625.                 file you are loading (for example if converting a batch of
  1626.                 JPEG files). Otherwise use LOAD, which avoids having to 
  1627.                 specify the file type and will automatically detect the 
  1628.                 filetype (where possible). You will also need to use LOADGIO 
  1629.                 if you wish to pass ARexx parameters to the loader
  1630.                 (to override requesters, for example)
  1631.  
  1632.  
  1633.         SEE ALSO
  1634.                 LOADGIO
  1635.  
  1636.         EXAMPLE
  1637.                 /* Open an image */
  1638.                 address PHOTOGENICS.1
  1639.                 LOAD "ram:text.jpg"
  1640.                         
  1641.         BUGS
  1642. photogenics/LOADGIO
  1643.  
  1644.         NAME
  1645.                 LOADGIO - Load an image using a specific GIO import filter..
  1646.  
  1647.         SYNOPSIS
  1648.                 LOADGIO loadername [filename] [options]
  1649.  
  1650.         FUNCTION
  1651.                 Photogenics attempts to load/create a new image using the 
  1652.                 import filter specified in loadername (the .GIO suffix 
  1653.                 must not be used). If a disk file is being loaded, the 
  1654.                 filename must be specified. Each GIO has different options, 
  1655.                 and these may need to be specified. See the arexx 
  1656.                 documentation for the GIO files to determine what 
  1657.                 options are needed.
  1658.  
  1659.         INPUTS
  1660.                 loadername - The name of the GIO to use (the .GIO suffix must 
  1661.                              not be used).
  1662.  
  1663.                 filename   - The name of the file to load. Only required 
  1664.                              on GIOS that load from disk files.
  1665.  
  1666.                 options    - The options required by the GIO. These vary, 
  1667.                              some GIOS have no options.
  1668.         
  1669.         RETURNS
  1670.                 Buffer is a unique pointer to the image buffer. This 
  1671.                 result is used as a lock on the image for all further 
  1672.                 operations.
  1673.         
  1674.                 rc = 0 on success, 1 if there was any problems preventing 
  1675.                      the image loading.
  1676.                 
  1677.         NOTES
  1678.                 It is *slightly* faster and more memory efficient to use 
  1679.                 LOADGIO and specify the GIO type if you know what type of 
  1680.                 file you are loading (for example if converting a batch of
  1681.                 JPEG files). Otherwise use LOAD, which avoids having to 
  1682.                 specify the file type and will automatically detect 
  1683.                 the filetype (where possible). 
  1684.  
  1685.         SEE ALSO
  1686.                 LOAD LOADHIDEGIO
  1687.  
  1688.         EXAMPLE
  1689.                 /* Open an image */
  1690.                 address PHOTOGENICS.1
  1691.                 LOADGIO "JPEG" "ram:text.jpg"
  1692.                         
  1693.         BUGS
  1694. photogenics/LOADHIDE
  1695.  
  1696.         NAME
  1697.                 LOADHIDE - Load an image file (but don't open a window)
  1698.  
  1699.         SYNOPSIS
  1700.                 LOADHIDE filename
  1701.  
  1702.         FUNCTION
  1703.                 Photogenics attempts to load a file. 
  1704.  
  1705.         INPUTS
  1706.                 filename   - The name of the file to load.
  1707.         
  1708.         RETURNS
  1709.                 Buffer is a unique pointer to the image buffer. This 
  1710.                 result is used as a lock on the image for all further 
  1711.                 operations.
  1712.         
  1713.                 rc = 0 on success, 1 if there was any problems preventing 
  1714.                      the image loading.
  1715.                 
  1716.         NOTES
  1717.                 It is *slightly* faster and more memory efficient to use 
  1718.                 LOADGIO and specify the GIO type if you know what type of 
  1719.                 file you are loading (for example if converting a batch of
  1720.                 JPEG files). Otherwise use LOAD, which avoids having to 
  1721.                 specify the file type and will automatically detect the 
  1722.                 filetype (where possible). You will also need to use LOADGIO 
  1723.                 if you wish to pass ARexx parameters to the loader
  1724.                 (to override requesters, for example)
  1725.  
  1726.  
  1727.         SEE ALSO
  1728.                 LOAD LOADGIO LOADHIDEGIO
  1729.  
  1730.         EXAMPLE
  1731.                 /* Open an image */
  1732.                 address PHOTOGENICS.1
  1733.                 LOADHIDE "ram:text.jpg"
  1734.                         
  1735.         BUGS
  1736. photogenics/LOADHIDEGIO
  1737.  
  1738.         NAME
  1739.                 LOADHIDEGIO - Load a hidden image using GIO import filter.
  1740.  
  1741.         SYNOPSIS
  1742.                 LOADHIDEGIO loadername [filename] [options]
  1743.  
  1744.         FUNCTION
  1745.                 Photogenics attempts to load/create a new image using the 
  1746.                 import filter specified in loadername (the .GIO suffix 
  1747.                 must not be used). If a disk file is being loaded, the 
  1748.                 filename must be specified. Each GIO has different options, 
  1749.                 and these may need to be specified. See the arexx 
  1750.                 documentation for the GIO files to determine what 
  1751.                 options are needed.
  1752.  
  1753.                 Unlike LOADGIO, the image does not have a new window
  1754.                 created for it (it is hidden, as in the Open As/Hidden
  1755.                 menu item in Photogenics)
  1756.  
  1757.  
  1758.         INPUTS
  1759.                 loadername - The name of the GIO to use (the .GIO suffix must 
  1760.                              not be used).
  1761.  
  1762.                 filename   - The name of the file to load. Only required 
  1763.                              on GIOS that load from disk files.
  1764.  
  1765.                 options    - The options required by the GIO. These vary, 
  1766.                              some GIOS have no options.
  1767.         
  1768.         RETURNS
  1769.                 Buffer is a unique pointer to the image buffer. This 
  1770.                 result is used as a lock on the image for all further 
  1771.                 operations.
  1772.         
  1773.                 rc = 0 on success, 1 if there was any problems preventing the image loading.
  1774.                 
  1775.         NOTES
  1776.                 It is *slightly* faster and more memory efficient to use 
  1777.                 LOADGIO and specify the GIO type if you know what type of 
  1778.                 file you are loading (for example if converting a batch of
  1779.                 JPEG files). Otherwise use LOAD, which avoids having to 
  1780.                 specify the file type and will automatically detect 
  1781.                 the filetype (where possible). 
  1782.  
  1783.         SEE ALSO
  1784.                 LOAD LOADHIDEGIO
  1785.  
  1786.         EXAMPLE
  1787.                 /* Open an image */
  1788.                 address PHOTOGENICS.1
  1789.                 LOADHIDEGIO "JPEG" "ram:text.jpg"
  1790.                         
  1791.         BUGS
  1792. photogenics/LOADVIRT
  1793.  
  1794.         NAME
  1795.                 LOADVIRT - Load an image file as a virtual image
  1796.  
  1797.         SYNOPSIS
  1798.                 LOADVIRT filename
  1799.  
  1800.         FUNCTION
  1801.                 Photogenics attempts to load a file as a virtual image.
  1802.  
  1803.         INPUTS
  1804.                 filename   - The name of the file to load.
  1805.         
  1806.         RETURNS
  1807.                 Buffer is a unique pointer to the virtual image buffer. 
  1808.                 This result is used as a lock on the image for all further 
  1809.                 operations.
  1810.         
  1811.                 rc = 0 on success, 1 if there was any problems preventing 
  1812.                      the image loading.
  1813.                 
  1814.         NOTES
  1815.  
  1816.         SEE ALSO
  1817.                 LOAD
  1818.  
  1819.         EXAMPLE
  1820.                         
  1821.         BUGS
  1822. photogenics/MODEOPTS
  1823.  
  1824.         NAME
  1825.                 MODEOPTS - Change the options for the paintmode.
  1826.  
  1827.         SYNOPSIS
  1828.                 MODEOPTS buffer options
  1829.  
  1830.         FUNCTION
  1831.                 Change the mode options for the paintmode selected on the
  1832.                 chosen buffer.
  1833.  
  1834.         INPUTS
  1835.                 buffer - pointer to image buffer.
  1836.  
  1837.                 options - a variety of options, depending on the
  1838.                 paintmode.
  1839.         
  1840.         RETURNS
  1841.                 0
  1842.  
  1843.         NOTES
  1844.                 
  1845.         SEE ALSO
  1846.  
  1847.         BUGS
  1848. photogenics/NEW
  1849.  
  1850.         NAME
  1851.                 NEW
  1852.  
  1853.         SYNOPSIS
  1854.                 NEW x y r g b
  1855.  
  1856.         FUNCTION
  1857.                 Create a new image, size x,y colour rgb.
  1858.  
  1859.         INPUTS
  1860.                 x - x dimension (in pixels). Must be >4 and < 32768
  1861.                 y - y dimension (in pixels). Must be >4 and < 32768
  1862.                 r - red component (0 to 255)
  1863.                 g - red component (0 to 255)
  1864.                 b - red component (0 to 255)
  1865.         
  1866.         
  1867.         RETURNS
  1868.                 Buffer is a unique pointer to the image buffer. This result 
  1869.                 is used as a lock on the image for all further operations.
  1870.         
  1871.                 rc = 0 on success, 1 if there was any problems preventing 
  1872.                 the image creation.
  1873.                 
  1874.         NOTES
  1875.  
  1876.         SEE ALSO
  1877.  
  1878.         EXAMPLE
  1879.                         /* Create a new image */
  1880.                         address PHOTOGENICS.1
  1881.                         NEW 320 256 200 100 50
  1882.                         
  1883.         BUGS
  1884. photogenics/NEWVIRT
  1885.  
  1886.         NAME
  1887.                 NEWVIRT
  1888.  
  1889.         SYNOPSIS
  1890.                 NEWVIRT x y
  1891.  
  1892.         FUNCTION
  1893.                 Create a new virtual image, size x,y.
  1894.  
  1895.         INPUTS
  1896.                 x - x dimension (in pixels). Must be >4 and < 32768
  1897.                 y - y dimension (in pixels). Must be >4 and < 32768
  1898.         
  1899.         
  1900.         RETURNS
  1901.                 A unique pointer to the virtual image buffer. This result 
  1902.                 is used as a lock on the image for all further operations.
  1903.         
  1904.                 rc = 0 on success, 1 if there was any problems preventing 
  1905.                 the image creation.
  1906.                 
  1907.         NOTES
  1908.  
  1909.         SEE ALSO
  1910.  
  1911.         EXAMPLE
  1912.                 /* Create a new virtualimage */
  1913.                 address PHOTOGENICS.1
  1914.                 NEWVIRT 320 256 200 100 50
  1915.                         
  1916.         BUGS
  1917.  
  1918. photogenics/OPENPROGRESS
  1919.  
  1920.         NAME
  1921.                 OPENPROGRESS
  1922.  
  1923.         SYNOPSIS
  1924.                 OPENPROGRESS title text
  1925.  
  1926.         FUNCTION
  1927.                 In complex arexx scripts a progress meter can be
  1928.                 displayed. While this is active no standard Photogenics
  1929.                 requesters will be opened (eg other progress meters) and
  1930.                 image windows will not be opened.
  1931.                 
  1932.         INPUTS
  1933.                 title - The title for the progress meter.
  1934.                 text  - the default text inside the progress meter.
  1935.         
  1936.         RETURNS
  1937.  
  1938.         NOTES
  1939.                 The progress meter is not actually displayed until the
  1940.                 first call to SETPROGRESS. If you want a progress meter
  1941.                 displayed immediately, issue SETPROGRESS "" 0 after the 
  1942.                 OPENPROGRESS call.
  1943.  
  1944.         SEE ALSO
  1945.                 SETPROGRESS CLOSEPROGRESS
  1946.  
  1947.         EXAMPLE
  1948.                 /* display a progress requester */
  1949.                 options results
  1950.                 address PHOTOGENICS.1
  1951.                 OPENPROGRESS "Progress" "'Default text in progress meter'"
  1952.                 SETPROGRESS "" 0
  1953.                 < do something >
  1954.                 SETPROGRESS "" 50
  1955.                 < do something else >
  1956.                 SETPROGRESS "" 100
  1957.                 < finished >
  1958.                 CLOSEPROGRESS
  1959.  
  1960.         BUGS                    
  1961.                 Spaces in strings are best dealt with by enclosing text in
  1962.                 double quotes , eg. "'xx xx xx'"
  1963.  
  1964. photogenics/PAINTMODE
  1965.  
  1966.         NAME
  1967.                 PAINTMODE - Select a new paintmode to use with the
  1968.                             currently selected buffer.
  1969.  
  1970.         SYNOPSIS
  1971.                 PAINTMODE <buffer> <paintmode>
  1972.  
  1973.         FUNCTION
  1974.                 A new paintmode is selected for the chosen buffer.
  1975.  
  1976.         INPUTS
  1977.                 buffer    - A buffer pointer previously returned by NEW,
  1978.                             BUFFER, LOADGIO, LOAD, etc.
  1979.  
  1980.                 paintmode - The name of the paintmode to select.      
  1981.  
  1982.         RETURNS
  1983.                 
  1984.         NOTES
  1985.  
  1986.         SEE ALSO
  1987.  
  1988.         EXAMPLE
  1989.                         /* Change the paintmode to Negative */
  1990.                         options results
  1991.                         address PHOTOGENICS.1
  1992.                         BUFFER                  
  1993.                         PAINTMODE result "Negative"
  1994.         BUGS
  1995. photogenics/PAINTTOALPHA
  1996.  
  1997.         NAME
  1998.                 PAINTTOALPHA - Move paintlayer to Alpha. 
  1999.                             
  2000.  
  2001.         SYNOPSIS
  2002.                 PAINTTOALPHA buffer
  2003.  
  2004.         FUNCTION
  2005.                 The paintlayer is transferred from the current image to
  2006.                 a new alpha channel buffer.
  2007.  
  2008.         INPUTS
  2009.                 buffer    - A buffer pointer previously returned by NEW,
  2010.                             BUFFER, LOADGIO, LOAD, etc.
  2011.  
  2012.         RETURNS
  2013.                 
  2014.                 
  2015.         NOTES
  2016.                 Follow this with an ALPHA command to get the ID of
  2017.                 the Alpha Channel it creates.
  2018.  
  2019.         SEE ALSO
  2020.  
  2021.         EXAMPLE
  2022.  
  2023.         BUGS
  2024. photogenics/PGSTOBACK
  2025.  
  2026.         NAME
  2027.                 PGSTOBACK
  2028.  
  2029.         SYNOPSIS
  2030.                 PGSTOBACK - Send Photogenics screen to back.
  2031.  
  2032.         FUNCTION
  2033.                 The Photogenics screen is sent to the back of the visible
  2034.                 screen list, hiding behind other open screens.
  2035.  
  2036.         INPUTS
  2037.         
  2038.         RETURNS
  2039.  
  2040.         NOTES
  2041.                 
  2042.         SEE ALSO
  2043.  
  2044.         BUGS                    
  2045. photogenics/PGSTOFRONT
  2046.  
  2047.         NAME
  2048.                 PGSTOFRONT
  2049.  
  2050.         SYNOPSIS
  2051.                 PGSTOFRONT - Send Photogenics screen to front.
  2052.  
  2053.         FUNCTION
  2054.                 The Photogenics screen is sent to the front of the visible
  2055.                 screen list..
  2056.  
  2057.         INPUTS
  2058.         
  2059.         RETURNS
  2060.  
  2061.         NOTES
  2062.                 
  2063.         SEE ALSO
  2064.  
  2065.         BUGS                    
  2066.  
  2067. photogenics/PLOT
  2068.  
  2069.         NAME
  2070.                 PLOT
  2071.  
  2072.         SYNOPSIS
  2073.                 PLOT buffer x y
  2074.  
  2075.         FUNCTION
  2076.                 Draw the current brush into the image at co-ordinates x,y
  2077.                 This is the equivelant of a single click on the image at the
  2078.                 given coordinates with the standard drawing tool.
  2079.  
  2080.         INPUTS
  2081.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2082.                          LOADGIO or NEW
  2083.         
  2084.                 x      - x position where 0<=x<WIDTH
  2085.                 y      - y position where 0<=y<HEIGHT
  2086.  
  2087.         RETURNS
  2088.  
  2089.         NOTES
  2090.                 
  2091.         SEE ALSO
  2092.  
  2093.         EXAMPLE
  2094.  
  2095.         BUGS                    
  2096. photogenics/PRESSURE
  2097.  
  2098.         NAME
  2099.                 PRESSURE
  2100.  
  2101.         SYNOPSIS
  2102.                 PRESSURE val
  2103.  
  2104.         FUNCTION
  2105.                 Sets the brush pressure (in percent)
  2106.  
  2107.         INPUTS
  2108.                 val - the pressure required (1 to 100)
  2109.  
  2110.         RETURNS
  2111.  
  2112.         NOTES
  2113.                 
  2114.         SEE ALSO
  2115.  
  2116.         EXAMPLE
  2117.  
  2118.         BUGS                    
  2119. photogenics/QUIT
  2120.  
  2121.         NAME
  2122.                 QUIT
  2123.  
  2124.         SYNOPSIS
  2125.                 QUIT
  2126.  
  2127.         FUNCTION
  2128.                 Quits Photogenics
  2129.  
  2130.         INPUTS
  2131.  
  2132.         RETURNS
  2133.  
  2134.         NOTES
  2135.                 
  2136.         SEE ALSO
  2137.  
  2138.         EXAMPLE
  2139.  
  2140.         BUGS                    
  2141. photogenics/RECT
  2142.  
  2143.         NAME
  2144.                 RECT
  2145.  
  2146.         SYNOPSIS
  2147.                 RECT buffer x y x1 y1
  2148.  
  2149.         FUNCTION
  2150.                 Draws a rectangle into buffer using the current brush tool.
  2151.                 Top left corner = x,y. Bottom right corner = x1,y1
  2152.  
  2153.         INPUTS
  2154.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2155.                          LOADGIO or NEW
  2156.         
  2157.                 x      - x position where 0<=x<WIDTH
  2158.                 y      - y position where 0<=y<HEIGHT
  2159.                 x1     - x1 position where 0<=x1<WIDTH
  2160.                 y1     - y1 position where 0<=y1<HEIGHT
  2161.  
  2162.         RETURNS
  2163.  
  2164.         NOTES
  2165.                 
  2166.         SEE ALSO
  2167.  
  2168.         EXAMPLE
  2169.  
  2170.         BUGS                    
  2171. photogenics/RECTFILL
  2172.  
  2173.         NAME
  2174.                 RECTFILL
  2175.  
  2176.         SYNOPSIS
  2177.                 RECTFILL buffer x y x1 y1
  2178.  
  2179.         FUNCTION
  2180.                 Draws a filled rectangle into buffer
  2181.                 Top left corner = x,y. Bottom right corner = x1,y1
  2182.  
  2183.         INPUTS
  2184.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2185.                          LOADGIO or NEW
  2186.         
  2187.                 x      - x position where 0<=x<WIDTH
  2188.                 y      - y position where 0<=y<HEIGHT
  2189.                 x1     - x1 position where 0<=x1<WIDTH
  2190.                 y1     - y1 position where 0<=y1<HEIGHT
  2191.  
  2192.         RETURNS
  2193.  
  2194.         NOTES
  2195.                 
  2196.         SEE ALSO
  2197.  
  2198.         EXAMPLE
  2199.  
  2200.         BUGS                    
  2201. photogenics/REDRAW
  2202.  
  2203.         NAME
  2204.                 REDRAW
  2205.  
  2206.         SYNOPSIS
  2207.                 REDRAW buffer
  2208.  
  2209.         FUNCTION
  2210.                 Redraw the window display for a buffer.
  2211.  
  2212.         INPUTS
  2213.                 buffer - pointer to a buffer (returned by NEW, etc.)
  2214.  
  2215.         RETURNS 
  2216.  
  2217.         NOTES
  2218.                 Should be used if you access the buffer via
  2219.                 GETLINE/RELEASELINE, and at the end of scripts after
  2220.                 you have finished processing while redraw has been
  2221.                 turned off (with OPENPROGRESS, for example)
  2222.                 
  2223.         SEE ALSO
  2224.  
  2225.         EXAMPLE
  2226.                         
  2227.         BUGS                    
  2228. photogenics/RELEASELINE
  2229.  
  2230.         NAME
  2231.                 RELEASELINE - releases a lock on the 24-bit data.
  2232.  
  2233.         SYNOPSIS
  2234.                 RELEASELINE buffer y
  2235.  
  2236.         FUNCTION
  2237.                 Call this when you have finished manipulating data
  2238.                 accesssed by GETLINE.
  2239.                 
  2240.                 To refresh the Photogenics window after this,
  2241.                 call REDRAW buffer
  2242.                 
  2243.         INPUTS
  2244.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2245.                          LOADGIO or NEW
  2246.  
  2247.                 y      - The line (0<=y<height) to access.
  2248.         
  2249.         RETURNS
  2250.  
  2251.         NOTES
  2252.  
  2253.         SEE ALSO
  2254.                 GETLINE
  2255.  
  2256.         EXAMPLE
  2257.  
  2258.         BUGS               
  2259.                 Does not support Virtual Images yet.     
  2260. photogenics/RELEASETRANSLINE
  2261.  
  2262.         NAME
  2263.                 RELEASETRANSLINE - releases a lock on the 8-bit data.
  2264.  
  2265.         SYNOPSIS
  2266.                 RELEASETRANSLINE buffer y
  2267.  
  2268.         FUNCTION
  2269.                 Call this when you have finished manipulating data
  2270.                 accesssed by GETTRANSLINE.
  2271.                 
  2272.                 To refresh the Photogenics window after this,
  2273.                 call REDRAW buffer
  2274.                 
  2275.         INPUTS
  2276.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2277.                          LOADGIO or NEW
  2278.  
  2279.                 y      - The line (0<=y<height) to access.
  2280.         
  2281.         RETURNS
  2282.  
  2283.         NOTES
  2284.  
  2285.         SEE ALSO
  2286.                 GETTRANSLINE
  2287.  
  2288.         EXAMPLE
  2289.  
  2290.         BUGS               
  2291. photogenics/RENAME
  2292.  
  2293.         NAME
  2294.                 RENAME
  2295.  
  2296.         SYNOPSIS
  2297.                 RENAME buffer newname
  2298.  
  2299.         FUNCTION
  2300.                 Renames a buffer, or virtual image with the new title.
  2301.  
  2302.         INPUTS
  2303.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2304.                          LOADGIO, NEW, NEWVIRT, LOADVIRT, etc.
  2305.         
  2306.         RETURNS
  2307.  
  2308.         NOTES
  2309.                 
  2310.         SEE ALSO
  2311.  
  2312.         EXAMPLE
  2313.  
  2314.         BUGS                    
  2315. photogenics/RESIZETILED
  2316.  
  2317.         NAME
  2318.                 RESIZETILED - Resize an image, tiling the original.
  2319.  
  2320.         SYNOPSIS
  2321.                 RESIZETILED buffer newx newy
  2322.  
  2323.         FUNCTION
  2324.                 Resizes an image buffer to new size of newx newy,
  2325.                 the original image is tiled to fit the new space.
  2326.  
  2327.         INPUTS
  2328.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2329.                          LOADGIO or NEW
  2330.  
  2331.                 newx   - new width for image.
  2332.                 
  2333.                 newy   - new height for image.
  2334.                         
  2335.         
  2336.         RETURNS
  2337.  
  2338.         NOTES
  2339.  
  2340.         SEE ALSO
  2341.  
  2342.         EXAMPLE
  2343.  
  2344.         BUGS                    
  2345. photogenics/ROTATE
  2346.  
  2347.         NAME
  2348.                 ROTATE
  2349.  
  2350.         SYNOPSIS
  2351.                 ROTATE buffer angle
  2352.  
  2353.         FUNCTION
  2354.                 Rotate a Photogenics image buffer.
  2355.  
  2356.         INPUTS
  2357.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2358.                          LOADGIO or NEW
  2359.         
  2360.                 angle -  Angle from 0 to 360 degrees.
  2361.  
  2362.         RETURNS
  2363.  
  2364.         NOTES
  2365.                 Image is scaled to fit the minimum dimensions of the
  2366.                 rotated image. No image data is lost off the sides, so if
  2367.                 you need to keep the resultant image the same size either
  2368.                 crop the new area off, or see the Perspective effect
  2369.                 (use it to rotate in the z axis only)
  2370.                 
  2371.         SEE ALSO
  2372.  
  2373.         EXAMPLE
  2374.  
  2375.         BUGS                    
  2376. photogenics/SAVE
  2377.  
  2378.         NAME
  2379.                 SAVE    - Save an image file
  2380.  
  2381.         SYNOPSIS
  2382.                 SAVE <buffer> <gioname> <filename> [<options>]
  2383.  
  2384.         FUNCTION
  2385.                 Save the buffer from Photogenics using the gio specified. 
  2386.  
  2387.         INPUTS
  2388.                 <buffer>      - the buffer ID returned by BUFFER, NEW, LOAD,
  2389.                                 LOADGIO, SCALE, etc.
  2390.                 
  2391.                 <gioname>     - The name of the GIO (without the .gio
  2392.                                 extension) you wish to save with.
  2393.  
  2394.                 
  2395.                 <filename>    - The name of the file to save. Pass an
  2396.                                 empty string for savers such as ShowHam8 which
  2397.                                 do not require a filename.
  2398.  
  2399.                 <options>     - Any options required by the GIO. These
  2400.                                 differ from saver to saver, please consult the GIO docs for further
  2401.                                 information.
  2402.         
  2403.         RETURNS
  2404.                 
  2405.         NOTES
  2406.  
  2407.         SEE ALSO
  2408.                 LOAD, LOADGIO
  2409.  
  2410.         EXAMPLE
  2411.                         /* Save the current image */
  2412.                         options results
  2413.                         address PHOTOGENICS.1
  2414.                         BUFFER
  2415.                         SAVE result "JPEG" "ram:test.jpg" 90 /* 90 is the
  2416.                                                                 quality
  2417.                                                                 field for JPEG saves */ 
  2418.         BUGS
  2419. photogenics/SAVECLIP
  2420.  
  2421.         NAME
  2422.                 SAVECLIP
  2423.  
  2424.         SYNOPSIS
  2425.                 SAVECLIP buffer
  2426.  
  2427.         FUNCTION
  2428.                 Saves a clip back to the virtual image it was clipped
  2429.                 from.
  2430.         
  2431.         INPUTS
  2432.                 buffer - pointer to a buffer clipped from a Virtual Image
  2433.                          (created with the VBUFF function) 
  2434.         RETURNS
  2435.  
  2436.         NOTES
  2437.                 Only works if the image was clipped from a virtual image,
  2438.                 of course! You don't need to tell it where it was clipped
  2439.                 from, it's got a good memory :-)
  2440.  
  2441.         SEE ALSO
  2442.  
  2443.         EXAMPLE
  2444.                         
  2445.         BUGS                    
  2446. photogenics/SCALE
  2447.  
  2448.         NAME
  2449.                 SCALE
  2450.  
  2451.         SYNOPSIS
  2452.                 SCALE buffer newx newy <SMOOTH | NORMAL> 
  2453.  
  2454.         FUNCTION
  2455.                 Scales an image buffer to new size of newx newy.
  2456.  
  2457.         INPUTS
  2458.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2459.                          LOADGIO or NEW
  2460.  
  2461.                 newx   - new width for image.
  2462.                 
  2463.                 newy   - new height for image.
  2464.                         
  2465.                 NORMAL - use simple (fast) scaling.
  2466.                 SMOOTH - use smooth (interpolated) scaling.
  2467.                 
  2468.                          one of NORMAL or SMOOTH is required.
  2469.         
  2470.         RETURNS
  2471.  
  2472.         NOTES
  2473.  
  2474.         SEE ALSO
  2475.  
  2476.         EXAMPLE
  2477.                 /* scale the current buffer */
  2478.                 options results
  2479.                 address PHOTOGENICS.1
  2480.                 BUFFER
  2481.                 SCALE result 150 150 SMOOTH     
  2482.         BUGS                    
  2483. photogenics/SECONDARY
  2484.  
  2485.         NAME
  2486.                 SECONDARY - Return a pointer to the current secondary
  2487.                             image.
  2488.  
  2489.         SYNOPSIS
  2490.                 SECONDARY
  2491.  
  2492.         FUNCTION
  2493.                 Return a pointer to the current secondary image, if one
  2494.                 is selected within Photogenics.
  2495.  
  2496.         INPUTS
  2497.         
  2498.         RETURNS
  2499.                 Buffer is a unique pointer to the secondary image buffer. 
  2500.                 This result is used as a lock on the image for all further 
  2501.                 operations.
  2502.         
  2503.                 rc = 0 on success, 1 if there was no secondary image.
  2504.                 
  2505.         NOTES
  2506.  
  2507.  
  2508.         SEE ALSO
  2509.                 BUFFER ALPHA
  2510.  
  2511.         EXAMPLE
  2512.                         
  2513.         BUGS
  2514. photogenics/SELECTSIM
  2515.  
  2516.         NAME
  2517.                 SELECTSIM
  2518.  
  2519.         SYNOPSIS
  2520.                 SELECTSIM buffer tolerance smooth r g b
  2521.  
  2522.         FUNCTION
  2523.                 Select all regions of the image matching the
  2524.                 r g b values provided within the tolerance given,
  2525.                 using the smoothness factor depending on their distance
  2526.                 from the given RGB value.
  2527.  
  2528.         INPUTS
  2529.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2530.                          LOADGIO or NEW
  2531.  
  2532.                 tolerance  - How close a match you require (0 to 255)
  2533.                 smoothness - how smooth you want it (1 to 100)
  2534.  
  2535.                 r          - red (0 to 255)
  2536.                 g          - green (0 to 255)
  2537.                 b          - blue (0 to 255)
  2538.  
  2539.  
  2540.         RETURNS
  2541.  
  2542.         NOTES
  2543.  
  2544.         SEE ALSO
  2545.  
  2546.         EXAMPLE
  2547.  
  2548.         BUGS
  2549.                 Don't set smoothness to zero. Bad things might happen.
  2550. photogenics/SETALPHA
  2551.  
  2552.         NAME
  2553.                 SETALPHA - Select as Alpha Channel
  2554.  
  2555.         SYNOPSIS
  2556.                 SETALPHA buffer
  2557.  
  2558.         FUNCTION
  2559.                 Select the image as the alpha channel
  2560.  
  2561.         INPUTS
  2562.                 buffer - pointer to image buffer.
  2563.         
  2564.         RETURNS
  2565.                 0
  2566.  
  2567.         NOTES
  2568.                 
  2569.         SEE ALSO
  2570.  
  2571.         BUGS
  2572. photogenics/SETIMAGE
  2573.  
  2574.         NAME
  2575.                 SETIMAGE - Select as Alpha Channel
  2576.  
  2577.         SYNOPSIS
  2578.                 SETIMAGE buffer
  2579.  
  2580.         FUNCTION
  2581.                 Select the image as a normal image (Cancels alpha and/or
  2582.                 secondary setting)
  2583.  
  2584.         INPUTS
  2585.                 buffer - pointer to image buffer.
  2586.         
  2587.         RETURNS
  2588.                 0
  2589.  
  2590.         NOTES
  2591.                 
  2592.         SEE ALSO
  2593.  
  2594.         BUGS
  2595. photogenics/SETPROGRESS
  2596.  
  2597.         NAME
  2598.                 SETPROGRESS - Set the state of the progress meter.
  2599.  
  2600.         SYNOPSIS
  2601.                 SETPROGRESS text percent
  2602.  
  2603.         FUNCTION
  2604.                 Sets the state of the progress meter.
  2605.  
  2606.         INPUTS
  2607.                 text    - new text for the progress meter (use "" to
  2608.                           keep the current text)
  2609.  
  2610.                 percent - new position for the progress meter (from 0 to
  2611.                           100)
  2612.         
  2613.         RETURNS
  2614.  
  2615.         NOTES
  2616.                 Must be done after OPENPROGRESS, and before CLOSEPROGRESS!                
  2617.         SEE ALSO
  2618.                 OPENPROGRESS CLOSEPROGRESS
  2619.         BUGS
  2620. photogenics/SETSECONDARY
  2621.  
  2622.         NAME
  2623.                 SETSECONDARY - Select as Alpha Channel
  2624.  
  2625.         SYNOPSIS
  2626.                 SETSECONDARY buffer
  2627.  
  2628.         FUNCTION
  2629.                 Select the image as the secondary image.
  2630.  
  2631.         INPUTS
  2632.                 buffer - pointer to image buffer.
  2633.         
  2634.         RETURNS
  2635.                 0
  2636.  
  2637.         NOTES
  2638.                 
  2639.         SEE ALSO
  2640.  
  2641.         BUGS
  2642. photogenics/SHEAR
  2643.  
  2644.         NAME
  2645.                 SHEAR
  2646.  
  2647.         SYNOPSIS
  2648.                 SHEAR buffer xshift yshift
  2649.  
  2650.         FUNCTION
  2651.                 Shear a Photogenics image buffer.
  2652.  
  2653.         INPUTS
  2654.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2655.                          LOADGIO or NEW
  2656.         
  2657.                 xshift - amount to shift in x dimension (+ve or -ve)
  2658.                 
  2659.                 yshift - amount to shift in y dimension (+ve or -ve)
  2660.  
  2661.         RETURNS
  2662.  
  2663.         NOTES
  2664.                 
  2665.         SEE ALSO
  2666.  
  2667.         EXAMPLE
  2668.  
  2669.         BUGS                    
  2670. photogenics/SHOWERROR
  2671.  
  2672.         NAME
  2673.                 SHOWERROR
  2674.  
  2675.         SYNOPSIS
  2676.                 SHOWERROR string
  2677.  
  2678.         FUNCTION
  2679.                 An error requester containing 'string' is displayed and script execution paused until 
  2680.       the requester is closed.
  2681.  
  2682.         INPUTS
  2683.                 string - ascii text
  2684.         
  2685.         RETURNS
  2686.                 0
  2687.  
  2688.         NOTES
  2689.                 
  2690.         SEE ALSO
  2691.  
  2692.         EXAMPLE
  2693.                 /* show an error requester */
  2694.                 address PHOTOGENICS.1
  2695.                 SHOWERROR "Not enough memory to continue"
  2696.         BUGS                    
  2697.  
  2698. photogenics/SHOWMESSAGE
  2699.  
  2700.         NAME
  2701.                 SHOWMESSAGE
  2702.  
  2703.         SYNOPSIS
  2704.                 SHOWMESSAGE title string
  2705.  
  2706.         FUNCTION
  2707.                 A message requester containing 'string' is displayed and script execution paused until 
  2708.                 the requester is closed.
  2709.  
  2710.         INPUTS
  2711.                 title  - the title for the message requester
  2712.                 string - the ascii text for the message body text (may use
  2713.                          /n character for line feed)
  2714.         
  2715.         RETURNS
  2716.                 0
  2717.  
  2718.         NOTES
  2719.                 
  2720.         SEE ALSO
  2721.  
  2722.         EXAMPLE
  2723.                         /* show an error requester */
  2724.                         address PHOTOGENICS.1
  2725.                         SHOWMESSAGE "Ready" "Press OK to continue with script"
  2726.                         
  2727.         BUGS                    
  2728.  
  2729. photogenics/TRANSFIX - Fix the paintlayer to the current transparency
  2730.                        levels.
  2731.  
  2732.         NAME
  2733.                 TRANSFIX
  2734.  
  2735.         SYNOPSIS
  2736.                 TRANSFIX buffer
  2737.  
  2738.         FUNCTION
  2739.                 The transparency level is set back to 100%, but the
  2740.                 paintlayer is altered so it matches the previous
  2741.                 appearance with the old transparency level.
  2742.                 
  2743.         INPUTS
  2744.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2745.                          LOADGIO or NEW
  2746.         
  2747.         RETURNS
  2748.  
  2749.         NOTES
  2750.                 
  2751.         SEE ALSO
  2752.  
  2753.         EXAMPLE
  2754.  
  2755.         BUGS
  2756. photogenics/TRANSGRAD
  2757.  
  2758.         NAME
  2759.                 TRANSGRAD - Set the gradient type for transparency fills.
  2760.  
  2761.         SYNOPSIS
  2762.                 TRANSGRAD mode
  2763.  
  2764.         FUNCTION
  2765.                 The gradient type is selected for FILLSCREEN, RECTFILL,
  2766.                 ELLIPSEFILL and other Photogenics operations.
  2767.                 
  2768.         INPUTS
  2769.                 mode - 
  2770.                         0       - Normal
  2771.                         1       - Left to Right
  2772.                         2       - Right to Left
  2773.                         3       - Top to Bottom
  2774.                         4       - Bottom to Top
  2775.                         5       - Rectangle
  2776.                         6       - Reverse Rectangle
  2777.         
  2778.         RETURNS
  2779.  
  2780.         NOTES
  2781.                 
  2782.         SEE ALSO
  2783.  
  2784.         EXAMPLE
  2785.  
  2786.         BUGS
  2787. photogenics/TRANSPARENCY
  2788.  
  2789.         NAME
  2790.                 TRANSPARENCY
  2791.  
  2792.         SYNOPSIS
  2793.                 TRANSPARENCY buffer value
  2794.  
  2795.         FUNCTION
  2796.                 Set the value for the paintlayer transparency.
  2797.  
  2798.         INPUTS
  2799.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2800.                          LOADGIO or NEW
  2801.  
  2802.                 value  - the transparency value from 0 (transparent) to
  2803.                          100 (opaque)
  2804.         
  2805.         RETURNS
  2806.  
  2807.         NOTES
  2808.                 
  2809.         SEE ALSO
  2810.  
  2811.         EXAMPLE
  2812.  
  2813.         BUGS                    
  2814. photogenics/UNDO
  2815.  
  2816.         NAME
  2817.                 UNDO
  2818.  
  2819.         SYNOPSIS
  2820.                 UNDO buffer
  2821.  
  2822.         FUNCTION
  2823.                 Undo fixed changes to a buffer.
  2824.  
  2825.         INPUTS
  2826.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2827.                          LOADGIO or NEW
  2828.         
  2829.         RETURNS
  2830.  
  2831.         NOTES
  2832.                 
  2833.         SEE ALSO
  2834.  
  2835.         EXAMPLE
  2836.                 /* undo changes to the currently selected buffer */
  2837.                 options results
  2838.                 address PHOTOGENICS.1
  2839.                 BUFFER
  2840.                 UNDO result
  2841.         BUGS
  2842. photogenics/VCLIP
  2843.  
  2844.         NAME
  2845.                 VCLIP
  2846.  
  2847.         SYNOPSIS
  2848.                 VCLIP vimage x y x1 y1
  2849.  
  2850.         FUNCTION
  2851.                 Clips out an area of a Virtual Image into a new
  2852.                 (non-virtual) buffer. This buffer is returned and can be
  2853.                 acted on.
  2854.  
  2855.         INPUTS
  2856.                 vimage - pointer to a virtual buffer
  2857.  
  2858.                 x      - x position where 0<=x<WIDTH
  2859.                 y      - y position where 0<=y<HEIGHT
  2860.                 x1     - x1 position where 0<=x1<WIDTH
  2861.                 y1     - y1 position where 0<=y1<HEIGHT
  2862.  
  2863.         RETURNS
  2864.                 buffer - a pointer to the buffer (non-virtual) containing
  2865.                          the clipped region.
  2866.         NOTES
  2867.  
  2868.         SEE ALSO
  2869.  
  2870.         EXAMPLE
  2871.  
  2872.         BUGS
  2873. photogenics/WARPER
  2874.  
  2875.         NAME
  2876.                 WARPER - Distort an image with the Photogenics warper tool.
  2877.  
  2878.         SYNOPSIS
  2879.                 WARPER <buffer> <x> <y> <w> <h> <cx> <cy> <factor> <twirl>
  2880.  
  2881.         FUNCTION
  2882.                 Photogenics will warp the area of the image with the
  2883.                 specified parameters.
  2884.  
  2885.         INPUTS
  2886.                 <buffer> - a pointer previously returned by NEW, BUFFER,
  2887.                            LOAD, LOADGIO, etc.
  2888.  
  2889.                 <x>      - The X coordinate of the center of the oval to
  2890.                            warp.
  2891.  
  2892.                 <y>      - The Y coordinate of the center of the oval to
  2893.                            warp.
  2894.  
  2895.                 <w>      - The width of the oval being warped.
  2896.  
  2897.                 <h>      - The height of the oval being warped.
  2898.  
  2899.                 <cx>     - The new center point x for the oval being warped.
  2900.  
  2901.                 <cy>     - The new center point y for the oval being warped.
  2902.                 
  2903.                 <factor> - The warp factor: 0 is normal, +ve bulges the
  2904.                            image, -ve pinches the image.
  2905.  
  2906.                 <twirl>  - The amount of twirl to apply, in degress.
  2907.  
  2908.         RETURNS
  2909.                 Eventually... :-)
  2910.         NOTES
  2911.  
  2912.         SEE ALSO
  2913.  
  2914.         EXAMPLE
  2915.                         /* Warp an image */
  2916.                         options results
  2917.                         address PHOTOGENICS.1
  2918.                         BUFFER
  2919.                         WARPER result 100 50 30 30 120 70 0 60
  2920.                         
  2921.         BUGS
  2922.                         
  2923. photogenics/WIDTH
  2924.  
  2925.         NAME
  2926.                 WIDTH
  2927.  
  2928.         SYNOPSIS
  2929.                 WIDTH buffer
  2930.  
  2931.         FUNCTION
  2932.                 Used to determine the width of a Photogenics image buffer.
  2933.  
  2934.         INPUTS
  2935.                 buffer - pointer to a buffer returned by BUFFER, LOAD,
  2936.                          LOADGIO or NEW
  2937.         
  2938.         RETURNS
  2939.                 width in pixels.
  2940.  
  2941.         NOTES
  2942.                 
  2943.         SEE ALSO
  2944.                 HEIGHT
  2945.  
  2946.         EXAMPLE
  2947.                 /* display the width of the currently selected buffer
  2948.                 options results
  2949.                 address PHOTOGENICS.1
  2950.                 BUFFER
  2951.                 WIDTH result
  2952.                 say "Image is " || result || " pixels wide"                     
  2953.         BUGS                    
  2954.