home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 113 / EnigmaAmiga113CD.iso / software / sviluppo / easygui_os12 / source / hybrid / openwin.e < prev    next >
Encoding:
Text File  |  2000-06-11  |  1.7 KB  |  49 lines

  1. /* RST: hybrid "any kick" replacement for intuition library "OpenWindowTagList"
  2.  
  3.    Please do not redistribute modified versions of this code. If you have
  4.    any ideas how to make things better contact me at metamonk@yahoo.com.
  5.  
  6.    Also, please do not distribute further 'hybrid/#?' modules since there
  7.    is already a large amount of additional stuff in work. Contact me...
  8.  
  9.    This code is Copyright (c) 2000, Ralf 'hippie2000' Steines, and
  10.    inherits the legal state from the original EasyGUI disctribution. */
  11.  
  12. OPT MODULE
  13. OPT EXPORT
  14.  
  15. MODULE 'intuition/intuition',
  16.        'intuition/screens',
  17.        'hybrid/version'
  18.  
  19. PROC openWindowTagList(newwin,taglist:PTR TO LONG) -> RST: new, hybrid "any kick" replacement
  20.   DEF win,nw:PTR TO nw,tag,data
  21.   IF intuiVersion(36)
  22.     win:=OpenWindowTagList(newwin,taglist)
  23.   ELSE
  24.     NEW nw
  25.     WHILE tag:=taglist[]++
  26.       data:=taglist[]++
  27.       SELECT tag
  28.         CASE WA_LEFT;         nw.leftedge:=data
  29.         CASE WA_TOP;          nw.topedge:=data
  30.         CASE WA_WIDTH;        nw.width:=data
  31.         CASE WA_HEIGHT;       nw.height:=data
  32.         CASE WA_IDCMP;        nw.idcmpflags:=data
  33.         CASE WA_FLAGS;        nw.flags:=data
  34.         CASE WA_TITLE;        nw.title:=data
  35.         CASE WA_CUSTOMSCREEN; nw.screen:=data
  36.         CASE WA_MINWIDTH;     nw.minwidth:=data
  37.         CASE WA_MINHEIGHT;    nw.minheight:=data
  38.         CASE WA_MAXWIDTH;     nw.maxwidth:=data
  39.         CASE WA_MAXHEIGHT;    nw.maxheight:=data
  40.       ENDSELECT
  41.     ENDWHILE
  42.     nw.type:=IF nw.screen THEN CUSTOMSCREEN ELSE WBENCHSCREEN
  43.     nw.detailpen:=IF nw.screen THEN nw.screen.detailpen ELSE 0
  44.     nw.blockpen:=IF nw.screen THEN nw.screen.blockpen ELSE 1
  45.     win:=OpenWindow(nw)
  46.     END nw
  47.   ENDIF
  48. ENDPROC win
  49.