void WINAPI DLLExport SetPropCheck(LPMV mV, LPEDATA edPtr, UINT nPropID, BOOL nCheck) { #ifndef RUN_ONLY // Example // ------- switch (nPropID) { case PROPID_ENDIANNESS: edPtr->bEndianness = nCheck; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_ENDIANNESS,false); break; case PROPID_AUTOSELECT: edPtr->bAutoSelect = nCheck; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_AUTOSELECT,false); break; case PROPID_CASESENSITIVE: edPtr->bStrCmp = nCheck; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_AUTOSELECT,false); break; //mvRefreshProp(mV, edPtr, PROPID_COMBO); } #endif // !RUN_ONLY }
// -------------------- // SetPropValue // -------------------- // This routine is called by MMF after a property has been modified. // void WINAPI DLLExport SetPropValue(LPMV mV, LPEDATA edPtr, UINT nPropID, LPVOID lParam) { #ifndef RUN_ONLY // Gets the pointer to the CPropValue structure CPropValue* pValue = (CPropValue*)lParam; int value = 0; switch (nPropID){ case PROPID_DIRECTION: edPtr->direction = (((CPropDWordValue*)pValue)->m_dwValue == 1) ? true : false; break; case PROPID_IMG: if ( ((CPropDataValue*)pValue)->m_pData != NULL ){ LPWORD pw = (LPWORD)((CPropDataValue*)pValue)->m_pData; if ( *pw++ == 1 ) edPtr->imageFrames[0] = *pw++; } break; case PROPID_ZLENGTH: edPtr->zLength = ((CPropDWordValue*)pValue)->m_dwValue; break; case PROPID_LOWERBOUND: value = ((CPropDWordValue*)pValue)->m_dwValue; edPtr->lowerLimit = value; if( edPtr->lowerLimit > edPtr->upperLimit ) edPtr->upperLimit = value; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_LOWERBOUND,false); mvRefreshProp(mV, edPtr, PROPID_UPPERBOUND,false); break; case PROPID_UPPERBOUND: value = ((CPropDWordValue*)pValue)->m_dwValue; edPtr->upperLimit = value; if( edPtr->upperLimit < edPtr->lowerLimit ) edPtr->lowerLimit = value; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_LOWERBOUND,false); mvRefreshProp(mV, edPtr, PROPID_UPPERBOUND,false); break; case PROPID_SMOOTHLINES: value = ((CPropDWordValue*)pValue)->m_dwValue; edPtr->smoothAmount = value; mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_SMOOTHLINES,false); break; } // You may want to have your object redrawn in the frame editor after the modifications, // in this case, just call this function // mvInvalidateObject(mV, edPtr); #endif // !defined(RUN_ONLY) }
void WINAPI DLLExport SetPropValue(LPMV mV, LPEDATA edPtr, UINT nPropID, LPVOID lParam) { #ifndef RUN_ONLY // Gets the pointer to the CPropValue structure CPropValue * pValue = (CPropValue *)lParam; // Example // ------- switch (nPropID) { // case PROPID_TRANSPCOLOR: // edPtr->transpColor = ((CPropDWordValue*)pValue)->m_dwValue; // break; case PROPID_BGCOLOR: edPtr->background = ((CPropDWordValue *)pValue)->m_dwValue; mvInvalidateObject(mV, edPtr); break; case PROPID_ANIMMODE: edPtr->animMode = ((CPropDWordValue *)pValue)->m_dwValue; mvInvalidateObject(mV, edPtr); break; case PROPID_MINLAYER: edPtr->minLayer = ((CPropIntValue *)pValue)->m_nValue; edPtr->maxLayer = max(0, edPtr->minLayer); mvInvalidateObject(mV, edPtr); break; case PROPID_MAXLAYER: edPtr->maxLayer = ((CPropIntValue *)pValue)->m_nValue; edPtr->maxLayer = max(0, edPtr->maxLayer); mvInvalidateObject(mV, edPtr); break; } // You may want to have your object redrawn in the frame editor after the // modifications, // in this case, just call this function // mvInvalidateObject(mV, edPtr); #endif // !RUN_ONLY }
void WINAPI DLLExport SetPropCheck(LPMV mV, LPEDATA edPtr, UINT nPropID, BOOL nCheck) { #ifndef RUN_ONLY // Example // ------- switch (nPropID) { case PROPID_AUTOSCROLL: edPtr->autoScroll = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_OUTSIDECOLL: edPtr->outsideColl = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_RESAMPLE: edPtr->resample = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_FINECOLL: edPtr->fineColl = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_DONTSCALECOLL: edPtr->unscaledColl = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_ACCURATECLIP: edPtr->accurateClip = nCheck ? true : false; mvInvalidateObject(mV, edPtr); break; case PROPID_TRANSPARENT: edPtr->transparent = nCheck ? true : false; mvInvalidateObject(mV, edPtr); if (nCheck) { mvRemoveProps(mV, edPtr, BgColor); // mvInsertProps(mV, edPtr, TranspColor, PROPID_TRANSPARENT, TRUE); } else { // mvRemoveProps(mV, edPtr, TranspColor); mvInsertProps(mV, edPtr, BgColor, PROPID_TRANSPARENT, TRUE); } break; } #endif // !RUN_ONLY }
// -------------------- // SetPropCheck // -------------------- // This routine is called by MMF when the user modifies a checkbox in the properties. // void WINAPI DLLExport SetPropCheck(LPMV mV, LPEDATA edPtr, UINT nPropID, BOOL nCheck) { #ifndef RUN_ONLY switch (nPropID) { case PROPID_QUALITY: edPtr->resample = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_QUALITY,false); break; case PROPID_AUTOSCROLL: edPtr->autoscroll = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_AUTOSCROLL,false); break; case PROPID_LOWERBOUND: edPtr->hasLowerLimit = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_LOWERBOUND,false); break; case PROPID_UPPERBOUND: edPtr->hasUpperLimit = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_UPPERBOUND,false); break; case PROPID_STATIONATORY: edPtr->stationatory = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_STATIONATORY,false); break; case PROPID_SMOOTHLINES: edPtr->smoothLines = (nCheck==1); mvInvalidateObject(mV, edPtr); mvRefreshProp(mV, edPtr, PROPID_SMOOTHLINES,false); break; } #endif // !defined(RUN_ONLY) }