From 80ff2a99b45a25695321cc84a30a3fbf3b797d54 Mon Sep 17 00:00:00 2001 From: Renaud G Date: Sat, 10 Oct 2015 17:12:45 +0200 Subject: Add way to disable alias. --- dicealias.cpp | 19 +++++++++++++++++-- dicealias.h | 7 ++++++- diceparser.cpp | 5 ++++- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/dicealias.cpp b/dicealias.cpp index f9c366c..3e6dc8f 100644 --- a/dicealias.cpp +++ b/dicealias.cpp @@ -22,8 +22,10 @@ #include "dicealias.h" #include -DiceAlias::DiceAlias(QString cmd, QString key, bool isReplace) - : m_command(cmd),m_value(key) +#include + +DiceAlias::DiceAlias(QString cmd, QString key, bool isReplace,bool isEnable) + : m_command(cmd),m_value(key),m_isEnable(isEnable) { if(isReplace) { @@ -42,6 +44,9 @@ DiceAlias::~DiceAlias() bool DiceAlias::resolved(QString & str) { + if(!m_isEnable) + return false; + if((m_type == REPLACE)&&(str.contains(m_command))) { str.replace(m_command,m_value); @@ -97,3 +102,13 @@ void DiceAlias::setReplace(bool b) m_type = REGEXP; } } + +bool DiceAlias::isEnable() +{ + return m_isEnable; +} + +void DiceAlias::setEnable(bool b) +{ + m_isEnable = b; +} diff --git a/dicealias.h b/dicealias.h index 5acca46..a76d47a 100644 --- a/dicealias.h +++ b/dicealias.h @@ -37,7 +37,7 @@ public: * @param key * @param isReplace */ - DiceAlias(QString cmd, QString key, bool isReplace = true); + DiceAlias(QString cmd, QString key, bool isReplace = true, bool isEnable = true); /** * @brief ~DiceAlias */ @@ -82,10 +82,15 @@ public: * @brief setReplace */ void setReplace(bool); + + bool isEnable(); + + void setEnable(bool b); private: QString m_command; QString m_value; RESOLUTION_TYPE m_type; + bool m_isEnable; }; diff --git a/diceparser.cpp b/diceparser.cpp index 802b5f2..10ba2d7 100644 --- a/diceparser.cpp +++ b/diceparser.cpp @@ -128,7 +128,10 @@ QString DiceParser::convertAlias(QString str) { foreach(DiceAlias* cmd, *m_aliasList) { - cmd->resolved(str); + if(cmd->isEnable()) + { + cmd->resolved(str); + } } return str; } -- cgit v1.2.3-70-g09d2