コード例 #1
0
ファイル: geomViewWidget.py プロジェクト: UIKit0/meShaderEd
  def __init__ ( self ):
    QtGui.QWidget.__init__ ( self )

    # This is always the same
    self.ui=Ui_geomViewWidget ( )
    self.ui.setupUi ( self )

    self.imageNodes = []

    #self.ui.treeView.setDragEnabled ( True )
    #self.ui.treeView.setRootIsDecorated( True )

    QtCore.QObject.connect( self.ui.geomView, QtCore.SIGNAL( 'mouseDoubleClickEvent' ), self.updateViewer )
    QtCore.QObject.connect( self.ui.selector, QtCore.SIGNAL( 'currentIndexChanged(int)' ), self.onViewerChanged )
コード例 #2
0
ファイル: geomViewWidget.py プロジェクト: UIKit0/meShaderEd
class GeomViewWidget ( QtGui.QWidget ):
  #
  # __init__
  #
  def __init__ ( self ):
    QtGui.QWidget.__init__ ( self )

    # This is always the same
    self.ui=Ui_geomViewWidget ( )
    self.ui.setupUi ( self )

    self.imageNodes = []

    #self.ui.treeView.setDragEnabled ( True )
    #self.ui.treeView.setRootIsDecorated( True )

    QtCore.QObject.connect( self.ui.geomView, QtCore.SIGNAL( 'mouseDoubleClickEvent' ), self.updateViewer )
    QtCore.QObject.connect( self.ui.selector, QtCore.SIGNAL( 'currentIndexChanged(int)' ), self.onViewerChanged )
    #QtCore.QObject.connect( self.ui, QtCore.SIGNAL( 'paramChanged()' ), self.onParamChanged )

    #self.updateGui()
  #
  #
  #self.emit( QtCore.SIGNAL( 'onGfxNodeParamChanged(QObject,QObject)' ), self, param.name )
  #
  #
  def currentImageNode ( self ) :
    #
    gfxNode = None
    idx = self.ui.selector.currentIndex ()
    if len ( self.imageNodes ) > 0 :
      gfxNode = self.imageNodes [ idx ]
    return gfxNode
  #
  # addViewer
  #
  def addViewer ( self, gfxNode ) :
    #
    self.imageNodes.append ( gfxNode )
    self.ui.selector.addItem ( gfxNode.node.label )
  #
  # removeViewer
  #
  def removeViewer ( self, gfxNode ) :
    #
    i = 0
    for i in range ( len ( self.imageNodes ) ) :
      if gfxNode ==  self.imageNodes [ i ] :
        self.imageNodes.pop ( i )
        self.ui.selector.removeItem ( i )
        #QtCore.QObject.disconnect ( gfxNode.node, QtCore.SIGNAL( 'onNodeParamChanged(QObject,QObject)' ), self.onNodeParamChanged )
        break
      i += 1
  #
  # onViewerChanged
  #
  def onViewerChanged ( self, idx ) :
    #
    if len ( self.imageNodes ) > 0 :
      print ">> ImageViewWidget: onViewerChanged to %s" % self.imageNodes [ idx ].node.label
      #QtCore.QObject.connect( self.imageNodes[ idx ].node, QtCore.SIGNAL( 'onNodeParamChanged(QObject,QObject)' ), self.onNodeParamChanged )
      self.updateViewer()
  #
  # updateViewer
  #
  def updateViewer ( self ) :
    #
    print ">> ImageViewWidget: updateViewer"
    idx = self.ui.selector.currentIndex ()
    if len ( self.imageNodes ) > 0 :
      gfxNode = self.imageNodes [ idx ]
      print ">> ImageViewWidget: getImageName on %s" % gfxNode.node.label

      imageName = gfxNode.node.computeNode ()

      print ">> ImageViewWidget: imageName = %s" % imageName

      self.ui.imageArea.setImage ( imageName )

      #imageParam = None
      #for param in gfxNode.node.inputParams :
      #  if param.name == 'image' :
      #    imageParam = param
      #    break
      #if imageParam is not None :
      #  print ">> ImageViewWidget: image = %s" % imageParam.value
      #  self.ui.imageArea.setImage ( imageParam.value )
  #
  # onNodeParamChanged
  #
  def onNodeParamChanged ( self, node, param ) :
    #
    print ">> ImageViewWidget: onNodeParamChanged %s %s" % ( node.label, param.name )
    if node == self.currentImageNode ().node :
      self.updateViewer ()
  #
  # onNodeLabelChanged
  #
  def onNodeLabelChanged ( self, gfxNode, newLabel ) :
    #
    print ">> ImageViewWidget: onNodeLabelChanged %s %s" % ( gfxNode.node.label, newLabel )
    i = 0
    for i in range ( len ( self.imageNodes ) ) :
      if gfxNode ==  self.imageNodes [ i ] :
        self.ui.selector.setItemText ( i, newLabel )
        break
      i += 1