Graphisoft®

API Development KitVersion: 18

API_Attr_Head

모든 속성 타입들과 관련된 공통 정보를 포함하고 있습니다.

    typedef struct {
        API_AttrTypeID     typeID;
        short              index;
        short              flags;
        char               name[API_AttrNameLen];
        API_Guid           guid;
        GSTime             modiTime;
        GS::UniString      *uniStringNamePtr;
    } API_Attr_Head;

 

멤버

typeID
속성의 타입입니다; 이것은 index 필드와 함께 속성을 식별합니다.
가능한 속성 타입들을 보기 위해 API_AttrTypeID structure를 참조하십시오.
index
속성 인덱스는 주어진 속성의 현재 데이터베이스 인덱스입니다. 어떤 속성에 대한 레퍼런스는 이 인덱스들을 통해 이루어집니다. 각 속성 타입에 대하여 1부터 시작하여 최대 가능한 속성 인덱스까지 갑니다.
flags
속성 flag들입니다. 속성 타입 지정 값들은 (해당되는 경우) 개별 속성 섹션에서 설명하고 있습니다. 다음 값들은 모든 타입의 속성들에 대하여 공통입니다:

설명

APIAttr_IsClientCreated 6.1

팀워크 모드에서 이 속성이 클라이언트에 의해 생성되었으며 변경사항이 아직 전송되지 않았는지 여부를 보여줍니다. 이러한 속성은 여전히 팀워크 모드에서 변경되거나 삭제될 수 있습니다. (출력 전용)

name
적절한 다이얼로그들에서 나타나게 되는 속성의 이름입니다.
Modified in API 11  속성 이름은 최대 256 글자까지 가능합니다.
guid Modified in API 11
속성의 글로벌하게 유일한 식별자(GUID)입니다; ACAPI_Attribute_GetACAPI_Attribute_Search로 속성들을 식별하기 위해 사용할 수 있습니다.
modiTime
GSTime 형식으로 된 속성의 변경 시간입니다.
uniStringNamePtr API 11
UniString 포맷으로 된 속성의 이름에 접근하기 위한 선택적인 파라미터입니다.

 

설명

이 structure는 속성에 대한 일반적인 정보를 포함합니다. 모든 필드들을 모든 속성들에게 적용할 수 없습니다; 개별 속성들의 설명을 보십시오.

일반적으로 속성 관리자 함수들 중 어떤 것을 호출하기 전에, 전체 structure를 지우고 필요한 필드들을 채운 다음에 함수를 호출하십시오. structure 내 모든 필드들을 치우는 것은 나중의 호환성을 위해서도 중요합니다; 차후 API 릴리즈에서 fillers가 의미를 갖게 될 수도 있습니다.

펜 속성은 보통 이름을 갖고 있지 않으며 인덱스는 1 ~ 255이어야 합니다. API_PenType에서 설명하는 특수 펜 인덱스 값들이 있습니다.

API 11  generalPtr 포인터가 API_Attr_Head structure에서 제거되었음을 참고하십시오. 당신은 C 문자열 포맷(name) 또는 GS::UniString 포맷(uniStringNamePtr)으로 긴 속성 이름에 접근할 수 있습니다. 1개의 속성 함수 호출로 여러 개의 속성들을 제거하려면 ACAPI_Attribute_DeleteMore를 사용하십시오.

ArchiCAD 11부터 속성 이름들을 GS::UniString 포맷으로 저장합니다. 문자 변환으로 인한 정보 손실을 피하기 위해 속성 동작들에 대하여 UniString 포맷을 사용할 수 있습니다. 이를 위해 API_Attr_Head structure의 uniStringNamePtr 필드 내 GS::UniString 변수의 포인터를 세트하십시오. 그 외에는 이 필드를 항상 NULL로 세트하십시오.

당신은 속성들을 GUID나 이름으로 식별할 수 있습니다. 만약 당신이 속성을 이름으로 참조하고 싶으면 guid 멤버를 APINULLGuid로 세트하십시오. Fonts, PensModel View Options는 고유의 GUID를 갖고 있지 않습니다. 그래서 guid 필드는 항상 APINULLGuid를 포함하고 있습니다. 만약 당신이 uniStringNamePtr을 유효한 GS::UniString 객체를 가리키도록 세트한다면, name 문자 버퍼의 내용을 무시합니다.

 

요구사항

버전: API 1.3 또는 이후
헤더: APIdefs_Attributes.h

 

참고사항

API_AttrTypeID
API_Guid
속성 관리자
API 타입
ACAPI_Attribute_Get, ACAPI_Attribute_Search, ACAPI_Attribute_DeleteMore