summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuergen Bocklage-Ryannel <juergen@ryannel.org>2019-01-21 18:00:08 +0100
committerDominik Holland <dominik.holland@googlemail.com>2022-01-27 13:50:04 +0100
commit58e0cfa7a4a830729a17161a6e7171e7d00dabf5 (patch)
tree744b4c9c96f42df5f4fb41a24f7e26dd0b700153
parentba43d21ea4b0c0ca300dc52140357a16af09dde4 (diff)
downloadqtivi-qface-58e0cfa7a4a830729a17161a6e7171e7d00dabf5.tar.gz
updates cpp helper macros
-rw-r--r--qface/templates/qface/qtcpp.j247
1 files changed, 35 insertions, 12 deletions
diff --git a/qface/templates/qface/qtcpp.j2 b/qface/templates/qface/qtcpp.j2
index dcaea6d..56b81a8 100644
--- a/qface/templates/qface/qtcpp.j2
+++ b/qface/templates/qface/qtcpp.j2
@@ -13,24 +13,28 @@
{% endif %}
{%- endmacro %}
-{% macro property_decl(property, notifiable=True) -%}
-Q_PROPERTY({{property|qt.returnType}} {{property}} READ {{property}} {% if not property.readonly %}WRITE set{{property|upperfirst}}{% endif %}{% if not property.const and notifiable %} NOTIFY {{property}}Changed{% endif %})
+{% macro property_decl(property, notifiable=True, writeable=True) -%}
+Q_PROPERTY({{property|qt.returnType}} {{property}} READ {{property}}{% if property.writeable and writeable%} WRITE set{{property|upperfirst}}{% endif %}{% if not property.const and notifiable %} NOTIFY {{property}}Changed{% endif %})
{%- endmacro %}
{% macro property_pusher_decl(property, ending=";", prefix='') -%}
{{prefix}} void push{{property|upperfirst}}({{ property|qt.parameterType }}){{ending}}
{%- endmacro %}
-{% macro property_setter_decl(property, ending=";", prefix='') -%}
-{{prefix}}void set{{property|upperfirst}}({{ property|qt.parameterType }}){{ending}}
+{% macro property_setter_decl(property, ending=";", prefix='', verb="set") -%}
+{{prefix}}void {{verb}}{{property|upperfirst}}({{ property|qt.parameterType }}){{ending}}
{%- endmacro %}
{% macro property_getter_decl(property, ending=";", prefix='') -%}
{{prefix}}{{property|qt.returnType}} {{property}}() const{{ending}}
{%- endmacro %}
-{% macro signal_decl(symbol, postfix="") -%}
+{% macro signal_decl(symbol, postfix="", verb="", full=False) -%}
+{% if full -%}
+void {{symbol}}{{postfix}}({{symbol|qt.parameters}});
+{%- else -%}
void {{symbol}}{{postfix}}();
+{%- endif %}
{%- endmacro %}
{% macro property_member_decl(property) -%}
@@ -40,6 +44,7 @@ void {{symbol}}{{postfix}}();
{% macro property_pusher_impl(class, property, notifiable=True) -%}
void {{class}}::push{{property|upperfirst}}({{ property|qt.parameterType }})
{
+ qDebug() << Q_FUNC_INFO << {{property}};
{% if notifiable %}
if (m_{{property}} != {{property}}) {
m_{{property}} = {{property}};
@@ -51,7 +56,7 @@ void {{class}}::push{{property|upperfirst}}({{ property|qt.parameterType }})
}
{%- endmacro %}
-{% macro property_setter_impl(class, property, notifiable=True) -%}
+{% macro property_setter_impl(class, property, notifiable=True, verb="set") -%}
/*!
\qmlproperty {{property.type}} {{class}}::{{property}}
{% with doc = property.comment|parse_doc %}
@@ -59,8 +64,9 @@ void {{class}}::push{{property|upperfirst}}({{ property|qt.parameterType }})
{{doc.description|join("\n ")}}
{% endwith %}
*/
-void {{class}}::set{{property|upperfirst}}({{ property|qt.parameterType }})
+void {{class}}::{{verb}}{{property|upperfirst}}({{ property|qt.parameterType }})
{
+ qDebug() << Q_FUNC_INFO << {{property}};
{% if notifiable %}
if (m_{{property}} != {{property}}) {
m_{{property}} = {{property}};
@@ -81,7 +87,8 @@ void {{class}}::set{{property|upperfirst}}({{ property|qt.parameterType }})
{%- endmacro %}
-{% macro operation_impl(class, operation) -%}
+{% macro operation_impl(class, operation, void=False, doc=True) -%}
+{% if doc %}
/*!
\qmlmethod {{operation.type}} {{class}}::{{operation}}({{operation|qt.parameters}})
{% with doc = operation.comment|parse_doc %}
@@ -89,18 +96,25 @@ void {{class}}::set{{property|upperfirst}}({{ property|qt.parameterType }})
{{doc.description|join("\n ")}}
{% endwith %}
*/
-{{operation|qt.returnType}} {{class}}::{{operation}}({{operation|qt.parameters}})
+{% endif %}
+{% if not void -%}{{operation|qt.returnType}}{%- else %}void{% endif %} {{class}}::{{operation}}({{operation|qt.parameters}})
{
{% for parameter in operation.parameters %}
Q_UNUSED({{parameter.name}});
{% endfor %}
- qWarning() << "{{class}}::{{operation}}(...) not implemented";
+ qDebug() << Q_FUNC_INFO << "not implemented";
+ {% if not void %}
return {{operation|qt.defaultValue}};
+ {% endif %}
}
{%- endmacro %}
-{% macro operation_decl(operation, ending=";") -%}
- virtual {{operation|qt.returnType}} {{operation}}({{operation|qt.parameters}}){{ending}}
+{% macro operation_decl(operation, ending=";", void=False) -%}
+{% if void %}
+virtual void {{operation}}({{operation|qt.parameters}}){{ending}}
+{%- else %}
+virtual {{operation|qt.returnType}} {{operation}}({{operation|qt.parameters}}){{ending}}
+{%- endif %}
{%- endmacro %}
{% macro autogenerated(prefix="//") -%}
@@ -116,3 +130,12 @@ void {{class}}::set{{property|upperfirst}}({{ property|qt.parameterType }})
{{prefix}} To reset the file you need to delete it first.
{%- endmacro %}
+{% macro struct_setter_line(property) -%}
+inline void set{{property|upperfirst}}({{ property|qt.parameterType }}) { m_{{property}} = {{property}}; }
+{%- endmacro %}
+
+
+{% macro struct_getter_line(property) -%}
+inline {{property|qt.returnType}} {{property}}() const { return m_{{property}}; }
+{%- endmacro %}
+