home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 13 Bitmap
/
13-Bitmap.zip
/
art256.zip
/
SNAP.CMD
< prev
next >
Wrap
OS/2 REXX Batch file
|
1995-04-10
|
2KB
|
58 lines
/* AUTO GRID ICONS */
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
call SysLoadFuncs
PARSE ARG ICONSIZE TILESIZE FOLNAME
XYOFFSET=(TILESIZE-ICONSIZE)/2
WPPOS=0
IF SYSGETEA(FOLNAME,".ICONPOS","TYPEINFO")<>0
THEN
DO SAY 'ERROR'
EXIT
END
IF SYSGETEA(FOLNAME,".CLASSINFO","CLASSINFO")<>0
THEN
DO SAY 'BOOBOO'
EXIT
END
KEYNAMEPOS=LASTPOS('@10',CLASSINFO)-6
KEYNAME=SUBSTR(CLASSINFO,KEYNAMEPOS,9)
CALL SYSINI 'USER','PM_Workplace:FolderPos',KEYNAME
KEYINFO=RESULT
WIDTH=(C2D(SUBSTR(KEYINFO,11,1))+C2D(SUBSTR(KEYINFO,12,1))*256)-8
HEIGHT=(C2D(SUBSTR(KEYINFO,13,1))+C2D(SUBSTR(KEYINFO,14,1))*256)-32
WPPOS=26
DO FOREVER
XSTRPOS=WPPOS
YSTRPOS=WPPOS+4
XOLDPOS=C2D(SUBSTR(TYPEINFO,XSTRPOS,1))+C2D(SUBSTR(TYPEINFO,XSTRPOS+1,1))*256
YOLDPOS=C2D(SUBSTR(TYPEINFO,YSTRPOS,1))+C2D(SUBSTR(TYPEINFO,YSTRPOS+1,1))*256
XNEWPOS=TRUNC(XOLDPOS/TILESIZE)*TILESIZE+XYOFFSET
YNEWPOS=HEIGHT-(TRUNC((HEIGHT-YOLDPOS)/TILESIZE)+1)*TILESIZE+XYOFFSET
IF YNEWPOS<0 THEN YNEWPOS=YNEWPOS+64
XNEWLOW=XNEWPOS-TRUNC(XNEWPOS/256)*256
XNEWHIGH=TRUNC(XNEWPOS/256)
YNEWLOW=YNEWPOS-TRUNC(YNEWPOS/256)*256
YNEWHIGH=TRUNC(YNEWPOS/256)
TYPEINFO=OVERLAY(D2C(XNEWLOW),TYPEINFO,XSTRPOS)
TYPEINFO=OVERLAY(D2C(XNEWHIGH),TYPEINFO,XSTRPOS+1)
TYPEINFO=OVERLAY(D2C(YNEWLOW),TYPEINFO,YSTRPOS)
TYPEINFO=OVERLAY(D2C(YNEWHIGH),TYPEINFO,YSTRPOS+1)
IF SUBSTR(TYPEINFO,WPPOS+8,1)=D2C(0) THEN LEAVE
WPPOS=POS(D2C(0),TYPEINFO,WPPOS+8)+1
END
IF SYSPUTEA(FOLNAME,".ICONPOS",TYPEINFO)<>0
THEN SAY 'ERROR PUTTING EA'
EXIT