Small WinBlitz3D Test

Blitz3D Forums/Blitz3D Programming/Small WinBlitz3D Test

using winblitz3d's includes menus ive put a little demo showing menus/buttons in the runtime window.



Include "WinBlitz3D_Include.bb"

Graphics3D 640,480,16,2
SetBuffer BackBuffer()

camera = CreateCamera()
light = CreateLight()

cube = CreateCube()
PositionEntity cube,0,0,5

;
blitz_runtime_window = WinBlitzGUI(SystemProperty("AppHWND"))

; create window menus
window_menu = WindowMenu(blitz_runtime_window)
menu_file = CreateMenu("File",0,window_menu)
	CreateMenu("Open",1,menu_file) : AddMenuIcon(window_menu,1,"menuBMPS/menuload.bmp",16,16)
	CreateMenu("Save",2,menu_file) : AddMenuIcon(window_menu,2,"menuBMPS/menusave.bmp",16,16)
	CreateMenu("",0,menu_file)
	
	submenu_file = CreateMenu("Recent Files ",0,menu_file) 
		CreateMenu("D:\WinBlitz3D\Example_1.bb",3,submenu_file) : AddMenuIcon(window_menu,3,"menuBMPS/menurecent.bmp",16,16)
		CreateMenu("D:\WinBlitz3D\Example_2.bb",4,submenu_file) : AddMenuIcon(window_menu,4,"menuBMPS/menurecent.bmp",16,16)
		
	CreateMenu("",0,menu_file)
	CreateMenu("Quit",5,menu_file) : AddMenuIcon(window_menu,5,"menuBMPS/menuquit.bmp",16,16)

menu_edit = CreateMenu("Edit",0,window_menu)
	CreateMenu("Cut",6,menu_edit)  : AddMenuIcon(window_menu,6,"menuBMPS/menucut.bmp",16,16)
	CreateMenu("Copy",7,menu_edit) : AddMenuIcon(window_menu,7,"menuBMPS/menucopy.bmp",16,16)
	CreateMenu("Paste",8,menu_edit) : AddMenuIcon(window_menu,8,"menuBMPS/menupaste.bmp",16,16)

menu_disable = CreateMenu("Disable Items",0,window_menu)
	CreateMenu("ITEM",9,menu_disable)
	CreateMenu("Disable Item",10,menu_disable) : AddMenuIcon(window_menu,10,"menuBMPS/menudisable.bmp",16,16)
	CreateMenu("Enable Item",11,menu_disable) : AddMenuIcon(window_menu,11,"menuBMPS/menuenable.bmp",16,16)
	DisableMenuItem(window_menu,9)

menu_check = CreateMenu("Check Items",0,window_menu)
	CreateMenu("ITEM",12,menu_check):CheckMenuItem(window_menu,12)
	CreateMenu("Check Item",13,menu_check) : AddMenuIcon(window_menu,13,"menuBMPS/menudisable.bmp",16,16)
	CreateMenu("Uncheck Item",14,menu_check) : AddMenuIcon(window_menu,14,"menuBMPS/menuenable.bmp",16,16)
			
UpdateWindowMenu(blitz_runtime_window,window_menu)

button = CreateButton("move cube",100,100,100,20,blitz_runtime_window,0)
button_quit = CreateButton("quit",100,140,100,20,blitz_runtime_window,0)


While Not KeyDown(1)

	TurnEntity cube,1,1,1
	
	UpdateWorld
	RenderWorld
	
	msg = WaitGUIEvents()
	
	If msg <> 0 Then DebugLog "Event "+Hex(msg)

	Select msg
		
		Case WM_KEYDOWN
			Text 100,50,"WM_KEYDOWN"
			
		Case WM_MOVE
			Text 100,50,"WM_MOVE"
			
		Case WM_COMMAND
		
			If lParamGUIEvents() = 0 Then ; menu selected
				menuid = LOWORD(wParamGUIEvents())
				
				Select menuid 
					
					Case 5
						EndGUI 
						End

				End Select
			EndIf
			
			Select HIWORD(wParamGUIEvents()) ; wNotifyCode
	
				Case BN_CLICKED
					gadget_selected = lParamGUIEvents()
					Select gadget_selected
						Case button
							TranslateEntity cube,0,0,1

						Case button_quit
							EndGUI 
							End
					End Select
			Default
			
					
			End Select
	Default
		Text 100,10,"NO EVENTS"
	End Select
	
	Text 200,10,"Menu Selected "+menuid
	
	FlushGUIEvents
	
	Flip
	
Wend

FreeGadget button
EndGraphics
EndGUI 
Print "bye, press any mouse button"
MouseWait
End


this functions ok here on my pc, anyone wont to give it a try.

kev