<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Renaming marker elements? in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/Renaming-marker-elements/m-p/226346#M5372</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I'm trying to rename an elevation marker element, but it seems nothing is happening to the element. There is no error in "ACAPI_Element_Change()" but the id/name doesn't change.&lt;BR /&gt;&lt;BR /&gt;The code is below. I've also tried section/interior elevation, same thing happens, with memo or without memo. Another way I could think is renaming the navigator item of the marker, but "APIEnv_ChangeNavigatorViewID()" crashes (seems renaming in navi in Project Map is not allowed?)&lt;BR /&gt;
&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;	GSErrCode err = NoError;
	API_Element elem_elev;
	GS::Array&amp;lt;API_Guid&amp;gt; elemList;
	ACAPI_Element_GetElemList(API_ElevationID, &amp;amp;elemList);
	size_t count = elemList.GetSize();
	for (short e = 0; e &amp;lt; count; e++)
	{
		BNZeroMemory(&amp;amp;elem_elev, API_ElementSize);
		elem_elev.header.typeID = API_ElevationID;
		elem_elev.header.guid = elemList;
		err = ACAPI_Element_Get(&amp;amp;elem_elev);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_Get()", ErrId2Name(err));
			continue;
		}

		GS::UniString name = elem_elev.elevation.segment.cutPlName;
		if (name != "ELEVATION 1")
			continue;

		API_ElementMemo memo;
		BNZeroMemory(&amp;amp;memo, sizeof(memo));
		err = ACAPI_Element_GetMemo(elemList, &amp;amp;memo);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_GetMemo()", ErrId2Name(err));
			continue;
		}
		API_Element mask;
		ACAPI_ELEMENT_MASK_CLEAR(mask);
		ACAPI_ELEMENT_MASK_SET(mask, API_ElevationType, segment.cutPlIdStr);
		ACAPI_ELEMENT_MASK_SET(mask, API_ElevationType, segment.cutPlName);
		GS::ucscpy(elem_elev.elevation.segment.cutPlIdStr, L"TEST");
		GS::ucscpy(elem_elev.elevation.segment.cutPlName, L"CHANGE NAME");
		ACAPI_OpenUndoableSession("TEST");
		GSErrCode err = ACAPI_Element_Change(&amp;amp;elem_elev, &amp;amp;mask, &amp;amp;memo, APIMemoMask_All, true);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_Change()", ErrId2Name(err));
		}
		ACAPI_CloseUndoableSession();
	}
&lt;/PRE&gt;
&lt;/DIV&gt;</description>
    <pubDate>Tue, 01 Aug 2023 11:58:09 GMT</pubDate>
    <dc:creator>Erenford</dc:creator>
    <dc:date>2023-08-01T11:58:09Z</dc:date>
    <item>
      <title>Renaming marker elements?</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/Renaming-marker-elements/m-p/226346#M5372</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;I'm trying to rename an elevation marker element, but it seems nothing is happening to the element. There is no error in "ACAPI_Element_Change()" but the id/name doesn't change.&lt;BR /&gt;&lt;BR /&gt;The code is below. I've also tried section/interior elevation, same thing happens, with memo or without memo. Another way I could think is renaming the navigator item of the marker, but "APIEnv_ChangeNavigatorViewID()" crashes (seems renaming in navi in Project Map is not allowed?)&lt;BR /&gt;
&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;	GSErrCode err = NoError;
	API_Element elem_elev;
	GS::Array&amp;lt;API_Guid&amp;gt; elemList;
	ACAPI_Element_GetElemList(API_ElevationID, &amp;amp;elemList);
	size_t count = elemList.GetSize();
	for (short e = 0; e &amp;lt; count; e++)
	{
		BNZeroMemory(&amp;amp;elem_elev, API_ElementSize);
		elem_elev.header.typeID = API_ElevationID;
		elem_elev.header.guid = elemList;
		err = ACAPI_Element_Get(&amp;amp;elem_elev);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_Get()", ErrId2Name(err));
			continue;
		}

		GS::UniString name = elem_elev.elevation.segment.cutPlName;
		if (name != "ELEVATION 1")
			continue;

		API_ElementMemo memo;
		BNZeroMemory(&amp;amp;memo, sizeof(memo));
		err = ACAPI_Element_GetMemo(elemList, &amp;amp;memo);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_GetMemo()", ErrId2Name(err));
			continue;
		}
		API_Element mask;
		ACAPI_ELEMENT_MASK_CLEAR(mask);
		ACAPI_ELEMENT_MASK_SET(mask, API_ElevationType, segment.cutPlIdStr);
		ACAPI_ELEMENT_MASK_SET(mask, API_ElevationType, segment.cutPlName);
		GS::ucscpy(elem_elev.elevation.segment.cutPlIdStr, L"TEST");
		GS::ucscpy(elem_elev.elevation.segment.cutPlName, L"CHANGE NAME");
		ACAPI_OpenUndoableSession("TEST");
		GSErrCode err = ACAPI_Element_Change(&amp;amp;elem_elev, &amp;amp;mask, &amp;amp;memo, APIMemoMask_All, true);
		if (err != NoError)
		{
			WriteReport("[Error] %s "__FUNC__" - ACAPI_Element_Change()", ErrId2Name(err));
		}
		ACAPI_CloseUndoableSession();
	}
&lt;/PRE&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 01 Aug 2023 11:58:09 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/Renaming-marker-elements/m-p/226346#M5372</guid>
      <dc:creator>Erenford</dc:creator>
      <dc:date>2023-08-01T11:58:09Z</dc:date>
    </item>
  </channel>
</rss>

