File indexing completed on 2024-05-19 04:39:55
0001 /* 0002 SPDX-FileCopyrightText: 2012 Miha Čančula <miha@noughmad.eu> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef KDEVPLATFORM_KDEVFILTERS_H 0008 #define KDEVPLATFORM_KDEVFILTERS_H 0009 0010 #include <grantlee/taglibraryinterface.h> 0011 #include <grantlee/filter.h> 0012 0013 #include <QObject> 0014 0015 namespace KDevelop { 0016 0017 class CamelCaseFilter : public Grantlee::Filter 0018 { 0019 public: 0020 QVariant doFilter(const QVariant& input, 0021 const QVariant& argument = QVariant(), 0022 bool autoescape = false) const override; 0023 }; 0024 0025 class LowerCamelCaseFilter : public Grantlee::Filter 0026 { 0027 public: 0028 QVariant doFilter(const QVariant& input, 0029 const QVariant& argument = QVariant(), 0030 bool autoescape = false) const override; 0031 }; 0032 0033 class UnderscoreFilter : public Grantlee::Filter 0034 { 0035 public: 0036 QVariant doFilter(const QVariant& input, 0037 const QVariant& argument = QVariant(), 0038 bool autoescape = false) const override; 0039 }; 0040 0041 class UpperFirstFilter : public Grantlee::Filter 0042 { 0043 public: 0044 QVariant doFilter(const QVariant& input, 0045 const QVariant& argument = QVariant(), 0046 bool autoescape = false) const override; 0047 }; 0048 0049 class SplitLinesFilter : public Grantlee::Filter 0050 { 0051 public: 0052 QVariant doFilter(const QVariant& input, 0053 const QVariant& argument = QVariant(), 0054 bool autoescape = false) const override; 0055 }; 0056 0057 class ArgumentTypeFilter : public Grantlee::Filter 0058 { 0059 public: 0060 QVariant doFilter(const QVariant& input, 0061 const QVariant& argument = QVariant(), 0062 bool autoescape = false) const override; 0063 }; 0064 0065 class KDevFilters : public QObject, public Grantlee::TagLibraryInterface 0066 { 0067 Q_OBJECT 0068 Q_INTERFACES(Grantlee::TagLibraryInterface) 0069 Q_PLUGIN_METADATA(IID "org.grantlee.TagLibraryInterface") 0070 0071 public: 0072 explicit KDevFilters(QObject* parent = nullptr, const QVariantList &args = QVariantList()); 0073 ~KDevFilters() override; 0074 0075 QHash< QString, Grantlee::Filter* > filters(const QString& name = QString()) override; 0076 }; 0077 0078 } 0079 0080 #endif // KDEVPLATFORM_KDEVFILTERS_H