aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2021-06-22 21:34:19 +0200
committerRenaud G <renaud@rolisteam.org>2022-04-13 15:40:42 +0200
commit70c279ab847883046ef0a951e4d2ccbf6170d19a (patch)
tree28bc40fdf84d2b5c3ff032de84ef6a55ef67ec01
parent2f67beb05264e0f74250852efb3133e074309f71 (diff)
downloadOneRoll-70c279ab847883046ef0a951e4d2ccbf6170d19a.tar.gz
OneRoll-70c279ab847883046ef0a951e4d2ccbf6170d19a.zip
rename some member in dicealias
-rw-r--r--CMakeLists.txt18
-rw-r--r--dicealias.cpp41
-rw-r--r--include/dicealias.h14
-rw-r--r--include/parsingtoolbox.h1
-rw-r--r--node/listaliasnode.cpp4
-rw-r--r--parsingtoolbox.cpp7
-rw-r--r--qmltypesregister.cpp7
-rw-r--r--tests/dice/tst_dice.cpp2
8 files changed, 59 insertions, 35 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 21b4596..5795e12 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -4,6 +4,7 @@ project(diceparser VERSION 1.9.0 DESCRIPTION "Parser of dice command")
set(QT_REQUIRED_VERSION "5.12.0")
find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED COMPONENTS Core Test Gui Svg)
+find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG COMPONENTS Qml)
enable_testing(true)
include_directories(${CMAKE_CURRENT_SOURCE_DIR} result node)
@@ -62,7 +63,6 @@ SET( dice_sources
IF(STATIC_BUILD)
add_library(diceparser_static STATIC ${dice_sources} )
target_include_directories(diceparser_static PRIVATE include)
- SET_TARGET_PROPERTIES(diceparser_static PROPERTIES OUTPUT_NAME diceparser CLEAN_DIRECT_OUTPUT 1)
target_link_libraries(diceparser_static PUBLIC Qt5::Core Qt5::Gui Qt5::Svg)
install(TARGETS diceparser_static
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
@@ -72,7 +72,7 @@ set(documentation README.md HelpMe.md CHANGELOG)
add_library(diceparser_shared SHARED ${dice_sources} ${documentation})
-target_include_directories(diceparser_shared PRIVATE include)
+target_include_directories(diceparser_shared PRIVATE include ./)
SET_TARGET_PROPERTIES(diceparser_shared PROPERTIES OUTPUT_NAME diceparser CLEAN_DIRECT_OUTPUT 1)
@@ -104,5 +104,15 @@ configure_file(diceparser.pc.in diceparser.pc @ONLY)
install(FILES ${CMAKE_BINARY_DIR}/diceparser.pc DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pkgconfig)
-
-
+if(Qt5Qml_FOUND)
+set(dice_header_qobject qmltypesregister.h diceroller.h)
+set(dice_source_qobject qmltypesregister.cpp diceroller.cpp)
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTOUIC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+add_library(diceparser_qobject SHARED ${dice_header_qobject} ${dice_source_qobject})
+target_link_libraries(diceparser_qobject PUBLIC Qt5::Core Qt5::Gui Qt5::Svg Qt5::Qml PRIVATE diceparser_shared)
+message("Messages diceparser ${CMAKE_CURRENT_SOURCE_DIR}/include")
+target_include_directories(diceparser_qobject PRIVATE include ./ ${CMAKE_CURRENT_SOURCE_DIR}/include)
+endif()
diff --git a/dicealias.cpp b/dicealias.cpp
index e6ee180..b0402a3 100644
--- a/dicealias.cpp
+++ b/dicealias.cpp
@@ -24,7 +24,7 @@
#include <QDebug>
-QString makeReplament(const QString& pattern, const QString& replacement, QString cmd)
+QString makeReplament(const QString& pattern, const QString& command, QString cmd)
{
auto hasPattern= cmd.contains(pattern);
if(hasPattern)
@@ -60,7 +60,7 @@ QString makeReplament(const QString& pattern, const QString& replacement, QStrin
if(!hasQuote && !hasVariable)
{
- cmd.replace(pattern, replacement);
+ cmd.replace(pattern, command);
}
else
{
@@ -120,15 +120,15 @@ QString makeReplament(const QString& pattern, const QString& replacement, QStrin
// TODO to be replace by C++14 when it is ready
for(auto i= patternPosList.rbegin(); i != patternPosList.rend(); ++i)
{
- cmd.replace(*i, 1, replacement);
+ cmd.replace(*i, 1, command);
}
}
}
return cmd;
}
-DiceAlias::DiceAlias(QString cmd, QString key, bool isReplace, bool isEnable)
- : m_command(cmd), m_value(key), m_isEnable(isEnable)
+DiceAlias::DiceAlias(QString pattern, QString command, QString comment, bool isReplace, bool isEnable)
+ : m_pattern(pattern), m_command(command), m_comment(comment), m_isEnable(isEnable)
{
if(isReplace)
{
@@ -140,13 +140,16 @@ DiceAlias::DiceAlias(QString cmd, QString key, bool isReplace, bool isEnable)
}
}
-DiceAlias::~DiceAlias() {}
+DiceAlias::~DiceAlias()
+{
+ qDebug() << "destructeur of alias!" << this;
+}
DiceAlias::DiceAlias(const DiceAlias& alias)
{
- m_command= alias.getCommand();
- m_comment= alias.getComment();
- m_value= alias.getValue();
+ m_command= alias.command();
+ m_comment= alias.comment();
+ m_pattern= alias.pattern();
m_isEnable= alias.isEnable();
m_type= alias.isReplace() ? REPLACE : REGEXP;
}
@@ -158,41 +161,41 @@ bool DiceAlias::resolved(QString& str)
if((m_type == REPLACE) && (str.contains(m_command)))
{
- str= makeReplament(m_command, m_value, str);
+ str= makeReplament(m_pattern, m_command, str);
// str.replace(m_command,m_value);
return true;
}
else if(m_type == REGEXP)
{
QRegularExpression exp(m_command);
- str.replace(exp, m_value);
+ str.replace(exp, m_pattern);
return true;
}
return false;
}
-void DiceAlias::setCommand(QString key)
+void DiceAlias::setCommand(QString command)
{
- m_command= key;
+ m_command= command;
}
-void DiceAlias::setValue(QString value)
+void DiceAlias::setPattern(const QString& pattern)
{
- m_value= value;
+ m_pattern= pattern;
}
void DiceAlias::setType(RESOLUTION_TYPE type)
{
m_type= type;
}
-QString DiceAlias::getCommand() const
+QString DiceAlias::command() const
{
return m_command;
}
-QString DiceAlias::getValue() const
+QString DiceAlias::pattern() const
{
- return m_value;
+ return m_pattern;
}
bool DiceAlias::isReplace() const
@@ -222,7 +225,7 @@ void DiceAlias::setEnable(bool b)
m_isEnable= b;
}
-QString DiceAlias::getComment() const
+QString DiceAlias::comment() const
{
return m_comment;
}
diff --git a/include/dicealias.h b/include/dicealias.h
index 6825cdf..c390d21 100644
--- a/include/dicealias.h
+++ b/include/dicealias.h
@@ -41,7 +41,7 @@ public:
* @param key
* @param isReplace
*/
- DiceAlias(QString pattern, QString remplacement, bool isReplace= true, bool isEnable= true);
+ DiceAlias(QString pattern, QString command, QString comment= QString{}, bool isReplace= true, bool isEnable= true);
DiceAlias(const DiceAlias& alias);
/**
* @brief ~DiceAlias
@@ -57,12 +57,12 @@ public:
* @brief setCommand
* @param key
*/
- void setCommand(QString key);
+ void setPattern(const QString& pattern);
/**
* @brief setValue
* @param value
*/
- void setValue(QString value);
+ void setCommand(QString command);
/**
* @brief setType
*/
@@ -72,12 +72,12 @@ public:
* @brief getCommand
* @return
*/
- QString getCommand() const;
+ QString pattern() const;
/**
* @brief getValue
* @return
*/
- QString getValue() const;
+ QString command() const;
/**
* @brief isReplace
* @return
@@ -102,7 +102,7 @@ public:
* @brief getComment
* @return
*/
- QString getComment() const;
+ QString comment() const;
/**
* @brief setComment
* @param comment
@@ -110,8 +110,8 @@ public:
void setComment(const QString& comment);
private:
+ QString m_pattern;
QString m_command;
- QString m_value;
QString m_comment;
RESOLUTION_TYPE m_type;
bool m_isEnable;
diff --git a/include/parsingtoolbox.h b/include/parsingtoolbox.h
index 89081ed..08e876a 100644
--- a/include/parsingtoolbox.h
+++ b/include/parsingtoolbox.h
@@ -243,6 +243,7 @@ public:
void insertAlias(DiceAlias* dice, int i);
const QList<DiceAlias*>& getAliases() const;
QList<DiceAlias*>* aliases();
+ void setAliases(const QList<DiceAlias*> list);
void cleanUpAliases();
static bool readStringResultParameter(QString& str);
diff --git a/node/listaliasnode.cpp b/node/listaliasnode.cpp
index a8e4125..c3f6d31 100644
--- a/node/listaliasnode.cpp
+++ b/node/listaliasnode.cpp
@@ -48,7 +48,7 @@ QString ListAliasNode::buildList() const
QString result(QObject::tr("List of Alias:\n"));
for(auto& key : m_aliasList)
{
- result+= QString("%1 : %2 # %3\n").arg(key->getCommand(), key->getValue(), key->getComment());
+ result+= QString("%1 : %2 # %3\n").arg(key->pattern(), key->command(), key->comment());
}
return result;
}
@@ -57,7 +57,7 @@ QString ListAliasNode::toString(bool wl) const
QStringList resultList;
for(auto& key : m_aliasList)
{
- resultList << "{" << key->getCommand() << key->getValue() << "}";
+ resultList << "{" << key->pattern() << key->command() << "}";
}
if(wl)
diff --git a/parsingtoolbox.cpp b/parsingtoolbox.cpp
index ca6e8a4..e5bb579 100644
--- a/parsingtoolbox.cpp
+++ b/parsingtoolbox.cpp
@@ -2329,6 +2329,13 @@ QList<DiceAlias*>* ParsingToolBox::aliases()
return &m_aliasList;
}
+void ParsingToolBox::setAliases(const QList<DiceAlias*> list)
+{
+ qDeleteAll(m_aliasList);
+ m_aliasList.clear();
+ m_aliasList= list;
+}
+
std::vector<ExecutionNode*> ParsingToolBox::readInstructionList(QString& str, bool global)
{
if(str.isEmpty())
diff --git a/qmltypesregister.cpp b/qmltypesregister.cpp
index 74893c9..cc207e9 100644
--- a/qmltypesregister.cpp
+++ b/qmltypesregister.cpp
@@ -22,14 +22,17 @@
#include <QQmlEngine>
#include "diceroller.h"
-#ifndef UNIT_TEST
+#if !defined(UNIT_TEST) && defined(RCSE)
#include "field.h"
#endif
void registerQmlTypes()
{
+ auto p= new DiceRoller;
+ // Q_UNUSED(p)
qmlRegisterType<DiceRoller>("Rolisteam", 1, 0, "DiceRoller");
-#ifndef UNIT_TEST
+#if !defined(UNIT_TEST) && defined(RCSE)
qmlRegisterType<FieldController>("Rolisteam", 1, 0, "Field");
#endif
+ delete p;
}
diff --git a/tests/dice/tst_dice.cpp b/tests/dice/tst_dice.cpp
index c5131ed..c3168f4 100644
--- a/tests/dice/tst_dice.cpp
+++ b/tests/dice/tst_dice.cpp
@@ -520,7 +520,7 @@ void TestDice::testAlias()
{
m_parsingToolBox->insertAlias(new DiceAlias("!", "3d6c"), 0);
m_parsingToolBox->insertAlias(new DiceAlias("g", "d10k"), 1);
- m_parsingToolBox->insertAlias(new DiceAlias("(.*)C(.*)", QStringLiteral("\\1d10e10c[>=\\2]"), false), 2);
+ m_parsingToolBox->insertAlias(new DiceAlias("(.*)C(.*)", QStringLiteral("\\1d10e10c[>=\\2]"), QString(), false), 2);
QFETCH(QString, cmd);
QFETCH(QString, expected);