Changeset 3490:4fca58ef8b6c in orange


Ignore:
Timestamp:
04/04/07 13:36:05 (7 years ago)
Author:
Gregor <Gregor@…>
Branch:
default
Convert:
9e18ec4df87ab1b546100f54449c6196f2c56fa9
Message:
  • removed ExampleTableWithClass
  • changed signal names
File:
1 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/OWTreeViewer2D.py

    r3194 r3490  
    4545        for s in self.spliterObj: 
    4646            s.setPoints(0,0,w-1,0) 
    47              
     47 
    4848    def setFont(self, font, rearange=True): 
    4949        for r in self.textObj: 
     
    9494            self.spliterLines.append((text, color)) 
    9595        self.lineObj.append(t) 
    96         if fitSquare:   
    97             self.fitSquare()                 
     96        if fitSquare: 
     97            self.fitSquare() 
    9898        if self.isShown: 
    9999            self.show() 
    100      
     100 
    101101    def truncateText(self, trunc=True): 
    102102        if trunc: 
     
    109109            for i in range(len(self.textObj)): 
    110110                self.textObj[i].setText(self.textLines[i][0]) 
    111                  
     111 
    112112    def reArangeText(self, fitSquare=True, startOffset=0): 
    113113        self.textOffset=startOffset 
     
    120120                self.textOffset+=self.lineSpacing 
    121121        if fitSquare: 
    122             self.fitSquare()                 
     122            self.fitSquare() 
    123123 
    124124    def setText(self, ind, text, fitSquare=True): 
     
    128128            if fitSquare: 
    129129                self.fitSquare() 
    130                  
     130 
    131131    def fitSquare(self): 
    132132        w=max([t.boundingRect().width() for t in self.textObj]+[2]) 
     
    145145        CanvasTextContainer.setZ(self,z) 
    146146        self.shadow.setZ(z-1) 
    147          
     147 
    148148    def setSize(self, w, h): 
    149149        CanvasTextContainer.setSize(self, w, h) 
     
    253253        if self.isOpen: 
    254254            for n in self.nodeList: 
    255                 n.showSubtree()         
     255                n.showSubtree() 
    256256 
    257257    def updateEdge(self): 
     
    293293        self.selectionSquare=[] 
    294294 
    295      
     295 
    296296 
    297297def bubbleConstructor(node=None, pos =None, canvas=None): 
    298298    return CanvasBubbleInfo(node, pos, canvas) 
    299      
     299 
    300300class TreeCanvasView(QCanvasView): 
    301301    def __init__(self, master, canvas, *args): 
     
    309309        self.viewport().setMouseTracking(True) 
    310310        self.bubbleConstructor=bubbleConstructor 
    311          
     311 
    312312    def setNavigator(self, nav): 
    313313        self.navigator=nav 
    314314        self.master.connect(self.canvas(),SIGNAL("resized()"),self.navigator.resizeCanvas) 
    315315        self.master.connect(self ,SIGNAL("contentsMoving(int,int)"),self.navigator.moveView) 
    316          
     316 
    317317    def resizeEvent(self, event): 
    318318        QCanvasView.resizeEvent(self, event) 
    319319        if self.navigator: 
    320320            self.navigator.resizeView() 
    321              
     321 
    322322    def updateDropplet(self, dropplet=None): 
    323323        if dropplet==self.dropplet: 
     
    329329            self.dropplet.setBrush(QBrush(Qt.black)) 
    330330        self.canvas().update() 
    331          
     331 
    332332    def updateBubble(self, node=None, pos=QPoint(0,0)): 
    333333        if self.bubbleNode==node and self.bubble: 
     
    346346            self.bubble=self.bubbleNode=None 
    347347        self.canvas().update() 
    348      
     348 
    349349    def updateSelection(self, node=None): 
    350350        if not node or node==self.selectedNode: 
     
    359359            self.selectedNode.setSelectionBox() 
    360360            self.master.updateSelection(self.selectedNode) 
    361              
     361 
    362362    def contentsMouseMoveEvent(self,event): 
    363363        obj=self.canvas().collisions(event.pos()) 
     
    374374            self.updateDropplet() 
    375375            self.updateBubble() 
    376                  
     376 
    377377    def contentsMousePressEvent(self, event): 
    378378        if self.dropplet: 
     
    385385            if obj and isinstance(obj[0], QCanvasRectangle): 
    386386                self.updateSelection(obj[0]) 
    387         self.canvas().update()           
     387        self.canvas().update() 
    388388 
    389389 
     
    419419        self._fixPos(node,x,y) 
    420420        self.resize(self.gx+ExpectedBubbleWidth, self.gy+ExpectedBubbleHeight) 
    421          
     421 
    422422    def _fixPos(self, node, x, y): 
    423423        ox=x 
     
    462462        self.bubbleConstructor=self.myBubbleConstructor 
    463463        self.isShown=False 
    464          
     464 
    465465    def leech(self): 
    466466        if not self.isShown: 
     
    474474            self.walkupdate(self.rootNode) 
    475475        self.canvas().update() 
    476              
    477      
     476 
     477 
    478478    def walkcreate(self, masterNode, parent): 
    479479        node=self.NavigatorNode(masterNode, masterNode.tree, parent or self.canvas(), self.canvas()) 
     
    494494        else: 
    495495            node.hideSubtree() 
    496          
     496 
    497497    def contentsMousePressEvent(self, event): 
    498498        if self.canvas().onCanvas(event.pos()): 
     
    502502    def contentsMouseReleaseEvent(self, event): 
    503503        self.buttonPressed=False 
    504          
     504 
    505505    def contentsMouseMoveEvent(self, event): 
    506506        if self.buttonPressed: 
     
    548548    def myBubbleConstructor(self, node, pos, canvas): 
    549549        return self.masterView.bubbleConstructor(node.masterNode, pos, canvas) 
    550          
    551      
    552 class OWTreeViewer2D(OWWidget):  
     550 
     551 
     552class OWTreeViewer2D(OWWidget): 
    553553    settingsList = ["ZoomAutoRefresh", "AutoArrange", "NodeBubblesEnabled", 
    554554                    "Zoom", "VSpacing", "HSpacing", "MaxTreeDepth", "MaxTreeDepthB", 
     
    558558 
    559559    def __init__(self, parent=None, signalManager = None, name='TreeViewer2D'): 
    560         OWWidget.__init__(self, parent, signalManager, name)  
     560        OWWidget.__init__(self, parent, signalManager, name) 
    561561        self.callbackDeposit = [] # deposit for OWGUI callback functions 
    562562        self.root = None 
    563563        self.selectedNode = None 
    564          
     564 
    565565        self.inputs = [("Classification Tree", orange.TreeClassifier, self.ctree)] 
    566         self.outputs = [("Classified Examples", ExampleTableWithClass), ("Examples", ExampleTable)] 
     566        self.outputs = [("Examples", ExampleTable)] 
    567567 
    568568        # some globaly used variables (get rid!) 
     
    577577        self.NodeSize = 5 
    578578        self.NodeInfo = [0, 1] 
    579          
     579 
    580580        self.NodeColorMethod = 0 
    581581        self.Zoom = 5 
     
    601601        OWGUI.checkBox(GeneralTab, self, 'NodeBubblesEnabled', 'Node Bubbles', tooltip='When mouse over the node show info bubble') 
    602602        OWGUI.checkBox(GeneralTab, self, 'TruncateText', 'Truncate Text To Fit Margins', tooltip='Truncate any text to fit the node width', callback=self.toggleTruncateText) 
    603          
     603 
    604604        self.infBox = QVGroupBox(GeneralTab) 
    605605        self.infBox.setSizePolicy(QSizePolicy(QSizePolicy.Minimum , QSizePolicy.Fixed )) 
     
    607607    self.infoa = QLabel('No tree.', self.infBox) 
    608608        self.infob = QLabel('', self.infBox) 
    609          
     609 
    610610        self.tabs.insertTab(GeneralTab, "General") 
    611611 
     
    646646        self.canvas.fixPos(self.rootNode,10,10) 
    647647        self.canvas.update() 
    648          
     648 
    649649    def toggleVSpacing(self): 
    650650        self.rescaleTree() 
    651651        self.canvas.fixPos(self.rootNode,10,10) 
    652652        self.canvas.update() 
    653          
     653 
    654654    def toggleHSpacing(self): 
    655655        self.rescaleTree() 
    656656        self.canvas.fixPos(self.rootNode,10,10) 
    657657        self.canvas.update() 
    658          
     658 
    659659    def toggleTruncateText(self): 
    660660        for n in self.canvas.nodeList: 
    661661           n.truncateText(self.TruncateText) 
    662662        self.canvas.update() 
    663      
     663 
    664664    def toggleTreeDepth(self): 
    665665        self.walkupdate(self.rootNode) 
    666666        self.canvas.fixPos(self.rootNode,10,10) 
    667667        self.canvas.update() 
    668          
     668 
    669669    def toggleLineWidth(self): 
    670670        for n in self.canvas.nodeList: 
     
    678678            n.setEdgeWidth(width) 
    679679        self.canvas.update() 
    680              
     680 
    681681    def toggleNodeSize(self): 
    682682        pass 
    683      
     683 
    684684    def toggleNavigator(self): 
    685685        if self.navWidget.isVisible(): 
     
    690690            self.treeNav.isShown=True    # just so it knows it is shown 
    691691            self.treeNav.leech() 
    692              
     692 
    693693    def activateLoadedSettings(self): 
    694694        if not self.tree: 
    695             return  
     695            return 
    696696        self.rescaleTree() 
    697697        self.canvas.fixPos(self.rootNode,10,10) 
     
    703703        self.treeNav.leech() 
    704704        #self.toggleNavigator() 
    705          
     705 
    706706    def ctree(self, tree=None): 
    707707        self.clear() 
     
    716716            self.infoa.setText('Number of nodes: ' + str(orngTree.countNodes(tree))) 
    717717            self.infob.setText('Number of leaves: ' + str(orngTree.countLeaves(tree))) 
    718             self.ClassColors=OWGraphTools.ColorPaletteHSV(len(self.tree.distribution))                          
     718            self.ClassColors=OWGraphTools.ColorPaletteHSV(len(self.tree.distribution)) 
    719719            self.rootNode=self.walkcreate(self.tree, None) 
    720720            self.canvas.fixPos(self.rootNode,self.HSpacing,self.VSpacing) 
     
    742742        for n in node.nodeList: 
    743743            self.walkupdate(n,level+1) 
    744              
     744 
    745745    def clear(self): 
    746746        self.tree=None 
     
    759759        if node: 
    760760            self.centerNodeButton.setDisabled(0) 
    761             self.send("Classified Examples", node.tree.examples) 
    762761            self.send("Examples", node.tree.examples) 
    763762        else: 
    764763            self.centerNodeButton.setDisabled(1) 
    765             self.send("Classified Examples", None) 
    766764            self.send("Examples", None) 
    767765 
Note: See TracChangeset for help on using the changeset viewer.