Exemplo n.º 1
0
/*
 * window_write()
 *
 * dopisuje liniê do bufora danego okna.
 */
int window_write(int id, const /*locale*/ char *line)
{
	window_t *w = window_exist(id);
	readline_window_t *r = readline_window(w);
	int i = 1;

	if (!line || !w)
		return -1;

	/* je¶li ca³y bufor zajêty, zwolnij pierwsz± liniê i przesuñ do góry */
	if (r->line[MAX_LINES_PER_SCREEN - 1]) {
		xfree(r->line[0]);
		memmove(&(r->line[0]), &(r->line[1]), sizeof(char *) * (MAX_LINES_PER_SCREEN - 1));
		r->line[MAX_LINES_PER_SCREEN - 1] = xstrdup(line);
	} else {
		/* znajd¼ pierwsz± woln± liniê i siê wpisz. */
		for (i = 0; i < MAX_LINES_PER_SCREEN; i++)
			if (!r->line[i]) {
				r->line[i] = xstrdup(line);
				break;
			}
	}

	if (w != window_current) {
		set_prompt(current_prompt());
		rl_redisplay();
	}
	
	return 0;
}
Exemplo n.º 2
0
static VALUE ruby_print_window(int argc, VALUE *argv, VALUE self) {
#if 0
	window_t *w = NULL;
	char *args[9] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };
	int i;

	if (type(argv[0]) == T_FIXNUM) {	/* id of window. */
		if (argc < 1 || argv > 10) {
			rb_raise(rb_eArgError, "print_window(): accepts 1-10 params, but %d given", argc);
			return Qnil;
		}

		if (!(w = window_exist(FIX2INT(argv[0])))) {
			rb_raise(rb_eIndexError, "print_window(): window_exist(%d) failed\n", FIX2INT(argv[0]));
			return Qnil;
		}

	} else if (TYPE(argv[0]) == T_STRING) {	/* target */

		if (TYPE(argv[1]) == T_STRING) 


	}

	if (TYPE(obj) == T_STRING)	query_name = RSTRING(argv[0])->ptr;
	else if (TYPE(obj) == T_FIXNUM); /* XXX ? */

	Check_Type(argv[0], T_STRING);

	for (i = 1; i < argc; i++) {
		Check_Type(argv[i], T_STRING);
		args[i-1] = RSTRING(argv[i])->ptr;
	}

	tmp = str = xstrdup(RSTRING(argv[0])->ptr);

	while ((line = split_line(&str))) {
		char *tmp = format_string(line);
		window_print(window_exist(dest), fstring_new(tmp));
		xfree(tmp);
	}
	xfree(tmp);
#endif
	return Qnil;
}
Exemplo n.º 3
0
PyObject *python_build_window_id(int id)
{
	window_t *w;

	if (!(w = window_exist(id))) {
		PyErr_SetString(PyExc_RuntimeError, _("Can't find window with given id"));
		return NULL;
	}

	return (PyObject *)python_build_window_w(w);
}