Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 VA Refactor CreateImpementation location bug

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
jzq740176597 Posted - Mar 24 2015 : 04:27:07 AM
VA2059 vs2005 Win7 64bit

all code below located inside one cpp file.


class SDbPluginImp
{
public:
	XPoint	getNameLoc()const;//has body
	XPoint	getMidPt(); //trigger createImpementation
private:
  	CString m_name;
	int	m_num;
	XPoint	m_pt;//leftBot
}


XPoint SDbPluginImp::getNameLoc() const
{
	//left-middle align
	XPoint pt(m_pt);
	pt.x += nameMargin;
	pt.y += getHeight()- nameMargin;
	return pt;
}


//-----before-------//
ENT_VERSION_IMP(SDbPlugin,1)
IMPLEMENT_ENTBASE(SDbPlugin)


//-----after-------//
ENT_VERSION_IMP(SDbPlugin,1)

XPoint SDbPluginImp::getMidPt()//new create!
{

}

IMPLEMENT_ENTBASE(SDbPlugin)

BTW.Both ENT_VERSION_IMP & IMPLEMENT_ENTBASE are macro!

#define ENT_VERSION_IMP(classname,version) \const Adesk::UInt8 classname::entVersion_s(){return version;}

#define IMPLEMENT_ENTBASE(ClassName) \	void ClassName::InitMatchProtocol(BOOL bTrue) { \	}


So why put the new function body between the 2 macros?

I hope to put it above
ENT_VERSION_IMP(SDbPlugin,1)
.

regards!
3   L A T E S T    R E P L I E S    (Newest First)
accord Posted - Mar 27 2015 : 2:33:19 PM
I got the file, thank you. I have replied by email.
jzq740176597 Posted - Mar 26 2015 : 9:30:50 PM
hi accord.

I have sent a clear vs2005 win32 project which i can reproduce the problem.

To http://www.wholetomato.com/support/contact.asp.

Hope you or you team can check it out.And fix it.
accord Posted - Mar 24 2015 : 1:51:00 PM
I wasn't able to reproduce the problem here. Can you please try creating a clean new win32 project, open the main cpp file of the project and paste the following after the default code?

#define ENT_VERSION_IMP(classname,version) \const Adesk::UInt8 classname::entVersion_s(){return version;}

#define IMPLEMENT_ENTBASE(ClassName) \	void ClassName::InitMatchProtocol(BOOL bTrue) { \	}

class SDbPluginImp
{
public:
	XPoint	getNameLoc()const;//has body
	XPoint	getMidPt(); //trigger createImpementation
private:
	CString m_name;
	int	m_num;
	XPoint	m_pt;//leftBot
}


XPoint SDbPluginImp::getNameLoc() const
{
	//left-middle align
	XPoint pt(m_pt);
	pt.x += nameMargin;
	pt.y += getHeight() - nameMargin;
	return pt;
}


//-----before-------//
ENT_VERSION_IMP(SDbPlugin, 1)
IMPLEMENT_ENTBASE(SDbPlugin)


//-----after-------//
ENT_VERSION_IMP(SDbPlugin, 1)

IMPLEMENT_ENTBASE(SDbPlugin)


I tried to trigger Create Implementation at this point and got the following:


Do you still see a different result in a clean new project?
I'm wondering whether the context of your project's code or something else contributes to the different results I see.

© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000