aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicknativestyle/items/qquickstyleitemdelaybutton.cpp
blob: 19309d11b6614305458ca4a9f7efe29a3fa89091 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only

#include "qquickstyleitemdelaybutton.h"

#include <QtQuickTemplates2/private/qquickdelaybutton_p.h>

QT_BEGIN_NAMESPACE

void QQuickStyleItemDelayButton::connectToControl() const
{
    QQuickStyleItem::connectToControl();
    auto button = control<QQuickDelayButton>();
    connect(button, &QQuickButton::downChanged, this, &QQuickStyleItem::markImageDirty);
    connect(button, &QQuickButton::checkedChanged, this, &QQuickStyleItem::markImageDirty);
}

void QQuickStyleItemDelayButton::initStyleOption(QStyleOptionButton &styleOption) const
{
    initStyleOptionBase(styleOption);
    auto button = control<QQuickDelayButton>();

    styleOption.state |= button->isDown() ? QStyle::State_Sunken : QStyle::State_Raised;
}

QT_END_NAMESPACE

#include "moc_qquickstyleitemdelaybutton.cpp"