Ignore:
Timestamp:
10/29/12 15:18:29 (18 months ago)
Author:
Ales Erjavec <ales.erjavec@…>
Branch:
default
Message:

Removed control points from the annotation graphics items.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Orange/OrangeCanvas/canvas/items/controlpoints.py

    r11160 r11161  
    109109    rectEdited = Signal(QRectF) 
    110110 
     111    editingStarted = Signal() 
     112    editingFinished = Signal() 
     113 
    111114    def __init__(self, parent=None, rect=None, constraints=0, **kwargs): 
    112115        QGraphicsObject.__init__(self, parent, **kwargs) 
    113116        self.setFlag(QGraphicsItem.ItemHasNoContents) 
     117        self.setFlag(QGraphicsItem.ItemIsFocusable) 
    114118 
    115119        self.__rect = rect if rect is not None else QRectF() 
     
    132136            self.__installFilter() 
    133137 
     138        for p in points: 
     139            p.setFlag(QGraphicsItem.ItemIsFocusable) 
     140            p.setFocusProxy(self) 
     141 
    134142        self.controlPoint(ControlPoint.Top).setConstraint(Qt.Vertical) 
    135143        self.controlPoint(ControlPoint.Bottom).setConstraint(Qt.Vertical) 
     
    149157    def setRect(self, rect): 
    150158        if self.__rect != rect: 
    151             self.__rect = rect 
     159            self.__rect = QRectF(rect) 
    152160            self.__pointsLayout() 
    153161            self.prepareGeometryChange() 
     
    183191    def setConstraints(self, constraints): 
    184192        pass 
     193 
     194    def focusInEvent(self, event): 
     195        QGraphicsObject.focusInEvent(self, event) 
     196        if event.isAccepted(): 
     197            self.editingStarted.emit() 
     198 
     199    def focusOutEvent(self, event): 
     200        QGraphicsObject.focusOutEvent(self, event) 
     201        if event.isAccepted(): 
     202            self.editingFinished.emit() 
    185203 
    186204    def itemChange(self, change, value): 
     
    292310    lineEdited = Signal(QLineF) 
    293311 
     312    editingStarted = Signal() 
     313    editingFinished = Signal() 
     314 
    294315    def __init__(self, parent=None, **kwargs): 
    295316        QGraphicsObject.__init__(self, parent, **kwargs) 
    296317        self.setFlag(QGraphicsItem.ItemHasNoContents) 
     318        self.setFlag(QGraphicsItem.ItemIsFocusable) 
    297319 
    298320        self.__line = QLineF() 
     
    306328        if self.scene(): 
    307329            self.__installFilter() 
     330        for p in self.__points: 
     331            p.setFlag(QGraphicsItem.ItemIsFocusable) 
     332            p.setFocusProxy(self) 
    308333 
    309334    def setLine(self, line): 
     
    318343    def line(self): 
    319344        return self.__line 
     345 
     346    def focusInEvent(self, event): 
     347        QGraphicsObject.focusInEvent(self, event) 
     348        if event.isAccepted(): 
     349            self.editingStarted.emit() 
     350 
     351    def focusOutEvent(self, event): 
     352        QGraphicsObject.focusOutEvent(self, event) 
     353        if event.isAccepted(): 
     354            self.editingFinished.emit() 
    320355 
    321356    def __installFilter(self): 
Note: See TracChangeset for help on using the changeset viewer.