def __init__(self, renderWindow, camera, sceneManager): self.raySceneQuery=0 self.connections=[] SampleFramework.FrameListener.__init__(self, renderWindow, camera) self.sceneManager = sceneManager self.keepRendering = True # whether to continue rendering or not self.mCamera = camera self.mCount = 0 self.mCurrentObject = None self.mLMouseDown = False self.mRMouseDown = False # Reduce move speed self.mMoveSpeed= 50 self.mRotateSpeed=100 self.meshes=[] self.items=[] self.mesh_name="robot.mesh" self.raySceneQuery = sceneManager.createRayQuery(ogre.Ray(self.mCamera.position, ogre.Vector3.NEGATIVE_UNIT_Y)) self.blue = cegui.colour(0.0, 0.0, 1.0, 0.5) self.red = cegui.colour(1.0, 0.0, 0.0, 1.0) self.green = cegui.colour(0.0, 1.0, 0.0, 1.0) self.blue_back = cegui.colour(0.0, 0.0, 1.0, 1.0) self.red_back = cegui.colour(1.0, 0.0, 0.0, 1.0) self.loadMesList()
def onScrollUpdate(args): #print `args` # Hack cant seem to get window from event # get the scrollbar positions r = cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Controls/Red").scrollPosition g = cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Controls/Green").scrollPosition b = cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Controls/Blue").scrollPosition cegui.WindowManager.getSingleton().getWindow("Demo8/Window2/Tips").textColours = cegui.colour(r, g, b, 1.0) # Set the Static image colour cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Controls/ColourSample" ).imageColours = cegui.colour(r, g, b, 1.0)
def loadMesList(self): try: red = cegui.colour(1.0, 0.0, 0.0, 0.5) # get list meshes meshList = ogre.ResourceGroupManager.getSingleton().findResourceNames("General", "*.mesh") #print "Ptr is",dir(ogre.StringVectorPtr) #print "Ptr is",dir(ogre.StringVector) #print type(meshList) #print "MeshList is",meshList.size() #print dir(meshList) iterator = meshList.get() meshes = [ iterator.__getitem__(j) for j in range(iterator.size()) ] # iterate through list and add to combo for i, v in enumerate(meshes): # add Row to specified MCList self.addRow("MeshList",v,"Mesh") except: print "Error Loading Mesh List"
def onAdd(args): #print `args` # Get the list box / edit box window editBox = cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Controls/Editbox") listBox = cegui.WindowManager.getSingleton().getWindow("Demo8/Window1/Listbox") # If there's text add to the listbox txt=editBox.text if (len(txt)>0): #txt = editBox.text #id = listBox.itemCount item = cegui.ListboxTextItem(editBox.text,listBox.itemCount) # set the item selection colours and image otherwise you wont see the item item.selectionColours = cegui.colour(0.0, 0.0, 1.0, 1.0) item.selectionBrushImage = "TaharezLook", "ListboxSelectionBrush" # add item to list box listBox.addItem(item) item.thisown = 0 editBox.text = ""
# # init OpenGl via glfw # glfw.init() window = glfw.create_window(800, 600, "My OpenGL Window", None, None) glfw.make_context_current(window) # # init and configure CEGUI # renderer = CEGUIOpenGL.OpenGLRenderer.bootstrapSystem() resProv = CEGUI.toDefaultResourceProvider( CEGUI.System.getSingleton().getResourceProvider()) resProv.setResourceGroupDirectory("looknfeels", "../datafiles/looknfeel") resProv.setResourceGroupDirectory("schemes", "../datafiles/schemes") resProv.setResourceGroupDirectory("layouts", "../datafiles/layouts") resProv.setResourceGroupDirectory("imagesets", "../datafiles/imagesets") resProv.setResourceGroupDirectory("fonts", "../datafiles/fonts") CEGUI.Font.setDefaultResourceGroup("fonts") CEGUI.ImageManager.setImagesetDefaultResourceGroup("imagesets") CEGUI.Scheme.setDefaultResourceGroup("schemes") CEGUI.WidgetLookManager.setDefaultResourceGroup("looknfeels") CEGUI.WindowManager.setDefaultResourceGroup("layouts") CEGUI.SchemeManager.getSingleton().createFromFile("TaharezLook.scheme") CEGUI.System.getSingleton().setDefaultCursorName("TaharezLook/MouseArrow")
def _createGUI(self): # initiaslise CEGUI Renderer # AJM Change in call parameters, see the 0 whihc is maxquads self.guiRenderer = cegui.OgreCEGUIRenderer(self.renderWindow,ogre.RENDER_QUEUE_OVERLAY, False, 3000,self.sceneManager) self.system = cegui.System(self.guiRenderer) cegui.Logger.getSingleton().setLoggingLevel(cegui.Informative) #loggingLevel = cegui.Insane # load Cegui Vanilla Skin Scheme cegui.SchemeManager.getSingleton().loadScheme(scheme_filename="TaharezLookSkin.scheme") self.system.setDefaultMouseCursor("TaharezLook", "MouseArrow") # load an image to use as a background cegui.ImagesetManager.getSingleton().createImagesetFromImageFile("BackgroundImage", "GPN-2000-001437.tga") # here we will use a StaticImage as the root and use it to place a background image # background = cegui.WindowManager.getSingleton().createWindow("", "BackgroundImage") background = cegui.WindowManager.getSingleton().createWindow("Vanilla/StaticImage", "BackgroundImage") # set area rectangle background.rect=(cegui.Relative, cegui.Rect(0, 0, 1, 1)) background.setFormatting(background.HorzStretched,background.VertStretched) background.frameEnabled =False # disable frame and standard background background.backgroundEnabled=False # set the background image background.image=("BackgroundImage", "full_image") # install this as the root GUI sheet cegui.System.getSingleton().guiSheet=background cegui.FontManager.getSingleton().createFont("Iconified-12.font") # load some demo windows and attach to the background 'root' background.addChildWindow(cegui.WindowManager.getSingleton().loadWindowLayout("DemoVanillaSkin.layout")) background.activate() # load ogre tga textures in listbox red = cegui.colour(1.0, 0.0, 0.0, 0.5) listbox = cegui.WindowManager.getSingleton().getWindow("Demo7/Window2/Listbox") imageList = ogre.ResourceGroupManager.getSingleton().findResourceNames("General", "*.tga") iterator = imageList.get() images = [ iterator.__getitem__(j) for j in range(iterator.size()) ] for i, v in enumerate(images): self.img.append(cegui.ListboxTextItem(v,i)) item = self.img[i] item.selectionColours=red item.selectionBrushImage=("Vanilla-Images", "GenericBrush") listbox.addItem(item) # set image viewer characteristics frame = cegui.WindowManager.getSingleton().getWindow("Demo/ImageViewer") frame.alpha = 0.5 staticimage = cegui.WindowManager.getSingleton().getWindow("Demo/ImageViewer/area2") staticimage.frameColours=(cegui.colour(0.0, 1.0, 0.0, 1.0)) staticimage.frameEnabled = True # set image viewer characteristics cegui.ImagesetManager.getSingleton().createImagesetFromImageFile("BackgroundImage2", "GPN-2000-001437.tga") staticimage.image=("BackgroundImage2", "full_image") # suscribe show image event addButton = cegui.WindowManager.getSingleton().getWindow("Demo/NewNode/Okay") addButton.alpha = 0.5 self.ec = addButton.subscribeEvent(cegui.PushButton.EventClicked, onShowImage,"")