Changeset 8222:836c423fe2b2 in orange


Ignore:
Timestamp:
08/18/11 17:58:03 (3 years ago)
Author:
Noughmad <Noughmad@…>
Branch:
default
Convert:
6cb8a71d2089e11b6ca060f42c66ba6e1a9b22e6
Message:

Handle showing and hiding the legend while docked (not floating) at a side.

Location:
orange/OrangeWidgets/plot
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/plot/owlegend.py

    r8221 r8222  
    173173        self._floating = True 
    174174        self._floating_animation = None 
     175        self._mouse_down_pos = QPointF() 
    175176 
    176177    def clear(self): 
  • orange/OrangeWidgets/plot/owplot.py

    r8214 r8222  
    373373        self._zoom_transform = QTransform() 
    374374        self.zoom_stack = [] 
     375        self.old_legend_margin = None 
    375376        self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) 
    376377        self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff) 
     
    843844        self.tips.removeAll() 
    844845        self.legend().clear() 
     846        self.old_legend_margin = None 
    845847        self.update_grid() 
    846848         
     
    10221024         
    10231025    def update_legend(self): 
     1026        if (self._legend.isVisible() == self.show_legend): 
     1027            return 
     1028             
    10241029        self._legend.setVisible(self.show_legend) 
    10251030        if self.show_legend: 
    1026             r = self.legend_rect() 
    1027             self.ensure_inside(r, self.contentsRect()) 
    1028             self._legend.setPos(r.topLeft()) 
     1031            if self.old_legend_margin is not None: 
     1032                self.animate(self, 'legend_margin', self.old_legend_margin, duration = 100) 
     1033            else: 
     1034                r = self.legend_rect() 
     1035                self.ensure_inside(r, self.contentsRect()) 
     1036                self._legend.setPos(r.topLeft()) 
     1037                self.notify_legend_moved(r.topLeft()) 
     1038        else: 
     1039            self.old_legend_margin = self.legend_margin 
     1040            self.animate(self, 'legend_margin', QRectF(), duration=100) 
    10291041         
    10301042    def update_filled_symbols(self): 
Note: See TracChangeset for help on using the changeset viewer.