Page 1 of 1

User properties [SOLVED]

PostPosted: Wed 13 Mar 2013 10:12
by parodid
Hello everyone.

I'm trying to use @{xyz} substitutions to decorate class declarations in order to make Visual C++ 2008 compiler automatically export the class from a dll.
I operated this way:

1) Modified Generation settings dialog:

Code: Select all
${comment}${template}class @{EXPORT_TAG} ${name}${inherit} {
${members}};
${inlines}


2) Put EXPORT_TAG -> HILUTILS_API in Package Dialog | Properties

BOUML 6.4.3 correctly accomplish the job when showing the result after the substitution in C++ tab of the class and in the artifact header preview:

Code: Select all
//
//Class: CCallbackInfo
//Description: Contains callback and its arguments

class  HILUTILS_API CCallbackInfo : public CLinkable {
...CCallbackInfo()
...CCallbackInfo()
...Assign()
...SetResult()
...SetReqArg()
...SetRspArg()
...Execute()
...m_Cb
...m_Arg
};//
//Class: CCallbackInfo
//Description: Contains callback and its arguments

class  HILUTILS_API CCallbackInfo : public CLinkable {
...CCallbackInfo()
...CCallbackInfo()
...Assign()
...SetResult()
...SetReqArg()
...SetRspArg()
...Execute()
...m_Cb
...m_Arg
};



but when it generates artifact, the file contains:

Code: Select all
class @{EXPORT_TAG}}CCallbackInfo : public CLinkable {
...
}:


Can anyone, please, tell me where I was wrong?
Thanks.

D.Parodi

Re: User properties

PostPosted: Wed 13 Mar 2013 16:14
by Bruno Pagès
Hello,

This is a bug in the C++ compiler, also present in the Java, Idl, Php, Python and MySql generators

I will fix that in the next release, thank you for the bug report

Re: User properties

PostPosted: Wed 13 Mar 2013 16:40
by Bruno Pagès
Hello,

To not have to wait for the next release of Bouml I encourage you to get the file http://www.bouml.fr/files/cpp_generator.exe and place it where Bouml is installed to replace the current (bugged) C++ generator by the future one.

Re: User properties

PostPosted: Thu 14 Mar 2013 07:14
by parodid
That solves the problem.
Thanks.

Re: User properties [SOLVED]

PostPosted: Sun 17 Mar 2013 08:59
by Bruno Pagès
Bouml 6.4.4 is available fixing this problem