Changeset 8288:afabe98cd6f7 in orange


Ignore:
Timestamp:
06/01/11 14:08:02 (3 years ago)
Author:
Noughmad <Noughmad@…>
Branch:
default
Convert:
d2c87c5b1cf4bc52930d3eb7d06c55f5f8a0eaeb
Message:

add methods to change and show/hide titles of axes

Location:
orange/OrangeWidgets
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/Graph/axis.py

    r8284 r8288  
    4242 
    4343    def update(self): 
     44        if not self.line or not self.title: 
     45            return; 
     46        if not self.style: 
     47            self.style = shared_palette().axis_style 
    4448        self.line_item.setLine(self.line) 
    4549        self.line_item.setPen(self.style.pen()) 
     
    4751        title_pos = (self.line.p1() + self.line.p2())/2 
    4852        ## TODO: Move it according to self.label_pos 
     53        self.title_item.setVisible(self.show_title) 
    4954        self.title_item.setPos(title_pos) 
    5055        self.title_item.setRotation(self.line.angle()) 
     
    6570        self.update() 
    6671         
     72    def set_show_title(self, b): 
     73        self.show_title = b 
     74        self.update() 
     75         
    6776    def set_labels(self, labels): 
    6877        #TODO 
  • orange/OrangeWidgets/QtGraph.py

    r8284 r8288  
    172172 
    173173    def setShowXaxisTitle(self, b = -1): 
    174         if b == self.showXaxisTitle: return 
    175         if b != -1: 
    176             self.showXaxisTitle = b 
    177         if self.showXaxisTitle and self.XaxisTitle: 
    178             self.setAxisTitle(xBottom, self.XaxisTitle) 
    179         else: 
    180             self.setAxisTitle(xBottom, QwtText()) 
    181         self.repaint() 
    182  
     174        self.setShowAxisTitle(xBottom, b) 
     175         
    183176    def setXaxisTitle(self, title): 
    184         if title == self.YLaxisTitle: return 
    185         self.XaxisTitle = title 
    186         if self.showXaxisTitle and self.XaxisTitle: 
    187             self.setAxisTitle(xBottom, self.XaxisTitle) 
    188         else: 
    189             self.setAxisTitle(xBottom, QwtText()) 
    190         #self.updateLayout() 
    191         self.repaint() 
     177        self.setAxisTitle(xBottom, b) 
    192178 
    193179    def setShowYLaxisTitle(self, b = -1): 
    194         if b == self.showYLaxisTitle: return 
    195         if b != -1: 
    196             self.showYLaxisTitle = b 
    197         if self.showYLaxisTitle and self.YLaxisTitle: 
    198             self.setAxisTitle(yLeft, self.YLaxisTitle) 
    199         else: 
    200             self.setAxisTitle(yLeft, QwtText()) 
    201         #self.updateLayout() 
    202         self.repaint() 
     180        self.setShowAxisTitle(yLeft, b) 
    203181 
    204182    def setYLaxisTitle(self, title): 
    205         if title == self.YLaxisTitle: return 
    206         self.YLaxisTitle = title 
    207         if self.showYLaxisTitle and self.YLaxisTitle: 
    208             self.setAxisTitle(yLeft, self.YLaxisTitle) 
    209         else: 
    210             self.setAxisTitle(yLeft, QwtText()) 
    211         #self.updateLayout() 
    212         self.repaint() 
     183        self.setAxisTitle(yLeft, title) 
    213184 
    214185    def setShowYRaxisTitle(self, b = -1): 
    215         if b == self.showYRaxisTitle: return 
    216         if b != -1: 
    217             self.showYRaxisTitle = b 
    218         if self.showYRaxisTitle and self.YRaxisTitle: 
    219             self.setAxisTitle(yRight, self.YRaxisTitle) 
    220         else: 
    221             self.setAxisTitle(yRight, QwtText()) 
    222         #self.updateLayout() 
    223         self.repaint() 
     186        self.setShowAxisTitle(yRight, b) 
    224187 
    225188    def setYRaxisTitle(self, title): 
    226         if title == self.YRaxisTitle: return 
    227         self.YRaxisTitle = title 
    228         if self.showYRaxisTitle and self.YRaxisTitle: 
    229             self.setAxisTitle(yRight, self.YRaxisTitle) 
    230         else: 
    231             self.setAxisTitle(yRight, QwtText()) 
    232         #self.updateLayout() 
    233         self.repaint() 
     189        self.setAxisTitle(yRight, title) 
    234190 
    235191    def enableGridXB(self, b): 
     
    270226         
    271227    def setAxisTitle(self, axis_id, title): 
    272         self.axes[axis_id].set_title(title) 
    273         pass 
     228        if axis_id in self.axes: 
     229            self.axes[axis_id].set_title(title) 
     230             
     231    def setShowAxisTitle(self, axis_id, b): 
     232        if axis_id in self.axes: 
     233            self.axes[axis_id].set_show_title(b) 
    274234         
    275235    def setTickLength(self, axis_id, minor, medium, major): 
    276         self.axes[axis_id].set_tick_legth(minor, medium, major) 
    277         pass 
     236        if axis_id in self.axes: 
     237            self.axes[axis_id].set_tick_legth(minor, medium, major) 
    278238 
    279239    def setYLlabels(self, labels): 
    280         pass 
     240        self.setAxisLabels(yLeft, labels) 
     241 
    281242    def setYRlabels(self, labels): 
    282         pass 
     243        self.setAxisLabels(yRight, labels) 
    283244         
    284245    def addCurve(self, name, brushColor = Qt.black, penColor = Qt.black, size = 5, style = Qt.NoPen,  
     
    298259        return c 
    299260         
    300     def addAxis(self, axis_id, line, text): 
     261    def addAxis(self, axis_id): 
     262        self.axes[id] = Axis() 
    301263        pass         
    302264     
     
    326288        margin = min(self.axis_margin,  graph_rect.height()/4, graph_rect.height()/4) 
    327289        margin = 40 
    328         if xBottom in self.shown_axes: 
     290        if xBottom in self.axes and self.axes[xBottom].isVisible(): 
    329291            bottom_rect = QRectF(graph_rect) 
    330292            bottom_rect.setTop( bottom_rect.bottom() - margin) 
    331293            axis_rects[xBottom] = bottom_rect 
    332294            graph_rect.setBottom( graph_rect.bottom() - margin) 
    333         if xTop in self.shown_axes: 
     295        if xTop in self.axes and self.axes[xTop].isVisible(): 
    334296            top_rect = QRectF(graph_rect) 
    335297            top_rect.setBottom(top_rect.top() + margin) 
    336298            axis_rects[xTop] = top_rect 
    337299            graph_rect.setTop(graph_rect.top() + margin) 
    338         if yLeft in self.shown_axes: 
     300        if yLeft in self.shown_axes and self.axes[yLeft].isVisible(): 
    339301            left_rect = QRectF(graph_rect) 
    340302            left = graph_rect.left() + margin 
     
    346308            if xTop in axis_rects: 
    347309                axis_rects[xTop].setLeft(left) 
    348         if yRight in self.shown_axes: 
     310        if yRight in self.shown_axes and self.axes[yRight].isVisible(): 
    349311            right_rect = QRectF(graph_rect) 
    350312            right = graph_rect.right() - margin 
     
    358320                 
    359321        self.graph_area = graph_rect 
    360              
     322         
    361323        for id, item in self.axes.iteritems(): 
    362324            self.canvas.removeItem(item) 
    363              
    364         self.axes = dict() 
    365325             
    366326        for id, rect in axis_rects.iteritems(): 
     
    374334                line = QLineF(rect.topLeft(), rect.bottomLeft()) 
    375335            line.translate(-rect.topLeft()) 
    376             self.axes[id] = axis.Axis(rect.size(), 'Test', line ) 
    377             self.axes[id].setPos(rect.topLeft()) 
    378             self.canvas.addItem(self.axes[id]) 
     336            a = self.axes[id] 
     337            a.setSize(rect.size()) 
     338            a.setLine(line) 
     339            a.setPos(rect.topLeft()) 
     340            self.canvas.addItem(a) 
     341            a.show() 
    379342             
    380343        for c in self.curves: 
Note: See TracChangeset for help on using the changeset viewer.