示例#1
0
文件: configure.c 项目: bowhan/kent
char *configVarVal(struct column *col, char *varName)
/* Return value for configuration variable.  Return NULL if it
 * doesn't exist or if it is "" */
{
char *name = configVarName(col, varName);
return cartNonemptyString(cart, name);
}
示例#2
0
void setupColumnXyz(struct column *col, char *parameters)
/* Set up a xyz type column. */
{
    /* Read configuration variables and store in column. */
    char *varName = configVarName(col, "italics");
    col->xyzItalics = cartUsualBoolean(cart, varName, TRUE);

    col->table = cloneString(nextWord(&parameters));  // Assume have a table parameter first
    col->keyField = cloneString(nextWord(&parameters));  // Then key field
    col->valField = cloneString(nextWord(&parameters));  // Then value field
    if (col->valField == NULL)
        errAbort("Not enough fields in type for %s", col->name);
    col->exists = xyzExists;		    // Required for all columns
    col->cellVal = xyzCellVal;		    // Required for all columns

// The rest of these methods are optional.  Typically the system will do something
// sensible if they are missing.  Generally you do want to implement the filters.
    col->cellPrint = xyzCellPrint;
// col->labelPrint = xyzLabelPrint;
// col->tableColumns = xyzLabelColumns;
    col->configControls = xyzConfigControls;
    col->simpleSearch = xyzSimpleSearch;
    col->filterControls = xyzFilterControls;
    col->advFilter = xyzAdvFilter;
}
示例#3
0
static void xyzConfigControls(struct column *col)
/* Print out configuration column */
{
    hPrintf("<TD>");
    char *italicsVarName = configVarName(col, "italics");
    cgiMakeCheckBox(italicsVarName, cartUsualBoolean(cart, italicsVarName, TRUE));
    hPrintf("italics");
    hPrintf("</TD>");
}