Origin C Improvements

Code Builder

Improve TreeNode display in Code Builder Variable window (ORG-8689)

Run

void test_treenode()
{
	Tree tr;
	tr.a.nVal = 10;
	tr.b.strVal = "Fol";
	
	vector<int> vn = {1,2};
	tr.c.nVals = vn;
	vector<string> vs = {"a","b"};
	tr.d.strVals = vs;
	
	tr.e.a.strVals = vs;
	
	TreeNode trA = tr.a;	
	TreeNode trB = tr.b;	
	TreeNode trC = tr.c;
	TreeNode trD = tr.d;
	TreeNode trE = tr.e;
}

And get:

 

Change hot key in Code Builder, Ctrl+Shift+F for find in files, and Ctrl+Shift+C for copy full path (ORG-7919)

Origin C

Add more Page and Layer classes LabTalk evaluation functions (ORG-8470)

BOOL LT_evaluate(LPCSTR lpcszLabTalkExpression, double * lpdbResult);
BOOL LT_get_var(LPCSTR lpcszLabTalkVarName, double * lpdbResult);
BOOL LT_set_var(LPCSTR lpcszLabTalkVarName, double dbValue);
BOOL LT_get_str(LPCSTR lpcszLabTalkString, char* pBuffer, int nBufferSize);
BOOL LT_set_str(LPCSTR lpcszVar, LPCSTR lpcszContent);

 

OC vector::SetSubVector supports copy by counting elements (ORG-8024)

int vectorbase::SetSubVector(vectorbase& vbSource, int c1 = 0, int nCount = -1);
int vector<string>::SetSubVector(vectorbase& vbSource, int c1 = 0, int nCount = -1);

 

Expose Column method GetAdditionalInfo to OC for getting additional text (ORG-9101)

void test_GetAdditionalInfo()
{
	Worksheet wks = Project.ActiveLayer();
	Column col(wks, 0);
	string strTextInfo;
	col.GetAdditionalInfo(strTextInfo);
	out_str(strTextInfo);
}

Improve speed of OC compiler (ORG-8697)