File indexing completed on 2024-05-12 07:51:58

0001 /*
0002     This file is part of the KDE project
0003     SPDX-FileCopyrightText: 1999 Simon Hausmann <hausmann@kde.org>
0004     SPDX-FileCopyrightText: 1999 David Faure <faure@kde.org>
0005 
0006     SPDX-License-Identifier: LGPL-2.0-or-later
0007 */
0008 
0009 #include "openurlevent.h"
0010 
0011 #include <QUrl>
0012 
0013 using namespace KParts;
0014 
0015 class KParts::OpenUrlEventPrivate
0016 {
0017 public:
0018     OpenUrlEventPrivate(ReadOnlyPart *part, const QUrl &url, const OpenUrlArguments &args)
0019         : m_part(part)
0020         , m_url(url)
0021         , m_args(args)
0022     {
0023     }
0024     ReadOnlyPart *const m_part;
0025     const QUrl m_url;
0026     const OpenUrlArguments m_args;
0027 };
0028 
0029 const QEvent::Type openUrlEventType = (QEvent::Type)8958;
0030 OpenUrlEvent::OpenUrlEvent(ReadOnlyPart *part, const QUrl &url, const OpenUrlArguments &args)
0031     : QEvent(openUrlEventType)
0032     , d(new OpenUrlEventPrivate(part, url, args))
0033 {
0034 }
0035 
0036 OpenUrlEvent::~OpenUrlEvent() = default;
0037 
0038 ReadOnlyPart *OpenUrlEvent::part() const
0039 {
0040     return d->m_part;
0041 }
0042 
0043 QUrl OpenUrlEvent::url() const
0044 {
0045     return d->m_url;
0046 }
0047 
0048 OpenUrlArguments OpenUrlEvent::arguments() const
0049 {
0050     return d->m_args;
0051 }
0052 
0053 bool OpenUrlEvent::test(const QEvent *event)
0054 {
0055     return event->type() == openUrlEventType;
0056 }