[telepathy-qt4/master] qt4-client-gen: allow visibility of generated classes to be controlled
Simon McVittie
simon.mcvittie at collabora.co.uk
Thu Dec 3 09:42:01 PST 2009
---
TelepathyQt4/Makefile.am | 1 +
tools/qt4-client-gen.py | 10 +++++++---
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/TelepathyQt4/Makefile.am b/TelepathyQt4/Makefile.am
index db8ccf7..384d2b3 100644
--- a/TelepathyQt4/Makefile.am
+++ b/TelepathyQt4/Makefile.am
@@ -509,6 +509,7 @@ _gen/cli-%.h _gen/cli-%-body.hpp: _gen/spec-%.xml \
--ifacexml=$< \
--extraincludes='<TelepathyQt4/Types>' \
--must-define='IN_TELEPATHY_QT4_HEADER' \
+ --visibility=TELEPATHY_QT4_EXPORT \
$$mainiface
_gen/%.moc.hpp: %.h _gen/constants.h _gen/types.h
diff --git a/tools/qt4-client-gen.py b/tools/qt4-client-gen.py
index 869f833..6325340 100644
--- a/tools/qt4-client-gen.py
+++ b/tools/qt4-client-gen.py
@@ -40,6 +40,7 @@ class Generator(object):
self.must_define = opts.get('--must-define', None)
self.dbus_proxy = opts.get('--dbus-proxy',
'Tp::DBusProxy')
+ self.visibility = opts.get('--visibility', '')
ifacedom = xml.dom.minidom.parse(opts['--ifacexml'])
specdom = xml.dom.minidom.parse(opts['--specxml'])
except KeyError, k:
@@ -149,7 +150,7 @@ namespace %s
*
* Proxy class providing a 1:1 mapping of the D-Bus interface "%(dbusname)s."
*/
-class TELEPATHY_QT4_EXPORT %(name)s : public Tp::AbstractInterface
+class %(visibility)s %(name)s : public Tp::AbstractInterface
{
Q_OBJECT
@@ -195,7 +196,9 @@ public:
""" % {'name' : name,
'headercmd' : get_headerfile_cmd(self.realinclude, self.prettyinclude),
'groupcmd' : self.group and (' * \\ingroup %s\n' % self.group),
- 'dbusname' : dbusname})
+ 'dbusname' : dbusname,
+ 'visibility': self.visibility,
+ })
self.b("""
%(name)s::%(name)s(const QString& busName, const QString& objectPath, QObject *parent)
@@ -505,6 +508,7 @@ if __name__ == '__main__':
'extraincludes=',
'mainiface=',
'must-define=',
- 'dbus-proxy='])
+ 'dbus-proxy=',
+ 'visibility='])
Generator(dict(options))()
--
1.5.6.5
More information about the telepathy-commits
mailing list