Applets
contentareacap.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "contentareacap.h"
00021 #include <QPainter>
00022
00023 ContentAreaCap::ContentAreaCap(QWidget *parent, bool flip)
00024 :QWidget(parent)
00025 {
00026 setMaximumHeight(3);
00027 setMinimumHeight(3);
00028 sizePolicy().setVerticalPolicy(QSizePolicy::Fixed);
00029 flipCap = flip;
00030
00031 parent->setCursor(Qt::ArrowCursor);
00032 }
00033
00034 void ContentAreaCap::paintEvent(QPaintEvent *event)
00035 {
00036 QPainter painter(this);
00037 QPainterPath path;
00038 QRect r = rect();
00039 if (!flipCap) {
00040 path.moveTo(r.topLeft() + QPoint(0,3));
00041 path.quadTo(r.topLeft(), r.topLeft() + QPoint(3,0));
00042 path.lineTo(r.topRight() + QPoint(-2,0));
00043 path.quadTo(r.topRight() + QPoint(1,0), r.topRight() + QPoint(1,3));
00044 } else {
00045 path.moveTo(r.topLeft());
00046 path.quadTo(r.topLeft() + QPoint(0,3), r.topLeft() + QPoint(3,3));
00047 path.lineTo(r.topRight() + QPoint(-2,3));
00048 path.quadTo(r.topRight() + QPoint(1,3), r.topRight() + QPoint(1,0));
00049 }
00050 painter.setPen(QPen(palette().base(), 1));
00051 painter.setRenderHint(QPainter::Antialiasing);
00052 painter.fillPath(path, palette().base());
00053 painter.end();
00054 }
00055