Changeset 503 in dev for trunk/ab5.0/abdev/abdev/abdev.cpp


Ignore:
Timestamp:
Apr 24, 2008, 1:33:12 PM (16 years ago)
Author:
dai_9181
Message:

いくつかのメニューをMainFrameに実装しなおした

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/abdev/abdev/abdev.cpp

    r501 r503  
    13241324WNDPROC oldMainFrameWndProc;
    13251325LRESULT CALLBACK WindowFunc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam){
    1326     int i,i2,WndNum;
    1327     char str[MAX_PATH],temporary[1024],temp2[MAX_PATH],*pTemp;
    1328     HWND hChild;
     1326    char str[MAX_PATH];
    13291327    RECT rect;
    13301328    POINT pos;
    1331     HDROP hDrop;
    1332 
    1333     static COLORREF colorUser=RGB(255,255,255);
    13341329
    13351330    if(message==WM_COMMAND&&IS_FILEHISTORY_COMMAND(LOWORD(wParam))){
     
    13491344    switch(message)
    13501345    {
    1351         case WM_COMMAND:
    1352             switch(LOWORD(wParam)){
    1353 
    1354 
    1355                 ////////////////////////////////////////////////////
    1356                 // メイン タブ コントロールのサブメニューコマンド
    1357                 ////////////////////////////////////////////////////
    1358 
    1359 
    1360                 case IDM_USER_COLOR:
    1361                     {
    1362                         CHOOSECOLOR cc;
    1363                         COLORREF CusColors[16]={
    1364                             RGB(255,255,255),
    1365                             RGB(0,0,0),
    1366                             RGB(128,128,128),
    1367                             RGB(192,192,192),
    1368                             RGB(128,0,0),
    1369                             RGB(255,0,0),
    1370                             RGB(128,128,0),
    1371                             RGB(255,255,0),
    1372                             RGB(0,128,0),
    1373                             RGB(0,255,0),
    1374                             RGB(0,128,128),
    1375                             RGB(0,255,255),
    1376                             RGB(0,0,128),
    1377                             RGB(0,0,255),
    1378                             RGB(128,0,128),
    1379                             RGB(255,0,255)};
    1380                         cc.lStructSize=sizeof(CHOOSECOLOR);
    1381                         cc.hwndOwner=hwnd;
    1382                         cc.rgbResult=colorUser;
    1383                         cc.lpCustColors=CusColors;
    1384                         cc.Flags=CC_RGBINIT|CC_FULLOPEN;
    1385                         if(!ChooseColor(&cc)){
    1386                             return 0;
    1387                         }
    1388                         colorUser=cc.rgbResult;
    1389                     }
    1390                 case IDM_GRAY:
    1391                 case IDM_WHITE:
    1392                 case IDM_RED:
    1393                 case IDM_GREEN:
    1394                 case IDM_BLUE:
    1395                 case IDM_YELLOW:
    1396                     hChild=GetWindow(hClient,GW_CHILD);
    1397                     WndNum=GetWndNum(hChild);
    1398 
    1399                     TC_ITEM tcItem;
    1400                     tcItem.mask=TCIF_PARAM;
    1401                     if(LOWORD(wParam)==IDM_GRAY)    tcItem.lParam=TABCOLOR_GRAY;
    1402                     if(LOWORD(wParam)==IDM_WHITE)   tcItem.lParam=TABCOLOR_WHITE;
    1403                     if(LOWORD(wParam)==IDM_RED)     tcItem.lParam=TABCOLOR_RED;
    1404                     if(LOWORD(wParam)==IDM_GREEN)   tcItem.lParam=TABCOLOR_GREEN;
    1405                     if(LOWORD(wParam)==IDM_BLUE)    tcItem.lParam=TABCOLOR_BLUE;
    1406                     if(LOWORD(wParam)==IDM_YELLOW)  tcItem.lParam=TABCOLOR_YELLOW;
    1407                     if(LOWORD(wParam)==IDM_USER_COLOR) tcItem.lParam=colorUser;
    1408                     TabCtrl_SetItem(pobj_MainTab->hTab,
    1409                         TabCtrl_GetCurSel(pobj_MainTab->hTab),
    1410                         &tcItem);
    1411                     InvalidateRect(pobj_MainTab->hTab,NULL,0);
    1412                     return 0;
    1413 
    1414 
    1415 
    1416                 //////////////////////////////////
    1417                 // SideWeb
    1418                 //////////////////////////////////
    1419 
    1420                 case IDC_CLIP:
    1421                     pobj_SideWeb->bShow=0;
    1422                     ResizeOwnerWnd();
    1423                     return 0;
    1424             }
    1425             break;
    1426         case WM_DROPFILES:
    1427             hDrop=(HDROP)wParam;
    1428 
    1429             i2=DragQueryFile(hDrop,-1,0,0);
    1430             for(i=0;i<i2;i++){
    1431                 DragQueryFile(hDrop,i,str,MAX_PATH);
    1432                 OpenFileWithExtension(str);
    1433             }
    1434             DragFinish(hDrop);
    1435             return 0;
    1436         case WM_SHOWERROR:
    1437             //エラー部分を反転表示
    1438             DWORD AccBytes;
    1439             HANDLE fh;
    1440             sprintf(temporary,"%spgm.tmp",pj_editor_Dir);
    1441             fh=CreateFile(temporary,GENERIC_READ,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
    1442             ReadFile(fh,temporary,MAX_PATH,&AccBytes,NULL);
    1443             CloseHandle(fh);
    1444             temporary[AccBytes]=0;
    1445             hChild=GetWindow(hClient,GW_CHILD);
    1446             while(hChild){
    1447                 WndNum=GetWndNum(hChild);
    1448                 if(IS_DOCUMENT_TEXT(MdiInfo[WndNum].DocType)){
    1449                     if(lstrcmpi(MdiInfo[WndNum].path,temporary)==0) break;
    1450                 }
    1451                 hChild=GetNextWindow(hChild,GW_HWNDNEXT);
    1452             }
    1453             if(!hChild){
    1454                 hChild=OpenFileWithExtension(temporary);
    1455                 WndNum=GetWndNum(hChild);
    1456             }
    1457 
    1458             if(WndNum==-1) return 0;
    1459 
    1460             //ウィンドウを最前面に表示
    1461             BringWindowToTop(hChild);
    1462             UpdateWindow(hChild);
    1463 
    1464             pTemp=MdiInfo[WndNum].pMdiTextEdit->buffer;
    1465 
    1466             //行の先頭インデックスを取得(取得する行の番号はwParamで渡される)
    1467             for(i=0,i2=0;;i++){
    1468                 if(i2>=(int)wParam) break;
    1469                 if(pTemp[i]=='\0') break;
    1470                 if(pTemp[i]=='\r'&&pTemp[i+1]=='\n'){
    1471                     i++;
    1472                     i2++;
    1473                 }
    1474             }
    1475             pos.x=i;
    1476 
    1477             //行の終端インデックスを取得
    1478             for(;;i++){
    1479                 if(pTemp[i]=='\0') break;
    1480                 if(pTemp[i]=='\r'&&pTemp[i+1]=='\n') break;
    1481             }
    1482             pos.y=i;
    1483 
    1484             //行を選択する
    1485             TextEdit_SetSel(WndNum,pos.x,pos.y,TRUE);
    1486 
    1487             return 0;
    14881346
    14891347#ifndef THETEXT
Note: See TracChangeset for help on using the changeset viewer.