class CocosScene(Layer): def __init__(self): super(CocosScene, self).__init__() self._bgLayer = None self._stageBgLayer = None self._contentLayer = None self._rulerLayer = None self._borderLayer = None self._rootNode = None self._borderDevice = None self._stageBorderType = 0 self.setupEditorNodes() def setupEditorNodes(self): # TODO:@twenty0ne self._rulerLayer = RulersLayer() self.add(self._rulerLayer, z=6) # Border layer self._borderLayer = Layer() self.add(self._borderLayer, z=1) self._borderDevice = cocos.sprite.Sprite("images/missing-texture.png") self._borderLayer.add(self._borderDevice, z=1) # Gray background self._bgLayer = ColorLayer(128,128,128,255,width=4096,height=4096) self._bgLayer.position = 0,0 self._bgLayer.anchor = 0,0 self.add(self._bgLayer, z=-1) # Black content layer self._stageBgLayer = ColorLayer(0,0,0,255,width=0,height=0) self._stageBgLayer.anchor = 0.5,0.5 # TODO:@twenty0ne # stageBgLayer.ignoreAnchorPointForPosition = NO self.add(self._stageBgLayer, z=0) self._contentLayer = Layer() self.add(self._contentLayer) def nextFrame(self): # Setup border layer bounds = # Update rulers self._rulerLayer.updateWithSize([700,650],[0,0],1) def mouseEntered(self): # print "mouseEntered" self._rulerLayer.mouseEntered() def mouseExited(self): # print "mouseExited" self._rulerLayer.mouseExited() def mouseMoved(self, pos): # print "mouseMoved" self._rulerLayer.updateMousePos(pos) def replaceRootNodeWith(self, node): if self._rootNode: self._contentLayer.remove(self._rootNode) self._rootNode = node if not node: return self._contentLayer.add(node) def setStageBorder(self, ntype): self._borderDevice.visible = False if self._stageBgLayer.width == 0 or self._stageBgLayer.height == 0: ntype = kCCBBorderNone self._stageBgLayer.visible = False else: self._stageBgLayer.visible = True if ntype == kCCBBorderDevice: deviceTexture = None rotateDevice = True if rotateDevice: self._borderDevice.rotation = 90 else: self._borderDevice.rotation = 0 deviceTexture = pyglet.resource.image("images/frame-iphone.png") self._borderDevice.image = deviceTexture self._borderDevice.visible = True self._stageBorderType = ntype