Changeset 11133:cde8738d4bbb in orange


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

Store widget's background brush in a custom user role.

Location:
Orange/OrangeCanvas
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • Orange/OrangeCanvas/application/canvastooldock.py

    r11120 r11133  
    1414from ..gui.toolbar import DynamicResizeToolBar 
    1515from .widgettoolbox import WidgetToolBox, iter_item 
     16from ..registry.qt import QtWidgetRegistry 
    1617 
    1718 
     
    293294 
    294295        item = action.data().toPyObject() 
    295         brush = item.background() 
     296        if item.data(Qt.BackgroundRole).isValid(): 
     297            brush = item.background() 
     298        elif item.data(QtWidgetRegistry.BACKGROUND_ROLE).isValid(): 
     299            brush = item.data(QtWidgetRegistry.BACKGROUND_ROLE).toPyObject() 
     300        else: 
     301            brush = self.palette().brush(QPalette.Button) 
     302 
    296303        palette = button.palette() 
    297304        palette.setColor(QPalette.Button, brush.color()) 
  • Orange/OrangeCanvas/application/widgettoolbox.py

    r11117 r11133  
    292292 
    293293        # Set the 'highlight' color 
    294         brush = item.background() 
     294        if item.data(Qt.BackgroundRole).isValid(): 
     295            brush = item.background() 
     296        elif item.data(QtWidgetRegistry.BACKGROUND_ROLE).isValid(): 
     297            brush = item.data(QtWidgetRegistry.BACKGROUND_ROLE).toPyObject() 
     298        else: 
     299            brush = self.palette().brush(QPalette.Button) 
    295300 
    296301        if not brush.gradient(): 
    297302            gradient = create_tab_gradient(brush.color()) 
    298303            brush = QBrush(gradient) 
     304 
    299305        palette = button.palette() 
    300306        palette.setBrush(QPalette.Highlight, brush) 
  • Orange/OrangeCanvas/canvas/quickmenu.py

    r11131 r11133  
    508508            i = self.addPage(page.title(), page) 
    509509 
    510             brush = index.data(Qt.BackgroundRole) 
     510            brush = index.data(QtWidgetRegistry.BACKGROUND_ROLE) 
     511 
    511512            if brush.isValid(): 
    512513                brush = brush.toPyObject() 
  • Orange/OrangeCanvas/registry/qt.py

    r11098 r11133  
    7676    """Widget Action Role""" 
    7777 
     78    BACKGROUND_ROLE = Qt.UserRole + 4 
     79    """Background color for widget/category in the canvas 
     80    (different from Qt.BackgroundRole) 
     81    """ 
     82 
    7883    category_added = Signal(str, CategoryDescription) 
    7984    """signal: category_added(name: str, desc: CategoryDescription) 
     
    204209 
    205210        brush = QBrush(QColor(background)) 
    206         item.setBackground(brush) 
     211        item.setData(brush, self.BACKGROUND_ROLE) 
    207212 
    208213        tooltip = desc.description if desc.description else desc.name 
     
    235240 
    236241        if brush is not None: 
    237             item.setBackground(brush) 
     242            item.setData(brush, self.BACKGROUND_ROLE) 
    238243 
    239244        tooltip = tooltip_helper(desc) 
Note: See TracChangeset for help on using the changeset viewer.