"""
PySide stub files generated by **IceSpringPySideStubs**

Home: https://baijifeilong.github.io/2022/01/06/ice-spring-pyside-stubs/index.html

Github: https://github.com/baijifeilong/IceSpringPySideStubs

PyPI(PySide2): https://pypi.org/project/IceSpringPySideStubs-PySide2

PyPI(PySide6): https://pypi.org/project/IceSpringPySideStubs-PySide6

PyPI(PyQt5): https://pypi.org/project/IceSpringPySideStubs-PyQt5

PyPI(PyQt6): https://pypi.org/project/IceSpringPySideStubs-PyQt6

Generated by BaiJiFeiLong@gmail.com

License: MIT
"""
import enum
import typing
from PyQt6.QtWidgets import *
import enum


class QStyleOptionFrame(QStyleOption):
    """
    https://doc.qt.io/qt-6/qstyleoptionframe.html

    **Detailed Description**

    QStyleOptionFrame is used for drawing several built-in Qt widgets, including
    **QFrame** , **QGroupBox** , **QLineEdit** , and **QMenu** .

    For performance reasons, there are few member functions and the access to
    the member variables is direct (i.e., using the `.` or `->` operator). This
    makes the structures straightforward to use and emphasizes that these are
    simply parameters used by the style functions.

    An instance of the QStyleOptionFrame class has **type**  SO_Frame and
    **version**  3.

    The type is used internally by **QStyleOption** , 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
    **QStyleOption**  subclass and your own styles. The version is used by
    **QStyleOption**  subclasses to implement extensions without breaking
    compatibility. If you use **qstyleoption_cast** (), you normally do not need
    to check it.

    For an example demonstrating how style options can be used, see the
    **Styles**  example.

    **See also** **QStyleOption** .
    """

    class FrameFeature(enum.Flag):
        None_: QStyleOptionFrame = ...
        Flat: QStyleOptionFrame = ...
        Rounded: QStyleOptionFrame = ...

    class StyleOptionVersion(enum.Enum):
        Version: QStyleOptionFrame = ...

    class StyleOptionType(enum.Enum):
        Type: QStyleOptionFrame = ...

    features = ...
    frameShape: QFrame = ...
    lineWidth: int = ...
    midLineWidth: int = ...

    @typing.overload
    def __init__(self) -> None:
        """
        https://doc.qt.io/qt-6/qstyleoptionframe.html#QStyleOptionFrame

        **QStyleOptionFrame::QStyleOptionFrame()**

        Constructs a QStyleOptionFrame, initializing the members variables to
        their default values.
        """
        ...

    @typing.overload
    def __init__(self, other: "QStyleOptionFrame") -> None:
        """
        https://doc.qt.io/qt-6/qstyleoptionframe.html#QStyleOptionFrame-1

        **QStyleOptionFrame::QStyleOptionFrame(const QStyleOptionFrame & other
        )**

        Constructs a copy of the **other** style option.
        """
        ...
