Graphisoft®

API Development KitVersion: 18

ACAPI_Register_FileType

I/O 타입 애드온들에 대한 파일 타입을 등록합니다.

    GSErrCode  ACAPI_Register_FileType (
        Int32            refCon,
        GSType           ftype,
        GSType           fcreator,
        const char*      extname,
        short            iconResID,
        short            descStrResID,
        short            descStrResItemID,
        API_IOMethod     methodFlags
    );

 

파라미터

refCon
[in] 애드온 안에서 이 파일 타입을 식별하는 임의의 숫자입니다.
ftype
[in] Macintosh 파일 타입입니다. (예. 'TEXT')
fcreator
[in] Macintosh에서의 작성자입니다. (예. ArchiCAD에서 'GSAC')
extname
[in] Windows에서 사용하는 확장자입니다. (예. "txt")
iconResID
[in] 선택적인 아이콘 리소스 ID입니다. 이 아이콘은 Macintosh의 Open/Save 다이얼로그들에서 나타납니다.
descStrResID
[in] 파일 타입의 설명을 포함하는 리소스의 리소스 ID입니다.
descStrResItemID
[in] 파일 타입의 설명을 포함하는 항목의 리소스 안에 있는 항목 ID 또는 MIME 타입을 지정할 때에는 0입니다. (설명을 보십시오)
methodFlags
[in] 이 파일 타입이 추가되는 Open/Save 다이얼로그들을 설명하는 flag들입니다. (설명을 보십시오)

 

리턴 값

NoError
함수가 성공적으로 완료되었습니다.

다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.

 

설명

이 함수는 애드온의 RegisterInterface 루틴으로부터 호출되어야 합니다. 당신은 동일한 애드온으로부터 1개보다 더 많은 파일 타입을 등록할 수 있으며 서버 애플리케이션의 서로 다른 메뉴들에서 나타나게 됩니다.

제공된 refCon 파라미터는 ACAPI_Install_FileTypeHandler 함수 안에서 동일해야 합니다. Initialize 루틴으로부터 호출해야 합니다.

methodFlags 파라미터는 다이얼로그의 파일 타입 팝업이 포함해야 할 등록된 파일 타입을 정의합니다:

Flag 파일 다이얼로그
Open2DSupported Open as 2D (2D로 열기)
Merge2DSupported Merge (병합)
OpenLibPartSupported Open Library Item (라이브러리 항목 열기)
SaveAs2DSupported Save as 2D (2D로 저장)
SaveAs3DSupported Save as 3D (3D로 저장)
SaveAsFlySupported Create Fly-Through/Sun Study
Import2DDrawingSupported  Featuring API 10 Import as Drawing (도면으로 가져오기)

 

4.2  API v4.2부터 당신은 파일에 대하여 MIME 타입 역시 등록할 수 있습니다. MIME (Multipurpose Internet Mail Extension) 타입들은 특정 미디어 타입들에 대하여 공통적으로 허용되는 식별자들입니다. MIME 타입을 지정하는 것은 파일 타입 관리자에서 파일 포맷 식별을 좀 더 정확하게 해줍니다.
만약 당신이 이 기능을 사용하기로 결정하였다면 다음 방식대로 이것을 수행할 수 있습니다:

 

예제

localizable GRC 파일 내부:

'STR#' 32500    "File Type descriptions" {
/* [  1] */         "DWF File"
/* [  2] */         "model/vnd.dwf"
}

RegisterInterface 함수 내부:

//------------------------------------------------------
// 인터페이스 정의
//------------------------------------------------------
GSErrCode    __ACENV_CALL   RegisterInterface (void)
{
    GSErrCode err;

    err = ACAPI_Register_FileType (1, 'GSAC', ' DWF', "dwf", 0, 32500, 0,
                                   SaveAs2DSupported + Open2DSupported + Merge2DSupported + Import2DDrawingSupported);

    return err;
}   // RegisterInterface

 

요구사항

버전: API 4.1 또는 이후
헤더: ACAPinc.h

 

참고사항

ACAPI_Install_FileTypeHandler
RegisterInterface
API 함수