1 /****************************************************************************
2 **
3 ** Copyright (C) 2015 The Qt Company Ltd.
4 ** Contact: http://www.qt.io/licensing/
5 **
6 ** This file is part of the documentation of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:BSD$
9 ** You may use this file under the terms of the BSD license as follows:
10 **
11 ** "Redistribution and use in source and binary forms, with or without
12 ** modification, are permitted provided that the following conditions are
13 ** met:
14 **   * Redistributions of source code must retain the above copyright
15 **     notice, this list of conditions and the following disclaimer.
16 **   * Redistributions in binary form must reproduce the above copyright
17 **     notice, this list of conditions and the following disclaimer in
18 **     the documentation and/or other materials provided with the
19 **     distribution.
20 **   * Neither the name of The Qt Company Ltd nor the names of its
21 **     contributors may be used to endorse or promote products derived
22 **     from this software without specific prior written permission.
23 **
24 **
25 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28 ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
29 ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30 ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31 ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32 ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33 ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34 ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35 ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
36 **
37 ** $QT_END_LICENSE$
38 **
39 ****************************************************************************/
40 
41 #include <QtGui>
42 
main()43 int main()
44 {
45     QWidget anyPaintDevice;
46     {
47         // PEN SNIPPET
48         QPainter painter;
49         QPen pen(Qt::red, 2);                 // red solid line, 2 pixels wide
50         painter.begin(&anyPaintDevice);   // paint something
51         painter.setPen(pen);              // set the red, wide pen
52         painter.drawRect(40,30, 200,100); // draw a rectangle
53         painter.setPen(Qt::blue);             // set blue pen, 0 pixel width
54         painter.drawLine(40,30, 240,130); // draw a diagonal in rectangle
55         painter.end();                    // painting done
56     }
57 
58     {
59         // BRUSH SNIPPET
60         QPainter painter;
61         QBrush brush(Qt::yellow);           // yellow solid pattern
62         painter.begin(&anyPaintDevice);   // paint something
63         painter.setBrush(brush);          // set the yellow brush
64         painter.setPen(Qt::NoPen);        // do not draw outline
65         painter.drawRect(40,30, 200,100); // draw filled rectangle
66         painter.setBrush(Qt::NoBrush);    // do not fill
67         painter.setPen(Qt::black);            // set black pen, 0 pixel width
68         painter.drawRect(10,10, 30,20);   // draw rectangle outline
69         painter.end();                    // painting done
70     }
71 
72     // LINEAR
73 //! [0]
74     QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200));
75     linearGrad.setColorAt(0, Qt::black);
76     linearGrad.setColorAt(1, Qt::white);
77 //! [0]
78 
79     // RADIAL
80 //! [1]
81     QRadialGradient radialGrad(QPointF(100, 100), 100);
82     radialGrad.setColorAt(0, Qt::red);
83     radialGrad.setColorAt(0.5, Qt::blue);
84     radialGrad.setColorAt(1, Qt::green);
85 //! [1]
86 }
87