File indexing completed on 2024-04-28 16:44:49

0001 /*
0002    SPDX-FileCopyrightText: 2008 Michael Jansen <kde@michael-jansen.biz>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "trigger_widget_base.h"
0008 
0009 TriggerWidgetBase::TriggerWidgetBase(KHotKeys::Trigger *trigger, QWidget *parent)
0010     : HotkeysWidgetIFace(parent)
0011     , _trigger(trigger)
0012 {
0013     // Safety net to catch use-after-free. The triggers are not held or managed by us nor our parent.
0014     // Makes them easier to spot, unlike https://bugs.kde.org/show_bug.cgi?id=443656
0015     auto qObject = dynamic_cast<QObject *>(trigger);
0016     if (qObject) {
0017         connect(qObject, &QObject::destroyed, this, [this] {
0018             _trigger = nullptr;
0019         });
0020     }
0021 }
0022 
0023 TriggerWidgetBase::~TriggerWidgetBase()
0024 {
0025 }
0026 
0027 #include "moc_trigger_widget_base.cpp"