ACAPI_Notify_CatchToolChange
툴박스 항목 변경사항들에 대한 모니터링을 on/off 합니다.
GSErrCode ACAPI_Notify_CatchToolChange ( APIToolChangeHandlerProc* handlerProc );
파라미터
- handlerProc
- [in] 툴박스에서 변경사항이 발생할 때 알림이 전송되면 호출되는 콜백 프로시저입니다.
여기에
NULL
을 지정하는 것은 당신이 더 이상 알림이 필요하지 않다는 것을 의미합니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
다른 공통 API 오류들에 대해서는 오류 코드들의 리스트를 보십시오.
설명
이 함수는 툴박스에서의 변경사항을 모니터링하고 싶은 애드온을 등록/등록해제하는 데 사용합니다. 예. 사용자가 다른 툴박스 항목으로 전환했을 때.
그 후에 ACAPI_KeepInMemory
함수를 호출해서는 안 됩니다.
왜냐하면 API가 설치된 알림 핸들러들을 가진 애드온들이 언로드되지 않도록 보장해주기 때문입니다.
애드온의 handlerProc
이 등록된 후에 당신은 선택한 툴박스 항목이 변경될 때 호출 받게 될 것입니다.
예제
// ----------------------------------------------------------------------------- // 툴박스 항목 변경 핸들러 함수 // ----------------------------------------------------------------------------- static GSErrCode __ACENV_CALL ToolChangeHandler (const API_ToolBoxItem *newToolMode) { char msgStr[256]; char elemStr[32]; if (newToolMode->typeID == API_ZombieElemID) CHCopyC ("Arrow or Marquee", elemStr); else if (!GetElementTypeString (newToolMode->typeID, elemStr)) CHCopyC ("Unknown", elemStr); sprintf (msgStr, "%s toolbox mode selected", elemStr); ACAPI_WriteReport (msgStr, false); return NoError; } // ToolChangeHandler // ----------------------------------------------------------------------------- // 애드온이 메모리에 로드된 후에 호출됨 // ----------------------------------------------------------------------------- GSErrCode __ACENV_CALL Initialize (void) { // 툴박스에서의 변경사항을 캐치 GSErrCode err = ACAPI_Notify_CatchToolChange (ToolChangeHandler); return err; } // Initialize
요구사항
- 버전: API 4.1 또는 이후
- 헤더: ACAPinc.h
참고사항
ACAPI_KeepInMemory
APIEnv_GetToolBoxModeID
APIEnv_SetToolBoxModeID
알림 관리자
API 함수