KNOWLEDGE BASE
Log In    |    Knowledge Base    |    4D Home
Tech Tip: The 4D Open APIs - Part IV: Displaying Information about the Structure Running o
PRODUCT: 4D | VERSION: 6.7 | PLATFORM: Mac & Win
Published On: July 27, 2001
Your current browser may not allow you to download the asset. We recommend Mozilla Firefox or Google Chrome.
Log In

void DisplayStructureInfo(void)

{

int2 i,f;

FileListHandle hList=0L;

FileListPtr pList;

FileDefHandle hDef =0L;

FileDefPtr pDef;

printf("\nPress the Enter key to display information on the structure.\n");

getchar();

Check(_4D_CountFiles(hConnect, &i),"_4D_CountFiles\0");

printf("CountFiles: %d\n", i);

Check(_4D_GetFileList(hConnect, &hList),"_4D_GetFileList\0");

pList=(FileListPtr)Lock4DHandle((Handle4D)hList);

for ( f=1; f<=pList->nbFiles; f++) {

Check(_4D_GetFileDefinition(hConnect, f, &hDef), " _4D_GetFileDefinition");

pDef=(FileDefPtr)Lock4DHandle((Handle4D)hDef);

printf("GetFileList : %s\n", PversCstring(pList->fileNames[f-1]));

printf("GetFileDefinition_NB_Fields : %d\n", pDef->NB_Fields);

printf("GetFileDefinition_Invisible : %d\n", pDef->Invisible);

printf("GetFileDefinition_FileNum : %d\n", pDef->FileNum);

printf("GetFileDefinition_Frame : %d/%d/%d/%d\n", pDef->Frame.left, pDef->Frame.top, pDef->Frame.right, pDef->Frame.bottom);

printf("GetFileDefinition_TrigOnSavingNew : %d\n", pDef->TrigOnSavingNew);

printf("GetFileDefinition_TrigOnSavingExisting : %d\n", pDef->TrigOnSavingExisting);

printf("GetFileDefinition_TrigOnDeleting : %d\n", pDef->TrigOnDeleting);

printf("GetFileDefinition_TrigOnLoading : %d\n", pDef->TrigOnLoading):

for ( i = 0 ; i < pDef->NB_Fields ; i ++ ) {

printf("GetFileDefinition_Fields[%d]_Name : %s\n", i, PversCstring(pDef->Fields[i].Name));

printf("GetFileDefinition_Fields[%d]_Typ : %d\n", i, pDef->Fields[i].Typ);

printf("GetFileDefinition_Fields[%d]_AlphaLen : %d\n", i, pDef->Fields[i].AlphaLen);

printf("GetFileDefinition_Fields[%d]_u_SimpleField_RelatedFile : %d\n", i, pDef->Fields[i].u.SimpleField.RelatedFile);

printf("GetFileDefinition_Fields[%d]_u_SimpleField_RelatedField : %d\n", i, pDef->Fields[i].u.SimpleField.RelatedField);

printf("GetFileDefinition_Fields[%d]_u_SimpleField_Att : %X\n", i, pDef->Fields[i].u.SimpleField.Att);

printf("GetFileDefinition_Fields[%d]_u_SimpleField_DiscriminantField : %d\n", i, pDef->Fields[i].u.SimpleField.DiscriminantField);

printf("GetFileDefinition_Fields[%d]_u_PictField_PicAtt : %X\n", i, pDef->Fields[i].u.PictField.PicAtt);

printf("GetFileDefinition_Fields[%d]_u_PictField_CompressDriver : %X\n", i, pDef->Fields[i].u.PictField.CompressDriver);

}

Unlock4DHandle((Handle4D)hDef);

Free4DHandle((Handle4D)hDef);

printf("\n");

}

Unlock4DHandle((Handle4D)hList);

Free4DHandle((Handle4D)hList);

}