APIIo_SaveLibPartFileDialogID
라이브러리 파트 파일 저장하기 다이얼로그 창을 열고 선택한 위치를 리턴합니다.
GSErrCode ACAPI_Interface (
APIIo_SaveLibPartFileDialogID,
bool* retCode,
IO::Location* location,
bool* browseForFolder,
GS::UniString* dialogTitle
);
파라미터
- retCode
- [out] 다이얼로그가 확인(confirmation)과 함께 닫혔는지 여부를 리턴합니다. (OK, Save 등)
- location
- [in/out] 다이얼로그를 열기 위한 기본 라이브러리와 파일 이름을 세트합니다. 그리고 선택한 파일의 위치를 리턴합니다.
- browseForFolder

- [in] 다이얼로그가 라이브러리 파트들을 내장 라이브러리 밖에 저장할 수 있게 해줍니다. (선택사항; 기본 값은 false입니다)
- dialogTitle

- [in] 다이얼로그의 타이틀 타입을 정의합니다. (선택사항)
리턴 값
NoError- 함수가 성공적으로 완료되었습니다.
APIERR_BADPARSretCode또는location이NULL입니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
이 함수가 표준 파일 저장 다이올르게 추가하는 것은 ArchiCAD의 라이브러리 파트 저장하기 다이얼로그들에서 사용하는 'Go to Library' 패널입니다.
이 함수는 다이얼로그를 열고자 하는 올바른 위치가 필요합니다.
만약 다이얼로그가 확인(confirmation) 버튼(OK, Save 등)으로 닫히게 되는 경우에만 location이 세트됩니다.
예제
bool done = false;
bool retIsOk = false;
IO::Location location ("Untitled");
do {
GSErrCode err = ACAPI_Interface (APIIo_SaveLibPartFileDialogID, &retIsOk, &location);
if (err == NoError && retIsOk) {
API_LibPart libPart;
BNZeroMemory (&libPart, sizeof (API_LibPart));
IO::Name name;
location.GetLastLocalName (&name);
CHTruncate (name.ToString ().ToCStr (), libPart.file_Name, sizeof (libPart.file_Name));
if (ACAPI_LibPart_Search (&libPart, false) == NoError) {
ACAPI_WriteReport ("Library part with this name already exists, please choose different name.", true);
done = false;
} else {
done = true;
}
if (libPart.location != NULL)
delete libPart.location;
} else {
done = true;
}
} while (!done);
요구사항
- 버전: API 10 또는 이후
- 헤더: APIdefs_Interface.h