[futurebasic] re: [FB] PICT Resources -- rough working code...

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : March 1999 : Group Archive : Group : All Groups

From: Bowerbird@...
Date: Wed, 10 Mar 1999 14:29:36 EST
'     here's rough code that illustrates the job...
'     -bowerbird

COMPILE 0,_caseinsensitive : % _ACount,0 : WINDOW OFF
gcounter=0
WINDOW 1,"",(0,0)-(600,400),_dialogshadow
tofilename$="pyates-to.rsrc"
fromfilename$="pyates-from.rsrc"
tovolrefnum%=0
fromvolrefnum%=0
gpictsto%=FN OPENRFPERM (tofilename$,tovolrefnum%,_fswrperm)
gpictsfrom%=FN OPENRFPERM (fromfilename$,fromvolrefnum%,_fsrdperm)
IF gpictsto%<=0 THEN BEEP : DELAY 1000 : END
IF gpictsfrom%<=0 THEN BEEP : BEEP : DELAY 1000 : END
CALL USERESFILE(gpictsfrom%)
END GLOBALS

CLEAR LOCAL FN savetonew (p&,rsrcnum%,rsrcname$)
  s&=p&
  CALL DETACHRESOURCE(p&)
  CALL RELEASERESOURCE(p&) 
  CLS : PICTURE (0,0),s&
  LOCATE 10,0 : PRINT rsrcnum%,rsrcname$
  CALL USERESFILE(gpictsto%)
  CALL ADDRESOURCE (s&,_"PICT",rsrcnum%,rsrcname$)
  CALL WRITERESOURCE (s&)
  CALL SETRESATTRS (s&,32)
  CALL DETACHRESOURCE (s&)
  DEF DISPOSEH (s&)
  CALL USERESFILE(gpictsfrom%)
END FN

CLEAR LOCAL FN doit
  CALL USERESFILE(gpictsfrom%)
  gcounter=gcounter+1
  numberofpicts=FN COUNT1RESOURCES (_"PICT")
  LONG IF gcounter<=numberofpicts
    p&=FN GET1INDRESOURCE (_"PICT",gcounter)
    LONG IF p&
      CALL GETRESINFO (p&,rsrcnum%,restype&,rsrcname$)
      FN savetonew (p&,rsrcnum%,rsrcname$)
    END IF
  XELSE
    gcounter=-1
    cls : print "command-period to end..."
  END IF
END FN

CLEAR LOCAL FN doend
  CALL UPDATERESFILE (gpictsto%)
  CALL CLOSERESFILE (gpictsto%)
  CALL CLOSERESFILE (gpictsfrom%)
  END
END FN

ON BREAK FN doend
DO
  HANDLEEVENTS
  IF gcounter>=0 THEN FN doit
UNTIL 0