Eneboo - Documentación para desarrolladores
src/qt/src/kernel/qpen.h
Ir a la documentación de este archivo.
00001 /****************************************************************************
00002 ** $Id: qt/qpen.h   3.3.8   edited Jan 11 14:38 $
00003 **
00004 ** Definition of QPen class
00005 **
00006 ** Created : 940112
00007 **
00008 ** Copyright (C) 1992-2007 Trolltech ASA.  All rights reserved.
00009 **
00010 ** This file is part of the kernel module of the Qt GUI Toolkit.
00011 **
00012 ** This file may be distributed under the terms of the Q Public License
00013 ** as defined by Trolltech ASA of Norway and appearing in the file
00014 ** LICENSE.QPL included in the packaging of this file.
00015 **
00016 ** This file may be distributed and/or modified under the terms of the
00017 ** GNU General Public License version 2 as published by the Free Software
00018 ** Foundation and appearing in the file LICENSE.GPL included in the
00019 ** packaging of this file.
00020 **
00021 ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
00022 ** licenses may use this file in accordance with the Qt Commercial License
00023 ** Agreement provided with the Software.
00024 **
00025 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00026 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00027 **
00028 ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
00029 **   information about Qt Commercial License Agreements.
00030 ** See http://www.trolltech.com/qpl/ for QPL licensing information.
00031 ** See http://www.trolltech.com/gpl/ for GPL licensing information.
00032 **
00033 ** Contact info@trolltech.com if any conditions of this licensing are
00034 ** not clear to you.
00035 **
00036 **********************************************************************/
00037 
00038 #ifndef QPEN_H
00039 #define QPEN_H
00040 
00041 #ifndef QT_H
00042 #include "qcolor.h"
00043 #include "qshared.h"
00044 #endif // QT_H
00045 
00046 
00047 class Q_EXPORT QPen: public Qt
00048 {
00049 public:
00050     QPen();
00051     QPen( PenStyle );
00052     QPen( const QColor &color, uint width=0, PenStyle style=SolidLine );
00053     QPen( const QColor &cl, uint w, PenStyle s, PenCapStyle c, PenJoinStyle j);
00054     QPen( const QPen & );
00055    ~QPen();
00056     QPen &operator=( const QPen & );
00057 
00058     PenStyle    style() const           { return data->style; }
00059     void        setStyle( PenStyle );
00060     uint        width() const           { return data->width; }
00061     void        setWidth( uint );
00062     const QColor &color() const         { return data->color; }
00063     void        setColor( const QColor & );
00064     PenCapStyle capStyle() const;
00065     void        setCapStyle( PenCapStyle );
00066     PenJoinStyle joinStyle() const;
00067     void        setJoinStyle( PenJoinStyle );
00068 
00069     bool        operator==( const QPen &p ) const;
00070     bool        operator!=( const QPen &p ) const
00071                                         { return !(operator==(p)); }
00072 
00073 private:
00074     friend class QPainter;
00075 #ifdef Q_WS_WIN
00076     friend class QFontEngineWin;
00077 #endif
00078 
00079     QPen        copy()  const;
00080     void        detach();
00081     void        init( const QColor &, uint, uint );
00082     struct QPenData : public QShared {          // pen data
00083         PenStyle  style;
00084         uint      width;
00085         QColor    color;
00086         Q_UINT16  linest;
00087     } *data;
00088 };
00089 
00090 
00091 /*****************************************************************************
00092   QPen stream functions
00093  *****************************************************************************/
00094 #ifndef QT_NO_DATASTREAM
00095 Q_EXPORT QDataStream &operator<<( QDataStream &, const QPen & );
00096 Q_EXPORT QDataStream &operator>>( QDataStream &, QPen & );
00097 #endif
00098 
00099 #endif // QPEN_H
 Todo Clases Namespaces Archivos Funciones Variables 'typedefs' Enumeraciones Valores de enumeraciones Propiedades Amigas 'defines'