Header file: MapReactors.h.
The AcMapSessionOptionsReactor class is used to represent a session options reactor, which notifies an application when a session option is modified.
To create a specific project options reactor, subclass from AcMapSessionOptionsReactor.
Use AcMapSession::AddOptionsReactor to add an options reactor to a session and AcMapSession::RemoveOptionsReactor to remove it.
You use the new operator to get an AcMySessionOptionsReactor pointer, and call AcMapSession::RemoveOptionsReactor to deallocate memory, as shown in the following example. For simplicity, routine error checking is not shown.
class AcMySessionOptionsReactor : public AcMapSessionOptionsReactor { // See MapDemoApp.cpp distributed with AutoCAD Map ObjectARX. }; static AcMySessionOptionsReactor *pSysOptReactor ; AcRx::AppRetCode acrxEntryPoint(AcRx::AppMsgCode msg, void *appId) { AcMapSession *mapApi = NULL; switch (msg) { case AcRx::kInitAppMsg: acrxRegisterAppMDIAware(appId); //register commands -- code not shown pSysOptReactor = new AcMySessionOptionsReactor (); mapApi = AcMapGetSession(); if (mapApi) mapApi->AddOptionsReactor(pSysOptReactor) ; break ; case AcRx::kUnloadAppMsg: //remove commands -- code not shown break ; case AcRx::kUnloadDwgMsg: mapApi = AcMapGetSession(); if (mapApi) { AcMapProject *pProj ; if (mapApi->GetProject(pProj)) mapApi->RemoveOptionsReactor(pSysOptReactor) ; } break ; } return AcRx::kRetOK; }