File indexing completed on 2024-05-19 05:54:10

0001 /*
0002     SPDX-FileCopyrightText: 2007-2008 Robert Knight <robertknight@gmail.com>
0003     SPDX-FileCopyrightText: 2020 Tomaz Canabrava <tcanabrava@gmail.com>
0004 
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 #ifndef REGEXP_FILTER_HOTSPOT
0009 #define REGEXP_FILTER_HOTSPOT
0010 
0011 #include "HotSpot.h"
0012 #include <QStringList>
0013 
0014 namespace Konsole
0015 {
0016 /**
0017  * Type of hotspot created by RegExpFilter.  The capturedTexts() method can be used to find the text
0018  * matched by the filter's regular expression.
0019  */
0020 class KONSOLEPRIVATE_EXPORT RegExpFilterHotSpot : public HotSpot
0021 {
0022 public:
0023     RegExpFilterHotSpot(int startLine, int startColumn, int endLine, int endColumn, const QStringList &capturedTexts);
0024 
0025     void activate(QObject *object = nullptr) override;
0026 
0027     /** Returns the texts found by the filter when matching the filter's regular expression */
0028     QStringList capturedTexts() const;
0029 
0030 private:
0031     QStringList _capturedTexts;
0032 };
0033 
0034 }
0035 #endif