Exemple #1
0
/**
 * Callback function to populate rows of the show variable
 * command
 *
 * @param data	The context point
 * @return	The next row or NULL if end of rows
 */
static RESULT_ROW *
status_row(RESULTSET *result, void *data)
{
VARCONTEXT	*context = (VARCONTEXT *)data;
RESULT_ROW	*row;
char		buf[80];

	if (status[context->index].name)
	{
		if (context->like &&
			 maxinfo_pattern_match(context->like,
					status[context->index].name))
		{
			context->index++;
			return status_row(result, data);
		}
		row = resultset_make_row(result);
		resultset_row_set(row, 0, status[context->index].name);
		switch (status[context->index].type)
		{
		case VT_STRING:
			resultset_row_set(row, 1,
				(char *)(*status[context->index].func)());
			break;
		case VT_INT:
			snprintf(buf, 80, "%ld",
				(long)(*status[context->index].func)());
			resultset_row_set(row, 1, buf);
			break;
		}
		context->index++;
		return row;
	}
	return NULL;
}
Exemple #2
0
void status_redraw()
{
struct view_rec *v;
struct mark_rec *m;
struct sheet *s;
//v= (struct view_rec *)Mem::vmem_trans (active_view);
//s= (struct sheet *)Mem::vmem_trans (active_sheet);

v = my_active_view;                      // mod 8-27-93
s = my_active_sheet;                     // mod 8-25-93
statw.clearwin(YELLOW, _RED,' ');
statw.put(0,62, "R       C");
status_name();
m= get_mark (v->cursor);
status_block (v->block_active==view_rec::bk_on ? v->block_mode : -1);
DBG_STATUS(dout<<"status redraw row = "<<(m->row)<<endl);
DBG_STATUS(dout<<"status redraw col = "<<(m->col)<<endl);
status_row (m->row);
status_col (m->col);
status_delta (s->changed);
status_insertmode (v->flags&1);
status_indentmode (v->flags&2);
status_numlockmode ();
                                                        /* other indicators */
statw.put(0, 43, "ESC=menus F1=Help");
                                                        /* update color */
statw.highlight(0,0,settings.colors[STATUS_COLORS][NORMAL_COLOR],statw.get_width());
//statw.show();
}