Changeset 625 in dev for trunk/ab5.0/abdev/abdev/IconEditor.cpp
- Timestamp:
- May 27, 2008, 9:17:34 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/abdev/IconEditor.cpp
r620 r625 29 29 } 30 30 void ResetIconType(int WndNum){ 31 extern MDIINFO MdiInfo[MAX_WNDNUM];32 31 int i; 33 32 HWND hCombo; … … 127 126 void AddIconType(int WndNum,int IconType){ 128 127 extern HANDLE hHeap; 129 extern MDIINFO MdiInfo[MAX_WNDNUM];130 128 int i,width,BitCount; 131 129 … … 192 190 } 193 191 void DeleteIconType(int WndNum){ 194 extern MDIINFO MdiInfo[MAX_WNDNUM];195 192 int i; 196 193 … … 241 238 extern HANDLE hHeap; 242 239 extern HWND hDocCombo; 243 extern MDIINFO MdiInfo[MAX_WNDNUM];244 240 int i,i2,IconNum; 245 241 char str[MAX_PATH],str2[32],*buffer; … … 257 253 i=GetWndNum(hChild); 258 254 if(MdiInfo[i].DocType==WNDTYPE_ICONEDIT){ 259 if(lstrcmpi(MdiInfo[i].path ,filepath)==0) break;255 if(lstrcmpi(MdiInfo[i].path.c_str(),filepath)==0) break; 260 256 } 261 257 hChild=GetNextWindow(hChild,GW_HWNDNEXT); … … 373 369 374 370 //ウィンドウのID登録 375 for(i=0;i<MAX_WNDNUM;i++){ 376 if(MdiInfo[i].hwnd==0){ 377 MdiInfo[i].hwnd=hChild; 378 MdiInfo[i].DocType=WNDTYPE_ICONEDIT; 379 MdiInfo[i].title=(char *)GlobalAlloc(GMEM_FIXED,lstrlen(str)+1); 380 lstrcpy(MdiInfo[i].title,str); 381 if(filepath){ 382 MdiInfo[i].path=(char *)GlobalAlloc(GMEM_FIXED,lstrlen(filepath)+1); 383 lstrcpy(MdiInfo[i].path,filepath); 384 } 385 else MdiInfo[i].path=(char *)GlobalAlloc(GPTR,1); 386 387 MdiInfo[i].MdiIconEditInfo=(MDIICONEDITINFO *)HeapAlloc(hHeap,0,sizeof(MDIICONEDITINFO)); 388 MdiInfo[i].MdiIconEditInfo->hMain=hMain; 389 MdiInfo[i].MdiIconEditInfo->hToolDlg=hToolDlg; 390 MdiInfo[i].MdiIconEditInfo->hButtonsDlg=hButtonsDlg; 391 MdiInfo[i].MdiIconEditInfo->hColorDlg=hColorDlg; 392 hdc=GetDC(hMain); 393 MdiInfo[i].MdiIconEditInfo->memdc=CreateCompatibleDC(hdc); 394 MdiInfo[i].MdiIconEditInfo->hMemBmp=CreateCompatibleBitmap(hdc,600,400); 395 SelectObject(MdiInfo[i].MdiIconEditInfo->memdc,MdiInfo[i].MdiIconEditInfo->hMemBmp); 396 ReleaseDC(hMain,hdc); 397 398 MdiInfo[i].MdiIconEditInfo->SelectLevel=0; 399 400 MdiInfo[i].MdiIconEditInfo->num=IconNum; 401 MdiInfo[i].MdiIconEditInfo->SelectIconNum=0; 402 memcpy(MdiInfo[i].MdiIconEditInfo->pIconImage,pImageBuffer,sizeof(DWORD)*IconNum); 403 404 memcpy(MdiInfo[i].MdiIconEditInfo->dwBytesInRes,dwBytesInRes,sizeof(DWORD)*IconNum); 405 406 MdiInfo[i].MdiIconEditInfo->NowTool=IDC_TOOL_PEN; 407 MdiInfo[i].MdiIconEditInfo->MainColor=RGB(0,0,0); 408 extern COLORREF TransparentClrRef; 409 MdiInfo[i].MdiIconEditInfo->SubColor=TransparentClrRef; 410 411 for(i2=0;i2<MdiInfo[i].MdiIconEditInfo->num;i2++){ 412 MdiInfo[i].MdiIconEditInfo->undo[i2].NowPos=0; 413 memset(MdiInfo[i].MdiIconEditInfo->undo[i2].lpData,0,sizeof(BYTE *)*MAX_ICONEDIT_UNDONUM); 414 } 415 MdiInfo[i].MdiIconEditInfo->bModify=0; 416 break; 417 } 418 } 371 MdiInfo.push_back( MDIINFO() ); 372 i = MdiInfo.size()-1; 373 MdiInfo[i].hwnd=hChild; 374 MdiInfo[i].DocType=WNDTYPE_ICONEDIT; 375 MdiInfo[i].title=(char *)GlobalAlloc(GMEM_FIXED,lstrlen(str)+1); 376 lstrcpy(MdiInfo[i].title,str); 377 if(filepath) 378 { 379 MdiInfo[i].path = filepath; 380 } 381 else 382 { 383 MdiInfo[i].path = ""; 384 } 385 386 MdiInfo[i].MdiIconEditInfo=(MDIICONEDITINFO *)HeapAlloc(hHeap,0,sizeof(MDIICONEDITINFO)); 387 MdiInfo[i].MdiIconEditInfo->hMain=hMain; 388 MdiInfo[i].MdiIconEditInfo->hToolDlg=hToolDlg; 389 MdiInfo[i].MdiIconEditInfo->hButtonsDlg=hButtonsDlg; 390 MdiInfo[i].MdiIconEditInfo->hColorDlg=hColorDlg; 391 hdc=GetDC(hMain); 392 MdiInfo[i].MdiIconEditInfo->memdc=CreateCompatibleDC(hdc); 393 MdiInfo[i].MdiIconEditInfo->hMemBmp=CreateCompatibleBitmap(hdc,600,400); 394 SelectObject(MdiInfo[i].MdiIconEditInfo->memdc,MdiInfo[i].MdiIconEditInfo->hMemBmp); 395 ReleaseDC(hMain,hdc); 396 397 MdiInfo[i].MdiIconEditInfo->SelectLevel=0; 398 399 MdiInfo[i].MdiIconEditInfo->num=IconNum; 400 MdiInfo[i].MdiIconEditInfo->SelectIconNum=0; 401 memcpy(MdiInfo[i].MdiIconEditInfo->pIconImage,pImageBuffer,sizeof(DWORD)*IconNum); 402 403 memcpy(MdiInfo[i].MdiIconEditInfo->dwBytesInRes,dwBytesInRes,sizeof(DWORD)*IconNum); 404 405 MdiInfo[i].MdiIconEditInfo->NowTool=IDC_TOOL_PEN; 406 MdiInfo[i].MdiIconEditInfo->MainColor=RGB(0,0,0); 407 extern COLORREF TransparentClrRef; 408 MdiInfo[i].MdiIconEditInfo->SubColor=TransparentClrRef; 409 410 for(i2=0;i2<MdiInfo[i].MdiIconEditInfo->num;i2++){ 411 MdiInfo[i].MdiIconEditInfo->undo[i2].NowPos=0; 412 memset(MdiInfo[i].MdiIconEditInfo->undo[i2].lpData,0,sizeof(BYTE *)*MAX_ICONEDIT_UNDONUM); 413 } 414 MdiInfo[i].MdiIconEditInfo->bModify=0; 415 416 419 417 420 418 //メモリへ初期描画を行う … … 449 447 } 450 448 void SaveIconFile(char *filepath,HWND hwnd){ 451 extern MDIINFO MdiInfo[MAX_WNDNUM];452 449 int i,i2,WndNum; 453 450 char buffer[8192],temporary[MAX_PATH]; … … 534 531 LRESULT CALLBACK MDIClientWindow_IconEdit(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam){ 535 532 extern HWND hDocCombo; 536 extern MDIINFO MdiInfo[MAX_WNDNUM];537 533 int i,WndNum; 538 534
Note: See TracChangeset
for help on using the changeset viewer.