aboutsummaryrefslogtreecommitdiff
path: root/launcher
diff options
context:
space:
mode:
Diffstat (limited to 'launcher')
-rw-r--r--launcher/CMakeLists.txt1
-rw-r--r--launcher/pathmatcher/SimplePrefixMatcher.h21
2 files changed, 22 insertions, 0 deletions
diff --git a/launcher/CMakeLists.txt b/launcher/CMakeLists.txt
index 8db93429..45d197ef 100644
--- a/launcher/CMakeLists.txt
+++ b/launcher/CMakeLists.txt
@@ -97,6 +97,7 @@ set(PATHMATCHER_SOURCES
pathmatcher/IPathMatcher.h
pathmatcher/MultiMatcher.h
pathmatcher/RegexpMatcher.h
+ pathmatcher/SimplePrefixMatcher.h
)
set(NET_SOURCES
diff --git a/launcher/pathmatcher/SimplePrefixMatcher.h b/launcher/pathmatcher/SimplePrefixMatcher.h
new file mode 100644
index 00000000..191d010c
--- /dev/null
+++ b/launcher/pathmatcher/SimplePrefixMatcher.h
@@ -0,0 +1,21 @@
+#include <QRegularExpression>
+#include "IPathMatcher.h"
+
+class SimplePrefixMatcher : public IPathMatcher {
+ public:
+ virtual ~SimplePrefixMatcher(){};
+ SimplePrefixMatcher(const QString& prefix)
+ {
+ m_prefix = prefix;
+ m_isPrefix = prefix.endsWith('/');
+ }
+
+ virtual bool matches(const QString& string) const override
+ {
+ if (m_isPrefix)
+ return string.startsWith(m_prefix);
+ return string == m_prefix;
+ }
+ QString m_prefix;
+ bool m_isPrefix = false;
+};