Get me the next item in the table.
This function finds the first (or next, depending on the flag) instance of a symbol type in the drawing table.
The argument tablename represents the name of symbol type to search for. Valid tablenames are:
Table Name | Meaning |
---|---|
"appid" | Application identification. |
"block" | Block names. |
"dimstyle | "Dimension style names. |
"layer" | Layer names. |
"ltype" | Linetype names. |
"style" | Text style names. |
"view" | View names. |
"ucs" | UCS names. |
"vport" | Viewport names. |
The sds_tblnext function first returns the first specified symbol in the table. When the symbol is found, it is returned as a list of dotted pairs. Used repeatedly, the next symbol is returned in order. When no more symbols exist in the list, nil is returned.
When the flag argument is supplied (typically 1), the search begins from the top (beginning) of the table.
This function sets a value in system variable ERRNO describing the error.
Example
char *tablename[]={"APPID", "BLOCK", "DIMSTYLE", "STYLE", "LAYER",
"LTYPE", "UCS", "VIEW", "VPORT"};
char lookfor[512];
int types;
struct sds_resbuf *nextbuf = NULL;
for (types=0; types<sizeof(tablename)/sizeof(tablename[0]); types++) {
for (nextbuf=sds_tblnext(tablename[types],1); nextbuf!=NULL;
nextbuf=sds_tblnext(tablename[types],0)) {
ob_listdxf(nextbuf);
sds_relrb(nextbuf); // release the buffer
}
sds_printf("\nTested %s.",tablename[types]);
}
nextbuf=NULL;
sds_printf("\nDone testing sds_tblnext. ");
Tell me about...
Programming Overview of SDS™ (Solutions Development System™)