void message(char *fmt, ...) { va_list vl; static char buffer[1000]; /* Evaluate the format string. */ va_start(vl, fmt); vsprintf_s(buffer, sizeof(buffer), fmt, vl); va_end(vl); /* Clear the message buffer if necessary. */ if (mbuffer_full) more(); /* Position the cursor. */ cursor(0, 0); /* Reset the color. */ set_color(C_LIGHT_GRAY); /* Display the message. */ prtstr("%s", buffer); /* Update the screen. */ update(); /* Note the new message in the buffer. */ mbuffer_full = TRUE; mbuffer_x = strlen(buffer) + 1; }
void more(void) { cursor(mbuffer_x, 0); set_color(C_WHITE); prtstr("(more)"); while (getkey() != ' '); clear_messages(); }
void text_buffer_set_text(char *setting) { char *str = concat(this, "_str"); char *widget = wrptype("GTK_TEXT_BUFFER", this); prtstr(5, "char *", str, " = ", setting, ";\n"); putfun("gtk_text_buffer_set_text", 3, widget, str, "-1"); free(str); free(setting); }
void box_query_child_packing(char *widget, char *child) { if(getsymval("box") == NULL) { syminst(TYPE_STRING, "box", "box"); prtstr(1, "gboolean expand;\n"); prtstr(1, "gboolean fill;\n"); prtstr(1, "guint padding;\n"); prtstr(1, "GtkPackType pack_type;\n"); } putfun("gtk_box_query_child_packing" , 6 , widget , child , "&expand" , "&fill" , "&padding" , "&pack_type"); }
/* write系统调用 */ int syscall_write(char *buf, int len, int undefined, Pcb *proc_tmp) { char *p = buf; prtstr(&tty[proc_tmp->tty_num],buf,len); /*int i = 0; while(i < len) { print_dest_char(&tty[proc_ready->tty_num],*p++); i++; } */ return 0; }
void list_store_new(char *widget) { int n = 0; char *column, *columns, *tmp, *n_columns; symrec *sym; if (getsymval("iter") == NULL) { syminst(TYPE_ITER, "iter", "&iter"); prtstr(2, "GtkTreeIter ", "iter;\n"); } if ((sym = get_symbol_by_type(TYPE_COLUMN)) != NULL) { column = strdup(sym->value); delete_symbol(sym); columns = concat("", column); free(column); n++; while ((sym = get_symbol_by_type(TYPE_COLUMN)) != NULL) { column = strdup(sym->value); delete_symbol(sym); tmp = concatv(3, columns, ", ", column); free(column); free(columns); columns = tmp; n++; } } else { columns = ""; } n_columns = itoa(n); this = syminst(TYPE_LIST_STORE, widget, widget); putdef("GtkListStore *" , widget , "gtk_list_store_new" , 2 , n_columns , columns); free(n_columns); }