autodefine "off" $include "il.inc" $include "ilu.inc" $include "ilut.inc" WINDOW win INT bitmap,errorx POINTER image[2] ISTRING filename$[260] UINT hDC FLOAT DisplayW,DisplayH OPENWINDOW win,0,0,1024,768,@MINBOX|@MAXBOX|@SIZE,NULL,"FreeImage",&main SETWINDOWCOLOR win,RGB(219,219,219) BEGINMENU win MENUTITLE "&File" MENUITEM "&Rotate 10 deg",0,2 SEPARATOR MENUITEM "E&xit",0,3 ENDMENU 'Initiate DevIL/OpenIL ilInit() iluInit() ilutInit() iluImageParameter(ILU_FILTER,ILU_SCALE_LANCZOS3) FLOAT Red=219.0 / 255.0 FLOAT Green=219.0 / 255.0 FLOAT Blue=219.0 / 255.0 FLOAT Alpha=0 ilClearColour(Red,Green,Blue,Alpha) hDC=GETHDC(win) filename$="C:\\IWBDev3\\Projects\\DevIL\\home.gif" LoadFile() WAITUNTIL IsWindowClosed(win) RELEASEHDC(win,hDC) DELETEIMAGE bitmap,@IMGBITMAP ilShutDown() END SUB main(),INT SELECT @MESSAGE CASE @IDCREATE CENTERWINDOW win CASE @IDCLOSEWINDOW CLOSEWINDOW win CASE @IDMENUPICK SELECT @MENUNUM CASE 2 'Rotate GIF iluRotate(10) 'rotation degrees errorx=ilConvertImage(IL_GIF,IL_RGBA) bitmap=ilutConvertToHBitmap(hDC) DisplayW=ilGetInteger(il_image_width) DisplayH=ilGetInteger(il_image_height) SHOWIMAGE(win,bitmap,@IMGBITMAP,100,100,DisplayW,DisplayH) CASE 3 'Exit CLOSEWINDOW win ENDSELECT ENDSELECT RETURN 0 ENDSUB SUB LoadFile() IF(bitmap) DELETEIMAGE bitmap,@IMGBITMAP ENDIF ilGenImages(1,image[1]) ilBindImage(image[1]) ilLoadImage(filename$) bitmap=ilutConvertToHBitmap(hDC) IF(bitmap) DisplayW=ilGetInteger(il_image_width) DisplayH=ilGetInteger(il_image_height) SHOWIMAGE(win,bitmap,@IMGBITMAP,100,100,DisplayW,DisplayH) ENDIF ENDSUB