src/gui/styles/qstylesheetstyle.cpp
branchRCL_3
changeset 8 3f74d0d4af4c
parent 4 3b1da2848fc7
child 14 c0432d11811c
equal deleted inserted replaced
6:dee5afe5301f 8:3f74d0d4af4c
  1123     }
  1123     }
  1124 }
  1124 }
  1125 
  1125 
  1126 void QRenderRule::drawBorderImage(QPainter *p, const QRect& rect)
  1126 void QRenderRule::drawBorderImage(QPainter *p, const QRect& rect)
  1127 {
  1127 {
       
  1128     setClip(p, rect);
  1128     static const Qt::TileRule tileMode2TileRule[] = {
  1129     static const Qt::TileRule tileMode2TileRule[] = {
  1129         Qt::StretchTile, Qt::RoundTile, Qt::StretchTile, Qt::RepeatTile, Qt::StretchTile };
  1130         Qt::StretchTile, Qt::RoundTile, Qt::StretchTile, Qt::RepeatTile, Qt::StretchTile };
  1130 
  1131 
  1131     const QStyleSheetBorderImageData *borderImageData = border()->borderImage();
  1132     const QStyleSheetBorderImageData *borderImageData = border()->borderImage();
  1132     const int *targetBorders = border()->borders;
  1133     const int *targetBorders = border()->borders;
  1140     p->setRenderHint(QPainter::SmoothPixmapTransform);
  1141     p->setRenderHint(QPainter::SmoothPixmapTransform);
  1141     qDrawBorderPixmap(p, rect, targetMargins, borderImageData->pixmap,
  1142     qDrawBorderPixmap(p, rect, targetMargins, borderImageData->pixmap,
  1142                       QRect(QPoint(), borderImageData->pixmap.size()), sourceMargins,
  1143                       QRect(QPoint(), borderImageData->pixmap.size()), sourceMargins,
  1143                       QTileRules(tileMode2TileRule[borderImageData->horizStretch], tileMode2TileRule[borderImageData->vertStretch]));
  1144                       QTileRules(tileMode2TileRule[borderImageData->horizStretch], tileMode2TileRule[borderImageData->vertStretch]));
  1144     p->setRenderHint(QPainter::SmoothPixmapTransform, wasSmoothPixmapTransform);
  1145     p->setRenderHint(QPainter::SmoothPixmapTransform, wasSmoothPixmapTransform);
       
  1146     unsetClip(p);
  1145 }
  1147 }
  1146 
  1148 
  1147 QRect QRenderRule::originRect(const QRect &rect, Origin origin) const
  1149 QRect QRenderRule::originRect(const QRect &rect, Origin origin) const
  1148 {
  1150 {
  1149     switch (origin) {
  1151     switch (origin) {
  5739             break;
  5741             break;
  5740         QRenderRule subRule = renderRule(w, opt, PseudoElement_DockWidgetTitle);
  5742         QRenderRule subRule = renderRule(w, opt, PseudoElement_DockWidgetTitle);
  5741         return positionRect(w, subRule, subRule2, pe, opt->rect, opt->direction);
  5743         return positionRect(w, subRule, subRule2, pe, opt->rect, opt->direction);
  5742                                    }
  5744                                    }
  5743 
  5745 
       
  5746 #ifndef QT_NO_TOOLBAR
       
  5747     case SE_ToolBarHandle:
       
  5748         if (hasStyleRule(w, PseudoElement_ToolBarHandle))
       
  5749             return ParentStyle::subElementRect(se, opt, w);
       
  5750         break;
       
  5751 #endif //QT_NO_TOOLBAR
       
  5752 
  5744     default:
  5753     default:
  5745         break;
  5754         break;
  5746     }
  5755     }
  5747 
  5756 
  5748     return baseStyle()->subElementRect(se, opt, w);
  5757     return baseStyle()->subElementRect(se, opt, w);