예제 #1
0
void CComputer::draw(CClientDC &dc)
{
	if (visible){
		if ((isAttacker)||(underAttack)){
			originalPen = dc.SelectObject(&redPen);
			dc.SetTextColor(red);
		}else{
			originalPen = dc.SelectObject(&bluePen);
			dc.SetTextColor(black);
		}
	}else{
		originalPen = dc.SelectObject(&whitePen);
		dc.SetTextColor(white);
	}


	originalFont = dc.SelectObject(&captionFont);
	dc.SetBkMode(TRANSPARENT);
	
	dc.Rectangle(x1,y1,x2,y2);
	if (textPosition == 0){//oben
		dc.TextOut(x1-4*borderWidth,y1-(borderWidth+captionTextSize),name);
	}else{//rechts unten
		dc.TextOut(x2+3*borderWidth,y2+borderWidth-captionTextSize,name);
	}
	
	drawDataText(dc);

	dc.SelectObject(&originalFont);
	dc.SelectObject(&originalPen);
}
예제 #2
0
void CComputer::drawDataText(CClientDC &dc)
{
	dc.SelectObject(&dataFont);
	int x,y;
	x=1;//nicht auf 0 setzen, sonst Crash
	y=1;//nicht auf 0 setzen, sonst Crash
	for(int i=0; i<data.getNumberOfLines(); i++){
		if (dataPosition == 1){ //rechts
			x=x2+2*borderWidth;
			y=y1+i*dataTextSize;		
		}else if (dataPosition == 2){ //unten
			x=x1-borderWidth;
			y=y2+2*borderWidth+i*dataTextSize;
		}
		dc.TextOut(x,y,data.getLine(i,isAttacker));
	}
}