def editToolSetup(self, editTool): ''' the modificator tool has been pressed, it's now starting the task to modify the node ''' #messenger.send(EVENT_MODELCONTROLLER_EDITTOOL_SELECTED) transX, transY, rotX, rotY, scaleX, scaleY = MODEL_MODIFICATION_FUNCTIONS[ editTool] task = Task(self.editToolTask) selectedObject = modelController.getSelectedObject() if self.__relativeModificationTo == selectedObject: self.__modificationNode = selectedObject.getNodepath() else: # we are moving relative to some other node self.__origModelParent = selectedObject.getNodepath().getParent() self.__modificationNode = self.__relativeModificationTo.attachNewNode( 'dummyNode') self.__modificationNode.setPos( selectedObject.getNodepath().getPos()) selectedObject.getNodepath().wrtReparentTo(self.__modificationNode) if type(self.__modificationNode) == NodePath: taskMgr.add( task, 'editToolTask', extraArgs=[task, transX, transY, rotX, rotY, scaleX, scaleY], uponDeath=self.editToolCleanup) self.accept('mouse1-up', taskMgr.remove, ['editToolTask']) mouseHandler.toggleMouseFixed(True) else: print "E: ModelModificator.editToolSetup: invalid node" print " -", type(self.__modificationNode ), self.__modificationNode.__class__.__name__
def enterMouseButton3Pressed( self ): #self.ignoreAll() # add the task and the abort funtion self.taskMouseButton3PressedRunning = True taskMgr.add( self.taskMouseButton3Pressed, 'taskMouseButton3Pressed' ) self.accept( 'mouse3-up', self.request, ['Default'] ) # center the mouse to prevent a huge jump in the beginng mouseHandler.toggleMouseFixed( True )
def enterMouseButton3Pressed(self): #self.ignoreAll() # add the task and the abort funtion self.taskMouseButton3PressedRunning = True taskMgr.add(self.taskMouseButton3Pressed, 'taskMouseButton3Pressed') self.accept('mouse3-up', self.request, ['Default']) # center the mouse to prevent a huge jump in the beginng mouseHandler.toggleMouseFixed(True)
def editToolCleanup(self, task): ''' stop editing using the edittool (the mouse button has been released) ''' messenger.send(EVENT_MODELCONTROLLER_EDITTOOL_DESELECTED) # the modification node needs to be destroyed if it's not the __selectedModel if self.__modificationNode != modelController.getSelectedObject().getNodepath(): modelController.getSelectedObject().getNodepath().wrtReparentTo(self.__origModelParent) self.__modificationNode.detachNode() self.__modificationNode.removeNode() mouseHandler.toggleMouseFixed(False) self.__setMode() messenger.send(EVENT_MODELCONTROLLER_FULL_REFRESH)
def editToolCleanup(self, task): ''' stop editing using the edittool (the mouse button has been released) ''' messenger.send(EVENT_MODELCONTROLLER_EDITTOOL_DESELECTED) # the modification node needs to be destroyed if it's not the __selectedModel if self.__modificationNode != modelController.getSelectedObject( ).getNodepath(): modelController.getSelectedObject().getNodepath().wrtReparentTo( self.__origModelParent) self.__modificationNode.detachNode() self.__modificationNode.removeNode() mouseHandler.toggleMouseFixed(False) self.__setMode() messenger.send(EVENT_MODELCONTROLLER_FULL_REFRESH)
def editToolSetup(self, editTool): ''' the modificator tool has been pressed, it's now starting the task to modify the node ''' #messenger.send(EVENT_MODELCONTROLLER_EDITTOOL_SELECTED) transX, transY, rotX, rotY, scaleX, scaleY = MODEL_MODIFICATION_FUNCTIONS[editTool] task = Task(self.editToolTask) selectedObject = modelController.getSelectedObject() if self.__relativeModificationTo == selectedObject: self.__modificationNode = selectedObject.getNodepath() else: # we are moving relative to some other node self.__origModelParent = selectedObject.getNodepath().getParent() self.__modificationNode = self.__relativeModificationTo.attachNewNode('dummyNode') self.__modificationNode.setPos(selectedObject.getNodepath().getPos()) selectedObject.getNodepath().wrtReparentTo(self.__modificationNode) if type(self.__modificationNode) == NodePath: taskMgr.add(task, 'editToolTask', extraArgs = [task,transX, transY, rotX, rotY, scaleX, scaleY], uponDeath=self.editToolCleanup) self.accept('mouse1-up', taskMgr.remove, ['editToolTask']) mouseHandler.toggleMouseFixed(True) else: print "E: ModelModificator.editToolSetup: invalid node" print " -", type(self.__modificationNode), self.__modificationNode.__class__.__name__
def exitMouseButton3Pressed( self ): self.ignore('mouse3-up') taskMgr.remove( 'taskMouseButton3Pressed' ) self.taskMouseButton1PressedRunning = False mouseHandler.toggleMouseFixed( False )
def exitMouseButton3Pressed(self): self.ignore('mouse3-up') taskMgr.remove('taskMouseButton3Pressed') self.taskMouseButton1PressedRunning = False mouseHandler.toggleMouseFixed(False)