ACAPI_Element_SetLinkedProperties
요소 또는 요소 기본값에 프롶티 객체들을 링크합니다.
GSErrCode ACAPI_Element_SetLinkedProperties (
API_Elem_Head* head,
bool criteria,
Int32 inviduallyLibInd
);
파라미터
- head
- [in] 요소의 헤더입니다. (
typeID와guid필드만 사용함)guid가APINULLGuid일 경우, 설정은 요소 기본값에 적용됩니다. - criteria
- [in] 기준별 매칭 프로퍼티들을 요소에 링크해야 할 필요가 있는지 여부를 결정합니다.
- inviduallyLibInd
- [in] 요소에 링크될 개별적으로 선택한 프로퍼티의 라이브러리 인덱스입니다. (값 0은 개별 프로퍼티가 할당 받을 수 없음을 의미함)
리턴 값
NoError- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARShead가NULL입니다.APIERR_BADID- 올바르지 않은
typeID를 지정했거나, 지정한guid를 가진 요소를 찾을 수 없습니다. APIERR_MEMFULL- 프로퍼티들을 세트하기에는 메모리가 부족합니다.
설명
이 함수는 프로퍼티 객체들을 요소에 링크하는 데 사용합니다.
프로퍼티들은 기준 그리고/또는 개발 직접 할당에 의해 건설 요소들과 연관될 수 있습니다.
(하나의 요소에 최대 1개의 개별 할당이 적용될 수 있습니다)
이것은 모든 타입의 건설 요소들에게 적용됩니다.
만약 아무 요소도 지정하지 않으면(예. guid가 APINULLGuid), 이 설정은 주어진 요소 타입의 기본값들에 적용됩니다.
예제
API_Element element;
bool byCrit;
Int32 indivLibInd;
GSErrCode err;
BNZeroMemory (&element, sizeof (API_Element));
element.header.typeID = API_ColumnID;
ACAPI_Element_GetDefaults (&element, NULL);
element.column.origoPos.x = x;
element.column.origoPos.y = y;
...
ACAPI_OpenUndoableSession ("Create column with properties linked");
err = ACAPI_Element_Create (&element, NULL);
if (err == NoError) {
API_Elem_Head defHead;
BNZeroMemory (&defHead, sizeof (API_Elem_Head));
defHead.typeID = API_ColumnID; // guid는 APINULLGuid로 남겨둠
err = ACAPI_Element_GetLinkedProperties (&defHead, &byCrit, &indivLibInd, NULL, NULL) == NoError // 기본값들을 가져옴
if (err == NoError)
err = ACAPI_Element_SetLinkedProperties (&element.header, true, 0); // 링크 프로퍼티들
}
ACAPI_CloseUndoableSession ();
요구사항
- 버전: API 6.1 또는 이후
- 헤더: ACAPinc.h
참고사항
API_Elem_Head
ACAPI_Element_GetLinkedProperties
ACAPI_Element_GetProperties
요소 관리자
API 함수