예제 #1
0
파일: dialog.c 프로젝트: Jakz/ohboy
static int dialog_drawtitle(){
	int color = dfg;
	int pad = dpad;
	gui_setclip(0,0,gui.w,dialog->title_h);
	gui_cls();
	gui_drawtext(dfont,dialog->title,dialog->title_x,dfont->height+TITLE_OFFSET,color,0);
	gui_drawrect(0,dfont->height+TITLE_LINE_OFFSET,gui.w,1,color,0);
	if(dialog->field_count > dialog->visible_count){
		gui_drawpixmap(dscrollu, pad/4, dfont->height-dscrollu->height+UPARROW_OFFSET, color, 0);
	}
}
예제 #2
0
파일: dialog.c 프로젝트: Jakz/ohboy
static int dialog_drawstatus(){

	int pad = dpad;
	int color = dfg;

	gui_setclip(0,gui.h-dialog->status_h,gui.w,dialog->status_h);
	gui_cls();

	gui_drawtext(dfont,dialog->status,dialog->status_x,gui.h+dfont->descent+STATUS_OFFSET,color,0);
	gui_drawrect(0,gui.h-dfont->height+STATUS_LINE_OFFSET,gui.w,1,color,0);

	if(dialog->field_count > dialog->visible_count){
		gui_drawpixmap(dscrolld,pad/4,gui.h+dfont->descent-dscrolld->height+DOWNARROW_OFFSET,color,0);
	}
}
예제 #3
0
파일: main.cpp 프로젝트: mribelotta/oneshot
void QVisualBinding::Draw()
{
      if ( dflags&bDrawNodes ) {
	QNode *n;
	for (n=doc->nodes; n; n=n->next)
		n->draw();
      }
      if ( dflags&bDrawComps ) {
	QComponent *c;
	for (c=doc->comps; c; c=c->next) {
	  c->draw();
	  if (c==selectc) // Dibujar seleccion
	    gui_drawrect( c->r, EGA_RED );
	}
      }
}
예제 #4
0
파일: dialog.c 프로젝트: Jakz/ohboy
static int dialog_drawfield(int i){
	int x, y, w, h, pad, pad2, hpad, qpad, invert=0;
	int color;

	field_t *field = &(dialog->fields[i+dialog->pos]);

	y = i*dialog->field_h+dialog->title_h;

	gui_setclip(0, y+HIGHLIGHT_RECT_OFFSET, gui.w, dialog->field_h+HIGHLIGHT_RECT_OFFSET);
	gui_cls();

	pad = dpad;
	pad2 = pad << 1;
	hpad = pad >> 1;
	qpad = pad >> 2;

	color = dfg;


	if(i==dialog->selected-dialog->pos){
		w = font_textwidth(dfont,field->prompt)+pad2;
		if(dialog->prompt_w < w) w = dialog->prompt_w;
		gui_drawrect(dialog->prompt_x+hpad, y+HIGHLIGHT_RECT_OFFSET, w-pad, dialog->field_h, color, 1);
		if(field->type == FIELD_OPTION){
			gui_drawpixmap(doptl,dialog->body_x,y+dfont->ascent-doptl->height+LRARROW_OFFSET,color,0);
			w = font_textwidth(dfont,field->body);
			if(field->body_w < w) w = field->body_w;
			gui_drawpixmap(doptr,dialog->body_x+w+pad2-doptr->width,y+dfont->ascent-doptr->height+LRARROW_OFFSET,color,0);
		}
		invert = 1;
	}

	gui_setclip(dialog->prompt_x+pad, y, dialog->prompt_w-pad2, dialog->field_h);
	gui_drawtext(dfont,field->prompt,dialog->prompt_x+pad,y+dfont->ascent+TEXT_OFFSET,color,invert);
	gui_setclip(dialog->body_x+pad, y, dialog->body_w-pad2, dialog->field_h);
	if (field->body)
		gui_drawtext(dfont,field->body,dialog->body_x+pad,y+dfont->ascent+TEXT_OFFSET,color,0);
}
예제 #5
0
파일: main.cpp 프로젝트: mribelotta/oneshot
void draw_icon  (TPoint p) {
  TRect r (p.x, p.y, p.x+size.x, p.y+size.y);
  r.moverel (-delta.x, -delta.y);
  gui_drawrect (r, EGA_WHITE);
}