<class name="QStyleOptionGraphicsItem" doc="/**
&lt;p&gt;The &lt;a href=&quot;QStyleOptionGraphicsItem.html#QStyleOptionGraphicsItem(int)&quot;&gt;&lt;tt&gt;QStyleOptionGraphicsItem&lt;/tt&gt;&lt;/a&gt; class is used to describe the parameters needed to draw a &lt;a href=&quot;QGraphicsItem.html&quot;&gt;&lt;tt&gt;QGraphicsItem&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For performance reasons, the access to the member variables is direct (i.e&amp;#x2e;, using the &lt;tt&gt;.&lt;/tt&gt; or &lt;tt&gt;-&amp;gt;&lt;/tt&gt; operator). This low-level feel makes the structures straightforward to use and emphasizes that these are simply parameters.&lt;/p&gt;
&lt;p&gt;For an example demonstrating how style options can be used, see the Styles&lt;/tt&gt; example.&lt;/p&gt;

@see &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QGraphicsItem::paint&lt;/tt&gt; */">
    <method name="public QStyleOptionGraphicsItem(com.trolltech.qt.gui.QStyleOptionGraphicsItem other)" doc="/**
&lt;p&gt;Constructs a copy of &lt;tt&gt;other&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public QStyleOptionGraphicsItem()" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QStyleOptionGraphicsItem.html#QStyleOptionGraphicsItem(int)&quot;&gt;&lt;tt&gt;QStyleOptionGraphicsItem&lt;/tt&gt;&lt;/a&gt;. The &lt;a href=&quot;QStyleOptionGraphicsItem.html#levelOfDetail()&quot;&gt;&lt;tt&gt;levelOfDetail&lt;/tt&gt;&lt;/a&gt; parameter is initialized to 1.&lt;/p&gt;
 */"/>
    <method name="protected QStyleOptionGraphicsItem(int version)" doc="/**
&lt;p&gt;&lt;/p&gt;
 */"/>
    <enum name="StyleOptionVersion" doc="/**
&lt;p&gt;This enum is used to hold information about the version of the style option, and is defined for each &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt; subclass.&lt;/p&gt;
&lt;p&gt;The version is used by &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt; subclasses to implement extensions without breaking compatibility. If you use qstyleoption_cast(), you normally don't need to check it.&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#StyleOptionType-enum&quot;&gt;&lt;tt&gt;StyleOptionType&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="Version" doc="/**
&lt;p&gt;1&lt;/p&gt;
 */"/>
</enum>
    <enum name="StyleOptionType" doc="/**
&lt;p&gt;This enum is used to hold information about the type of the style option, and is defined for each &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt; subclass.&lt;/p&gt;
&lt;p&gt;The type is used internally by &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt;, its subclasses, and qstyleoption_cast() to determine the type of style option. In general you do not need to worry about this unless you want to create your own &lt;a href=&quot;QStyleOption.html#QStyleOption(int, int)&quot;&gt;&lt;tt&gt;QStyleOption&lt;/tt&gt;&lt;/a&gt; subclass and your own styles.&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#StyleOptionVersion-enum&quot;&gt;&lt;tt&gt;StyleOptionVersion&lt;/tt&gt;&lt;/a&gt; */">
        <enum-value name="Type" doc="/**
&lt;p&gt;The type of style option provided (&lt;a href=&quot;QStyleOption.html#OptionType-enum&quot;&gt;&lt;tt&gt;SO_GraphicsItem&lt;/tt&gt;&lt;/a&gt; for this class).&lt;/p&gt;
 */"/>
</enum>
    <method name="public final com.trolltech.qt.core.QRectF exposedRect()" doc="/**
&lt;p&gt;Returns the exposed rectangle, in item coordinates.&lt;/p&gt;
&lt;p&gt;Make use of this rectangle to speed up item drawing when only parts of the item are exposed. If the whole item is exposed, this rectangle will be the same as QGraphicsItem::boundingRect().&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#setExposedRect(com.trolltech.qt.core.QRectF)&quot;&gt;&lt;tt&gt;setExposedRect&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setExposedRect(com.trolltech.qt.core.QRectF exposedRect)" doc="/**
&lt;p&gt;Sets the exposed rectangle, in item coordinates to &lt;tt&gt;exposedRect&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Make use of this rectangle to speed up item drawing when only parts of the item are exposed. If the whole item is exposed, this rectangle will be the same as QGraphicsItem::boundingRect().&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#exposedRect()&quot;&gt;&lt;tt&gt;exposedRect&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.gui.QMatrix matrix()" doc="/**
&lt;p&gt;Returns the complete transformation matrix for the item.&lt;/p&gt;
&lt;p&gt;This matrix is the sum of the item's scene matrix and the matrix of the painter used for drawing the item. It is provided for convenience, allowing anvanced level-of-detail metrics that can be used to speed up item drawing.&lt;/p&gt;
&lt;p&gt;To find the dimentions of an item in screen coordinates (i.e&amp;#x2e;, pixels), you can use the mapping functions of &lt;a href=&quot;QMatrix.html&quot;&gt;&lt;tt&gt;QMatrix&lt;/tt&gt;&lt;/a&gt;, such as QMatrix::map().&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#setMatrix(com.trolltech.qt.gui.QMatrix)&quot;&gt;&lt;tt&gt;setMatrix&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QStyleOptionGraphicsItem::levelOfDetail&lt;/tt&gt; */"/>
    <method name="public final void setMatrix(com.trolltech.qt.gui.QMatrix matrix)" doc="/**
&lt;p&gt;Sets the complete transformation matrix for the item to &lt;tt&gt;matrix&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;This matrix is the sum of the item's scene matrix and the matrix of the painter used for drawing the item. It is provided for convenience, allowing anvanced level-of-detail metrics that can be used to speed up item drawing.&lt;/p&gt;
&lt;p&gt;To find the dimentions of an item in screen coordinates (i.e&amp;#x2e;, pixels), you can use the mapping functions of &lt;a href=&quot;QMatrix.html&quot;&gt;&lt;tt&gt;QMatrix&lt;/tt&gt;&lt;/a&gt;, such as QMatrix::map().&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#matrix()&quot;&gt;&lt;tt&gt;matrix&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QStyleOptionGraphicsItem::levelOfDetail&lt;/tt&gt; */"/>
    <method name="public final double levelOfDetail()" doc="/**
&lt;p&gt;Returns a simple metric for determining an item's level of detail.&lt;/p&gt;
&lt;p&gt;This simple metric provides an easy way to determine the level of detail for an item. Its value represents the maximum value of the height and width of a unity rectangle, mapped using the complete transformation matrix of the painter used to draw the item. By default, if no transformations are applied, its value is 1. If zoomed out 1:2, the level of detail will be 0.5, and if zoomed in 2:1, its value is 2.&lt;/p&gt;
&lt;p&gt;For more advanced level-of-detail metrics, use QStyleOptionGraphicsItem::matrix directly.&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#setLevelOfDetail(double)&quot;&gt;&lt;tt&gt;setLevelOfDetail&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QStyleOptionGraphicsItem::matrix&lt;/tt&gt; */"/>
    <method name="public final void setLevelOfDetail(double levelOfDetail)" doc="/**
&lt;p&gt;Sets a simple metric for determining an item's level of detail to &lt;tt&gt;levelOfDetail&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;This simple metric provides an easy way to determine the level of detail for an item. Its value represents the maximum value of the height and width of a unity rectangle, mapped using the complete transformation matrix of the painter used to draw the item. By default, if no transformations are applied, its value is 1. If zoomed out 1:2, the level of detail will be 0.5, and if zoomed in 2:1, its value is 2.&lt;/p&gt;
&lt;p&gt;For more advanced level-of-detail metrics, use QStyleOptionGraphicsItem::matrix directly.&lt;/p&gt;

@see &lt;a href=&quot;QStyleOptionGraphicsItem.html#levelOfDetail()&quot;&gt;&lt;tt&gt;levelOfDetail&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QStyleOptionGraphicsItem::matrix&lt;/tt&gt; */"/>
</class>
