📄 obj.c
字号:
RCPOINT point2;
}RCFORMLINE;
RCFORMLINE *pLine;
pLine = pObjInfo->pObj->ptr;
Write_RCFORMOBJATTR(&pLine->attr, pfnOutput, StartColumn);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d}, // point point1\n", pLine->point1.x, pLine->point1.y);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d}, // point point2\n", pLine->point2.x, pLine->point2.y);
}
void OutputObj_Frame(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ typedef struct _FormFrame
{
int id;
RCFORMOBJATTR attr;
RCRECT bounds;
int frameType;
}RCFORMFRAME;
RCFORMFRAME *pFrame;
pFrame = pObjInfo->pObj->ptr;
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d, // UInt16 id\n", pFrame->id);
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
Write_ObjIdDefine(pObjInfo, StartColumn, pFrame->id);
Write_RCFORMOBJATTR(&pFrame->attr, pfnOutput, StartColumn);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType rectangle\n",
pFrame->bounds.topLeft.x, pFrame->bounds.topLeft.y,
pFrame->bounds.extent.x, pFrame->bounds.extent.y
);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 frameType\n", pFrame->frameType);
}
void OutputObj_Rectangle(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ typedef struct _FormRectangle
{
RCFORMOBJATTR attr;
RCRECT bounds;
}RCFORMRECTANGLE;
RCFORMRECTANGLE *pRect;
pRect = pObjInfo->pObj->ptr;
Write_RCFORMOBJATTR(&pRect->attr, pfnOutput, StartColumn);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType rectangle\n",
pRect->bounds.topLeft.x, pRect->bounds.topLeft.y,
pRect->bounds.extent.x, pRect->bounds.extent.y
);
}
void OutputObj_Label(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCFormLabelType *pLabel;
pLabel = pObjInfo->pObj->ptr;
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d, // UInt16 id\n", PBAFIELD(pLabel, id));
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
Write_ObjIdDefine(pObjInfo, StartColumn, PBAFIELD(pLabel, id));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d}, // point pos\n", PBAFIELD(pLabel, pos.x), PBAFIELD(pLabel, pos.y));
if (vfLE32)
Write_RCFORMOBJATTR(&PBAFIELD32(pLabel, attr), pfnOutput, StartColumn);
else
Write_RCFORMOBJATTR(&PBAFIELD16(pLabel, attr), pfnOutput, StartColumn);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // FontID fontID\n", PBAFIELD(pLabel, fontID));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 reserved\n", 0);
// WriteSpace(pfnOutput, StartColumn);
Write_ObjText_Addr(pObjInfo,pfnOutput,StartColumn," // Char *text");
}
void OutputObj_Title(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCFORMTITLE *pTitle;
pTitle = pObjInfo->pObj->ptr;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType rect\n",
pTitle->rect.topLeft.x, pTitle->rect.topLeft.y,
pTitle->rect.extent.x, pTitle->rect.extent.y
);
// WriteSpace(pfnOutput, StartColumn);
Write_ObjText_Addr(pObjInfo,pfnOutput,StartColumn," // Char *text");
}
void OutputObj_Popup(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{
RCFORMPOPUP *pPopup;
char * srcIdName=pObjInfo->szIdName;
char szTempIdName[1024];
int pos;
pPopup = pObjInfo->pObj->ptr;
pos=strstr(srcIdName,"\1")-srcIdName;
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d,\n", pPopup->controlID);
memcpy(szTempIdName,srcIdName,pos);
szTempIdName[pos]='\0';
pObjInfo->szIdName=szTempIdName;
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
strcpy(szTempIdName,srcIdName+pos+1);
pObjInfo->szIdName=szTempIdName;
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
pObjInfo->szIdName=srcIdName;
// WriteSpace(pfnOutput, StartColumn);
// fprintf(pfnOutput, "%d,\n", pPopup->listID);
}
void OutputObj_GraffitiState(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCFORMGRAFFITISTATE *pGraffitiState;
pGraffitiState = pObjInfo->pObj->ptr;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d}, // point pos\n", pGraffitiState->pos.x, pGraffitiState->pos.y);
}
void OutputObj_Gadget(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCFORMGADGET *pGadget;
pGadget = pObjInfo->pObj->ptr;
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d, // UInt16 id\n", pGadget->id);
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
Write_ObjIdDefine(pObjInfo, StartColumn, pGadget->id);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{ // FormGadgetAttrType attr\n");
StartColumn += TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 usable :1\n", pGadget->attr.usable);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 extended :1\n", pGadget->attr.extended);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 visible :1\n", pGadget->attr.visible);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 reserved :13\n", 0);
StartColumn -= TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "},\n");
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType rectangle\n",
pGadget->rect.topLeft.x, pGadget->rect.topLeft.y,
pGadget->rect.extent.x, pGadget->rect.extent.y
);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "0x%X, // const void *\n", 0);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "0x%X, // FormGadgetHandlerType *handler\n", 0);
}
void OutputObj_ScrollBar(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCSCROLLBAR *pScrollBar;
pScrollBar = pObjInfo->pObj->ptr;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType bounds\n",
pScrollBar->bounds.topLeft.x, pScrollBar->bounds.topLeft.y,
pScrollBar->bounds.extent.x, pScrollBar->bounds.extent.y
);
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d,\n", pScrollBar->id);
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
Write_ObjIdDefine(pObjInfo, StartColumn, pScrollBar->id);
StartColumn += TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{ // ScrollBarAttrType attr\n", 0);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 usable :1\n", pScrollBar->attr.usable);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 visible :1\n", pScrollBar->attr.visible);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 hilighted :1\n", pScrollBar->attr.hilighted);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 shown :1\n", pScrollBar->attr.shown);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 activeRegion :4\n", pScrollBar->attr.activeRegion);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 reserved :8\n", 0);
StartColumn -= TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "},\n", 0);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 value\n", pScrollBar->value);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 minValue\n", pScrollBar->minValue);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 maxValue\n", pScrollBar->maxValue);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 pageSize\n", pScrollBar->pageSize);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 penPosInCar\n", 0);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 savePos\n", 0);
}
void OutputObj_Slider(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn)
{ RCSliderControlType *pSlider;
pSlider = pObjInfo->pObj->ptr;
//WriteSpace(pfnOutput, StartColumn);
//fprintf(pfnOutput, "%d,\n", PBAFIELD(pSlider, id));
Write_ObjIdName(pObjInfo, pfnOutput, StartColumn, " // UInt16 id");
Write_ObjIdDefine(pObjInfo, StartColumn, PBAFIELD(pSlider, id));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{%d, %d, %d, %d}, // RectangleType bounds\n",
PBAFIELD(pSlider, bounds.topLeft.x), PBAFIELD(pSlider, bounds.topLeft.y),
PBAFIELD(pSlider, bounds.extent.x), PBAFIELD(pSlider, bounds.extent.y)
);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // DmResID thumbID\n", PBAFIELD(pSlider, backgroundid));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // DmResID backgroundID\n", PBAFIELD(pSlider, thumbid));
// RCCONTROLATTR attr
if (vfLE32)
Write_RCCONTROLATTR(&PBAFIELD32(pSlider, attr), pfnOutput, StartColumn);
else
Write_RCCONTROLATTR(&PBAFIELD16(pSlider, attr), pfnOutput, StartColumn);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // ControlStyles style\n", PBAFIELD(pSlider, style));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 reserved\n", 0);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // Int16 minValue\n", PBAFIELD(pSlider, minValue));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // Int16 maxValue\n", PBAFIELD(pSlider, maxValue));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // Int16 pageSize\n", PBAFIELD(pSlider, pageSize));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // Int16 value\n", PBAFIELD(pSlider, value));
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "0x%X, // MemPtr activeSliderP\n", 0);
}
//########################################
// Private Function implement
//########################################
void Write_RCCONTROLATTR(RCCONTROLATTR *pCtrlAttr, FILE *pfnOutput, int StartColumn)
{
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{ // ControlAttrType attr\n");
StartColumn += TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 usable :1\n", pCtrlAttr->usable);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 enabled :1\n", pCtrlAttr->enabled);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 visible :1\n", pCtrlAttr->visible);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 on :1\n", pCtrlAttr->on);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 leftAnchor :1\n", pCtrlAttr->leftAnchor);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 frame :3\n", pCtrlAttr->frame);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 drawnAsSelected :1\n", pCtrlAttr->drawnAsSelected);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 graphical :1\n", pCtrlAttr->graphical);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 vertical :1\n", pCtrlAttr->vertical);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt8 reserved :5\n", 0);
StartColumn -= TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "},\n");
}
void Write_RCFORMOBJATTR(RCFORMOBJATTR *pAttr, FILE *pfnOutput, int StartColumn)
{
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "{ // FormObjAttrType attr\n", 0);
StartColumn += TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 usable :1\n", pAttr->usable);
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "%d, // UInt16 reserved :15\n", 0);
StartColumn -= TAB_SIZE;
WriteSpace(pfnOutput, StartColumn);
fprintf(pfnOutput, "},\n", 0);
}
void Write_ObjIdName(struct _ObjInfo *pObjInfo, FILE *pfnOutput, int StartColumn, char *pComment)
{
if(!pComment)
pComment = "";
WriteDefineInfo(pfnOutput,StartColumn,"%s_ID_%s_%s,%s",
gv_IDPrefix,PBAFIELD(pObjInfo->pFrm, form.szFormIdName),pObjInfo->szIdName,pComment);
}
void Write_ObjIdDefine(struct _ObjInfo *pObjInfo,int StartColumn,int id)
{
WriteDefineInfo(NULL,StartColumn,"%s_ID_%s_%s %d",
gv_IDPrefix,PBAFIELD(pObjInfo->pFrm, form.szFormIdName),pObjInfo->szIdName,id);
}
void Write_ObjText_Addr(struct _ObjInfo *pObjInfo,FILE *pfnOutput,int StartColumn,char *pComment)
{
char szComment[]="";
if(!pComment)
pComment=szComment;
WriteDefineInfo(pfnOutput,StartColumn,"(void*)%s.%s_str,%s",
szFormName,pObjInfo->szIdName,pComment);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -