APIViewEventHandlerProc
Project Navigator 항목들의 변경사항들을 처리하기 위한 사용자 제공 콜백 함수입니다.
typedef GSErrCode APIViewEventHandlerProc ( const API_NotifyViewEventType* viewEvent );
파라미터
- viewEvent
- [in] 이 structure는 Project Navigator 항목과 애드온이 호출되는 이벤트를 식별합니다.
리턴 값
NoError
- 함수가 성공적으로 완료되었습니다.
다른 공통 API 오류들에 대해서는 API 오류 문서를 보십시오.
설명
애드온이 ACAPI_Notify_CatchViewEvent와 함께 Project Navigator 항목 변경사항에 대한 알림들을 받게 되면 이 함수가 호출될 것입니다.
예제
static GSErrCode __ACENV_CALL ViewNotificationHandlerProc (const API_NotifyViewEventType* viewEvent) { char msgStr[256]; char eventStr[64]; switch (viewEvent->notifID) { case APINotifyView_Inserted: CHCopyC ("inserted", eventStr); break; case APINotifyView_Modified: CHCopyC ("modified", eventStr); break; case APINotifyView_Deleted: CHCopyC ("deleted", eventStr); break; case APINotifyView_Opened: CHCopyC ("opened", eventStr); break; case APINotifyView_Begin: return NoError; case APINotifyView_End: return NoError; default: CHCopyC ("- unknown event -", eventStr); break; } API_NavigatorItem item; BNZeroMemory (&item, sizeof (API_NavigatorItem)); GSErrCode err = ACAPI_Environment (APIEnv_GetNavigatorItemID, const_cast<char*>(viewEvent->itemGuid), &item); if (err == NoError) { sprintf (msgStr, "API Notification: navigator item \"%s%s%s\" has been %s", item.uiId, ((strlen (item.uiId) > 0 && strlen (item.name) > 0) ? " " : ""), item.name, eventStr); } else { sprintf (msgStr, "API Notification: navigator item \"%s\" has been %s", viewEvent->itemGuid, eventStr); } ACAPI_WriteReport (msgStr, false); return NoError; }
요구사항
- 버전: API 10 또는 이후
- 헤더: APIdefs_Callback.h