void MyCreateComp(CCOM_comp* comp) { int size = sizeof(uint32_t); CCOM_USER_BLOCK ub; ub.code = Code_UB_Create; ub.size = size; ub.data = (uchar*) (&Code_UB_Create); CCOM_SetUserBlock(comp, &ub); }
void MyKillComp(CCOM_comp* comp) { if (Code_UB_Kill && Code_UB_Create) { int size = sizeof(uint32_t); CCOM_USER_BLOCK ub; ub.code = Code_UB_Create; if (!CCOM_GetUserBlock(comp, &ub)) { ub.code = Code_UB_Kill; ub.size = size; ub.data = (uchar*) (&Code_UB_Kill); CCOM_SetUserBlock(comp, &ub); } } CCOM_Kill(comp); }
Bool32 StringsUpdatedByBukvica() { STRING* p; int nString; // Rect16 rect1; uint32_t key = 111; uint32_t color = 23000; for (nString = 0, p = pStringsUpList; p != NULL; p = p -> pDown, nString++) { if((p->nLetters == 1)&&((&pRoots [p -> pLettersList [0]])->nHeight >64)) //if(p->nLetters == 1) { int data = 0; CCOM_USER_BLOCK uBlock; uBlock.code = CCOM_UB_CAPDROPLN; uBlock.data = (char*)&data; //*uBlock.data = nString; if((p->pUp!=NULL)||(p->pDown!=NULL)) { if(p->pUp == NULL) { *(int*)uBlock.data = nString+1; } else { if(p->pDown == NULL) { *(int*)uBlock.data = nString-1; } else { if(abs(p->pUp->yTop - p->yTop)<=abs(p->pDown->yTop - p->yTop)) { *(int*)uBlock.data = nString-1; } else { *(int*)uBlock.data = nString+1; } } } p->uFlags += CSTR_STR_CapDrop; } uBlock.size = sizeof(data); CCOM_SetUserBlock((pRoots [p -> pLettersList [0]]).pComp, &uBlock); /* rect1.left = (pRoots [p -> pLettersList [0]]).xColumn; rect1.top = (pRoots [p -> pLettersList [0]]).yRow; rect1.right = rect1.left + (pRoots [p -> pLettersList [0]]).nWidth; rect1.bottom = rect1.top + (pRoots [p -> pLettersList [0]]).nHeight; LDPUMA_DrawRect(NULL, &rect1, 0, color, 8, key); */ //pRoot = &pRoots [pString -> pLettersList [i]]; } } /* LDPUMA_Console("RBLOCK_Анализ на строки \n"); LDPUMA_WaitUserInput(NULL, NULL); LDPUMA_DeleteRects(NULL, key); */ return TRUE; }