Changeset 629 in dev for trunk/ab5.0/abdev/abdev/DrawWindow.cpp
- Timestamp:
- Jun 2, 2008, 11:50:24 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/abdev/DrawWindow.cpp
r625 r629 4 4 5 5 void DrawLineInClient(int WndNum,long StartX,long StartY,long EndX,long EndY){ 6 MoveToEx(MdiInfo[WndNum] .MdiRadInfo->hMemDC,7 StartX+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,8 StartY+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,6 MoveToEx(MdiInfo[WndNum]->MdiRadInfo->hMemDC, 7 StartX+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 8 StartY+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 9 9 NULL); 10 LineTo(MdiInfo[WndNum] .MdiRadInfo->hMemDC,11 EndX+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,12 EndY+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y);10 LineTo(MdiInfo[WndNum]->MdiRadInfo->hMemDC, 11 EndX+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 12 EndY+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y); 13 13 } 14 14 void DrawRectangleInClient(int WndNum,long left,long top,long right,long bottom,COLORREF RGB_Pen,COLORREF RGB_Brush,BOOL bBrushing){ … … 19 19 if(bBrushing) hBrush=CreateSolidBrush(RGB_Brush); 20 20 else hBrush=(HBRUSH)GetStockObject(NULL_BRUSH); 21 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);22 hOldBrush=(HBRUSH)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hBrush);23 24 Rectangle(MdiInfo[WndNum] .MdiRadInfo->hMemDC,25 left+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,26 top+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,27 right+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,28 bottom+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y);29 30 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);31 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldBrush);21 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 22 hOldBrush=(HBRUSH)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hBrush); 23 24 Rectangle(MdiInfo[WndNum]->MdiRadInfo->hMemDC, 25 left+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 26 top+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 27 right+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 28 bottom+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y); 29 30 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 31 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldBrush); 32 32 DeleteObject(hPen); 33 33 if(bBrushing) DeleteObject(hBrush); … … 38 38 //光源方向の縁 39 39 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 40 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);40 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 41 41 DrawLineInClient(WndNum, 42 42 pPos->x, pPos->y, … … 45 45 pPos->x, pPos->y, 46 46 pPos->x, pPos->y+pSize->cy-1); 47 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);47 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 48 48 DeleteObject(hPen); 49 49 50 50 //影側の縁 51 51 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DDKSHADOW)); 52 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);52 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 53 53 DrawLineInClient(WndNum, 54 54 pPos->x, pPos->y+pSize->cy-1, … … 57 57 pPos->x+pSize->cx-1, pPos->y, 58 58 pPos->x+pSize->cx-1, pPos->y+pSize->cy-1); 59 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);59 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 60 60 DeleteObject(hPen); 61 61 62 62 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DSHADOW)); 63 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);63 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 64 64 DrawLineInClient(WndNum, 65 65 pPos->x+1, pPos->y+pSize->cy-2, … … 68 68 pPos->x+pSize->cx-2, pPos->y+1, 69 69 pPos->x+pSize->cx-2, pPos->y+pSize->cy-2); 70 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);70 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 71 71 DeleteObject(hPen); 72 72 … … 90 90 //モーダル フレーム境界線 91 91 92 rect.left=pPos->x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;93 rect.top=pPos->y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;94 rect.right=pPos->x+pSize->cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;95 rect.bottom=pPos->y+pSize->cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;96 DrawEdge(MdiInfo[WndNum] .MdiRadInfo->hMemDC,&rect,EDGE_RAISED,BF_RECT);92 rect.left=pPos->x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 93 rect.top=pPos->y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 94 rect.right=pPos->x+pSize->cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 95 rect.bottom=pPos->y+pSize->cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 96 DrawEdge(MdiInfo[WndNum]->MdiRadInfo->hMemDC,&rect,EDGE_RAISED,BF_RECT); 97 97 pPos->x+=2; 98 98 pPos->y+=2; … … 117 117 //影側の色 118 118 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DSHADOW)); 119 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);119 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 120 120 DrawLineInClient(WndNum, 121 121 pPos->x, … … 128 128 pPos->x+pSize->cx-1, 129 129 pPos->y); 130 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);130 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 131 131 DeleteObject(hPen); 132 132 133 133 //光源方向の縁 134 134 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 135 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);135 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 136 136 DrawLineInClient(WndNum, 137 137 pPos->x, … … 144 144 pPos->x+pSize->cx-1, 145 145 pPos->y+pSize->cy); 146 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);146 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 147 147 DeleteObject(hPen); 148 148 … … 156 156 //クライアント境界線 157 157 158 rect.left=pPos->x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;159 rect.top=pPos->y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;160 rect.right=pPos->x+pSize->cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;161 rect.bottom=pPos->y+pSize->cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;162 DrawEdge(MdiInfo[WndNum] .MdiRadInfo->hMemDC,&rect,EDGE_SUNKEN,BF_RECT);158 rect.left=pPos->x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 159 rect.top=pPos->y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 160 rect.right=pPos->x+pSize->cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 161 rect.bottom=pPos->y+pSize->cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 162 DrawEdge(MdiInfo[WndNum]->MdiRadInfo->hMemDC,&rect,EDGE_SUNKEN,BF_RECT); 163 163 pPos->x+=2; 164 164 pPos->y+=2; … … 198 198 if(style&WS_DISABLED){ 199 199 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 200 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);200 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 201 201 pos.x++; 202 202 pos.y++; … … 205 205 DrawLineInClient(WndNum,i+pos.x+2,i2,i+pos.x+2,i2+(i*2)+1); 206 206 } 207 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);207 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 208 208 DeleteObject(hPen); 209 209 rgb=GetSysColor(COLOR_GRAYTEXT); … … 213 213 else rgb=GetSysColor(COLOR_BTNTEXT); 214 214 hPen=CreatePen(PS_SOLID,0,rgb); 215 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);215 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 216 216 i2=pos.y+(size.cy/2); 217 217 for(i=0;i<4;i++,i2--){ 218 218 DrawLineInClient(WndNum,i+pos.x+2,i2,i+pos.x+2,i2+(i*2)+1); 219 219 } 220 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);220 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 221 221 DeleteObject(hPen); 222 222 … … 244 244 if(style&WS_DISABLED){ 245 245 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 246 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);246 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 247 247 pos.x++; 248 248 pos.y++; … … 251 251 DrawLineInClient(WndNum,i+pos.x+3,i2,i+pos.x+3,i2+((3-i)*2)+1); 252 252 } 253 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);253 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 254 254 DeleteObject(hPen); 255 255 rgb=GetSysColor(COLOR_GRAYTEXT); … … 259 259 else rgb=GetSysColor(COLOR_BTNTEXT); 260 260 hPen=CreatePen(PS_SOLID,0,rgb); 261 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);261 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 262 262 i2=pos.y+(size.cy/2); 263 263 for(i=3;i>=0;i--,i2--){ 264 264 DrawLineInClient(WndNum,i+pos.x+3,i2,i+pos.x+3,i2+((3-i)*2)+1); 265 265 } 266 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);266 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 267 267 DeleteObject(hPen); 268 268 … … 331 331 if(style&WS_DISABLED){ 332 332 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 333 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);333 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 334 334 pos.x++; 335 335 pos.y++; … … 338 338 DrawLineInClient(WndNum,i2,i+pos.y+2,i2+(i*2)+1,i+pos.y+2); 339 339 } 340 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);340 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 341 341 DeleteObject(hPen); 342 342 rgb=GetSysColor(COLOR_GRAYTEXT); … … 346 346 else rgb=GetSysColor(COLOR_BTNTEXT); 347 347 hPen=CreatePen(PS_SOLID,0,rgb); 348 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);348 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 349 349 i2=pos.x+(size.cx/2)-1; 350 350 for(i=0;i<4;i++,i2--){ 351 351 DrawLineInClient(WndNum,i2,i+pos.y+2,i2+(i*2)+1,i+pos.y+2); 352 352 } 353 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);353 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 354 354 DeleteObject(hPen); 355 355 … … 378 378 if(style&WS_DISABLED){ 379 379 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 380 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);380 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 381 381 pos.x++; 382 382 pos.y++; … … 385 385 DrawLineInClient(WndNum,i2,i+pos.y+3,i2+((3-i)*2)+1,i+pos.y+3); 386 386 } 387 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);387 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 388 388 DeleteObject(hPen); 389 389 rgb=GetSysColor(COLOR_GRAYTEXT); … … 393 393 else rgb=GetSysColor(COLOR_BTNTEXT); 394 394 hPen=CreatePen(PS_SOLID,0,rgb); 395 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);395 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 396 396 i2=pos.x+(size.cx/2); 397 397 for(i=3;i>=0;i--,i2--){ 398 398 DrawLineInClient(WndNum,i2,i+pos.y+3,i2+((3-i)*2)+1,i+pos.y+3); 399 399 } 400 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);400 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 401 401 DeleteObject(hPen); 402 402 … … 454 454 BitmapInfo.bmiHeader.biBitCount=24; 455 455 456 hBitmap=CreateDIBSection(MdiInfo[WndNum] .MdiRadInfo->hMemDC,&BitmapInfo,DIB_RGB_COLORS,(void **)&pByte,0,0);456 hBitmap=CreateDIBSection(MdiInfo[WndNum]->MdiRadInfo->hMemDC,&BitmapInfo,DIB_RGB_COLORS,(void **)&pByte,0,0); 457 457 i=BitmapInfo.bmiHeader.biWidth*3; 458 458 if(i%sizeof(LONG)!=0) i+=sizeof(LONG)-(i%sizeof(LONG)); … … 469 469 } 470 470 } 471 SetDIBitsToDevice(MdiInfo[WndNum] .MdiRadInfo->hMemDC,472 pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,473 pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,471 SetDIBitsToDevice(MdiInfo[WndNum]->MdiRadInfo->hMemDC, 472 pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 473 pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 474 474 BitmapInfo.bmiHeader.biWidth, BitmapInfo.bmiHeader.biHeight, 475 475 0,0, … … 505 505 if(style&WS_DISABLED){ 506 506 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 507 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);507 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 508 508 pos.x++; 509 509 pos.y++; … … 512 512 DrawLineInClient(WndNum,i+pos.x+2,i2,i+pos.x+2,i2+(i*2)+1); 513 513 } 514 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);514 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 515 515 DeleteObject(hPen); 516 516 rgb=GetSysColor(COLOR_GRAYTEXT); … … 520 520 else rgb=GetSysColor(COLOR_BTNTEXT); 521 521 hPen=CreatePen(PS_SOLID,0,rgb); 522 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);522 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 523 523 i2=pos.y+(size.cy/2); 524 524 for(i=0;i<4;i++,i2--){ 525 525 DrawLineInClient(WndNum,i+pos.x+2,i2,i+pos.x+2,i2+(i*2)+1); 526 526 } 527 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);527 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 528 528 DeleteObject(hPen); 529 529 … … 543 543 if(style&WS_DISABLED){ 544 544 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 545 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);545 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 546 546 pos.x++; 547 547 pos.y++; … … 550 550 DrawLineInClient(WndNum,i+pos.x+3,i2,i+pos.x+3,i2+((3-i)*2)+1); 551 551 } 552 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);552 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 553 553 DeleteObject(hPen); 554 554 rgb=GetSysColor(COLOR_GRAYTEXT); … … 558 558 else rgb=GetSysColor(COLOR_BTNTEXT); 559 559 hPen=CreatePen(PS_SOLID,0,rgb); 560 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);560 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 561 561 i2=pos.y+(size.cy/2); 562 562 for(i=3;i>=0;i--,i2--){ 563 563 DrawLineInClient(WndNum,i+pos.x+3,i2,i+pos.x+3,i2+((3-i)*2)+1); 564 564 } 565 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);565 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 566 566 DeleteObject(hPen); 567 567 } … … 584 584 if(style&WS_DISABLED){ 585 585 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 586 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);586 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 587 587 pos.x++; 588 588 pos.y++; … … 591 591 DrawLineInClient(WndNum,i2,i+pos.y+2,i2+(i*2)+1,i+pos.y+2); 592 592 } 593 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);593 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 594 594 DeleteObject(hPen); 595 595 rgb=GetSysColor(COLOR_GRAYTEXT); … … 599 599 else rgb=GetSysColor(COLOR_BTNTEXT); 600 600 hPen=CreatePen(PS_SOLID,0,rgb); 601 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);601 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 602 602 i2=pos.x+(size.cx/2)-1; 603 603 for(i=0;i<4;i++,i2--){ 604 604 DrawLineInClient(WndNum,i2,i+pos.y+2,i2+(i*2)+1,i+pos.y+2); 605 605 } 606 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);606 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 607 607 DeleteObject(hPen); 608 608 … … 623 623 if(style&WS_DISABLED){ 624 624 hPen=CreatePen(PS_SOLID,0,GetSysColor(COLOR_3DHIGHLIGHT)); 625 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);625 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 626 626 pos.x++; 627 627 pos.y++; … … 630 630 DrawLineInClient(WndNum,i2,i+pos.y+3,i2+((3-i)*2)+1,i+pos.y+3); 631 631 } 632 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);632 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 633 633 DeleteObject(hPen); 634 634 rgb=GetSysColor(COLOR_GRAYTEXT); … … 638 638 else rgb=GetSysColor(COLOR_BTNTEXT); 639 639 hPen=CreatePen(PS_SOLID,0,rgb); 640 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hPen);640 hOldPen=(HPEN)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hPen); 641 641 i2=pos.x+(size.cx/2); 642 642 for(i=3;i>=0;i--,i2--){ 643 643 DrawLineInClient(WndNum,i2,i+pos.y+3,i2+((3-i)*2)+1,i+pos.y+3); 644 644 } 645 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldPen);645 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldPen); 646 646 DeleteObject(hPen); 647 647 } … … 748 748 749 749 //Draw...InClient関数のため 750 MdiInfo[WndNum] .MdiRadInfo->ClientPos.x=0;751 MdiInfo[WndNum] .MdiRadInfo->ClientPos.y=0;750 MdiInfo[WndNum]->MdiRadInfo->ClientPos.x=0; 751 MdiInfo[WndNum]->MdiRadInfo->ClientPos.y=0; 752 752 753 753 if(pWindowInfo->GetStyle()&(WS_CAPTION&(~WS_BORDER))){ … … 940 940 941 941 //クライアント左上ポジションを設定 942 MdiInfo[WndNum] .MdiRadInfo->ClientPos.x=InsideRect.left;943 MdiInfo[WndNum] .MdiRadInfo->ClientPos.y=InsideRect.top;942 MdiInfo[WndNum]->MdiRadInfo->ClientPos.x=InsideRect.left; 943 MdiInfo[WndNum]->MdiRadInfo->ClientPos.y=InsideRect.top; 944 944 945 945 //ExStyleによる縁を描画 … … 954 954 955 955 //クライアント領域のサイズを設定 956 MdiInfo[WndNum] .MdiRadInfo->ClientSize=size;956 MdiInfo[WndNum]->MdiRadInfo->ClientSize=size; 957 957 958 958 … … 1043 1043 //キャプション テキスト 1044 1044 1045 rect.left=pos.x+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1046 rect.top=pos.y+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1047 rect.right=pos.x+size.cx-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1048 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1045 rect.left=pos.x+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1046 rect.top=pos.y+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1047 rect.right=pos.x+size.cx-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1048 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1049 1049 1050 1050 if(pChildInfo->GetStyle()&BS_MULTILINE) i4=0; … … 1116 1116 if(!(pChildInfo->GetStyle()&(BS_ICON|BS_BITMAP))){ 1117 1117 //キャプション テキスト 1118 rect.left=pos.x+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1119 rect.top=pos.y+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1120 rect.right=pos.x+size.cx-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1121 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1118 rect.left=pos.x+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1119 rect.top=pos.y+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1120 rect.right=pos.x+size.cx-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1121 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1122 1122 1123 1123 if(pChildInfo->GetStyle()&BS_MULTILINE) i4=0; … … 1236 1236 1237 1237 //キャプション テキスト 1238 rect.left=pos.x+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1239 rect.top=pos.y+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1240 rect.right=pos.x+size.cx-1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1241 rect.bottom=pos.y+size.cy-1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1238 rect.left=pos.x+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1239 rect.top=pos.y+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1240 rect.right=pos.x+size.cx-1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1241 rect.bottom=pos.y+size.cy-1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1242 1242 1243 1243 if(pChildInfo->GetStyle()&ES_MULTILINE) i4=0; … … 1268 1268 1269 1269 //枠を描画 1270 rect.left=pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1271 rect.top=pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y+(size2.cy/2);1272 rect.right=pos.x+size.cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1273 rect.bottom=pos.y+size.cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1270 rect.left=pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1271 rect.top=pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y+(size2.cy/2); 1272 rect.right=pos.x+size.cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1273 rect.bottom=pos.y+size.cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1274 1274 DrawEdge(hdc,&rect,EDGE_ETCHED,BF_RECT); 1275 1275 … … 1295 1295 1296 1296 if(!((pChildInfo->GetStyle()&BS_ICON)||(pChildInfo->GetStyle()&BS_BITMAP))){ 1297 rect.left+=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1298 rect.top+=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1299 rect.right+=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1300 rect.bottom+=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1297 rect.left+=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1298 rect.top+=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1299 rect.right+=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1300 rect.bottom+=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1301 1301 rect.left+=2; 1302 1302 rect.right-=2; … … 1338 1338 DrawRectangleInClient(WndNum,pos.x,pos.y,pos.x+size.cx,pos.y+size.cy,RGB(255,255,255),0,0); 1339 1339 else if((pChildInfo->GetStyle()&0x0000001F)==SS_ETCHEDFRAME){ 1340 rect.left=pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1341 rect.top=pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1342 rect.right=pos.x+size.cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1343 rect.bottom=pos.y+size.cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1340 rect.left=pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1341 rect.top=pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1342 rect.right=pos.x+size.cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1343 rect.bottom=pos.y+size.cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1344 1344 DrawEdge(hdc,&rect,EDGE_ETCHED,BF_RECT); 1345 1345 } … … 1385 1385 1386 1386 DrawIcon(hdc, 1387 pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,1388 pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,1387 pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 1388 pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 1389 1389 (HICON)hImage); 1390 1390 DestroyIcon((HICON)hImage); … … 1394 1394 DrawRectangleInClient(WndNum,pos.x,pos.y,pos.x+size.cx,pos.y+size.cy,RGB(0,0,0),0,0); 1395 1395 hOldFont=(HFONT)SelectObject(hdc,hFont); 1396 rect.left=pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1397 rect.top=pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1398 rect.right=pos.x+size.cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1399 rect.bottom=pos.y+size.cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1396 rect.left=pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1397 rect.top=pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1398 rect.right=pos.x+size.cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1399 rect.bottom=pos.y+size.cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1400 1400 SetTextColor(hdc,GetSysColor(COLOR_WINDOWTEXT)); 1401 1401 DrawText(hdc,"icon...",-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER); … … 1442 1442 SelectObject(memdc,hImage); 1443 1443 BitBlt(hdc, 1444 pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,1445 pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,1444 pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 1445 pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 1446 1446 size.cx, size.cy, 1447 1447 memdc, 0,0, … … 1454 1454 DrawRectangleInClient(WndNum,pos.x,pos.y,pos.x+size.cx,pos.y+size.cy,RGB(0,0,0),0,0); 1455 1455 hOldFont=(HFONT)SelectObject(hdc,hFont); 1456 rect.left=pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1457 rect.top=pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1458 rect.right=pos.x+size.cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1459 rect.bottom=pos.y+size.cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1456 rect.left=pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1457 rect.top=pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1458 rect.right=pos.x+size.cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1459 rect.bottom=pos.y+size.cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1460 1460 SetTextColor(hdc,GetSysColor(COLOR_WINDOWTEXT)); 1461 1461 DrawText(hdc,"bmp...",-1,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER); … … 1606 1606 } 1607 1607 SetDIBitsToDevice(hdc, 1608 pos2.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x,1609 pos2.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y,1608 pos2.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x, 1609 pos2.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y, 1610 1610 pBitmapInfo->bmiHeader.biWidth, pBitmapInfo->bmiHeader.biHeight, 1611 1611 0,0, … … 1623 1623 if(!(pChildInfo->GetStyle()&(BS_ICON|BS_BITMAP))){ 1624 1624 //キャプション テキスト 1625 rect.left=pos.x+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1626 rect.top=pos.y+1+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1627 rect.right=pos.x+size.cx-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1628 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1625 rect.left=pos.x+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1626 rect.top=pos.y+1+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1627 rect.right=pos.x+size.cx-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1628 rect.bottom=pos.y+size.cy-2+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1629 1629 1630 1630 if(pChildInfo->GetStyle()&BS_MULTILINE) i4=0; … … 1665 1665 1666 1666 //キャプション テキスト 1667 rect.left=pos.x+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1668 rect.top=pos.y+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1669 rect.right=pos.x+size.cx+MdiInfo[WndNum] .MdiRadInfo->ClientPos.x;1670 rect.bottom=pos.y+size.cy+MdiInfo[WndNum] .MdiRadInfo->ClientPos.y;1667 rect.left=pos.x+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1668 rect.top=pos.y+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1669 rect.right=pos.x+size.cx+MdiInfo[WndNum]->MdiRadInfo->ClientPos.x; 1670 rect.bottom=pos.y+size.cy+MdiInfo[WndNum]->MdiRadInfo->ClientPos.y; 1671 1671 1672 1672 //ビットを考慮してSS_LEFTを最後に検討する … … 1708 1708 size.cy-=16; 1709 1709 1710 rect.left=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x+pos.x+(size.cx/2)-2;1711 rect.right=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x+pos.x+(size.cx/2)+2;1712 rect.top=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y+pos.y;1713 rect.bottom=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y+pos.y+size.cy;1710 rect.left=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x+pos.x+(size.cx/2)-2; 1711 rect.right=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x+pos.x+(size.cx/2)+2; 1712 rect.top=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y+pos.y; 1713 rect.bottom=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y+pos.y+size.cy; 1714 1714 DrawEdge(hdc,&rect,EDGE_SUNKEN,BF_RECT); 1715 1715 … … 1724 1724 if(size.cy>21) size.cy=21; 1725 1725 1726 rect.left=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x+pos.x;1727 rect.right=MdiInfo[WndNum] .MdiRadInfo->ClientPos.x+pos.x+size.cx;1728 rect.top=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y+pos.y+(size.cy/2)-2;1729 rect.bottom=MdiInfo[WndNum] .MdiRadInfo->ClientPos.y+pos.y+(size.cy/2)+2;1726 rect.left=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x+pos.x; 1727 rect.right=MdiInfo[WndNum]->MdiRadInfo->ClientPos.x+pos.x+size.cx; 1728 rect.top=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y+pos.y+(size.cy/2)-2; 1729 rect.bottom=MdiInfo[WndNum]->MdiRadInfo->ClientPos.y+pos.y+(size.cy/2)+2; 1730 1730 DrawEdge(hdc,&rect,EDGE_SUNKEN,BF_RECT); 1731 1731 … … 1769 1769 POINT pos; 1770 1770 1771 SetBkMode(MdiInfo[WndNum] .MdiRadInfo->hMemDC,TRANSPARENT);1772 1773 hOldBrush=(HBRUSH)SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,GetStockObject(WHITE_BRUSH));1774 PatBlt(MdiInfo[WndNum] .MdiRadInfo->hMemDC,0,0,ScreenX*2,ScreenY*2,PATCOPY);1775 SelectObject(MdiInfo[WndNum] .MdiRadInfo->hMemDC,hOldBrush);1771 SetBkMode(MdiInfo[WndNum]->MdiRadInfo->hMemDC,TRANSPARENT); 1772 1773 hOldBrush=(HBRUSH)SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,GetStockObject(WHITE_BRUSH)); 1774 PatBlt(MdiInfo[WndNum]->MdiRadInfo->hMemDC,0,0,ScreenX*2,ScreenY*2,PATCOPY); 1775 SelectObject(MdiInfo[WndNum]->MdiRadInfo->hMemDC,hOldBrush); 1776 1776 1777 1777 pos.x=LEVER_THICK; 1778 1778 pos.y=LEVER_THICK; 1779 DesigningWindow(WndNum,MdiInfo[WndNum] .MdiRadInfo->hMemDC,&pos,pWindowInfo);1780 1781 InvalidateRect(MdiInfo[WndNum] .MdiRadInfo->hRad,NULL,0);1779 DesigningWindow(WndNum,MdiInfo[WndNum]->MdiRadInfo->hMemDC,&pos,pWindowInfo); 1780 1781 InvalidateRect(MdiInfo[WndNum]->MdiRadInfo->hRad,NULL,0); 1782 1782 }
Note:
See TracChangeset
for help on using the changeset viewer.