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


Ignore:
Timestamp:
Aug 29, 2009, 7:55:19 AM (15 years ago)
Author:
イグトランス (egtra)
Message:

Windows 7タスクバーへの対応を実装。
(#245)

File:
1 edited

Legend:

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

    r705 r772  
    196196
    197197    if(MenuText){
    198         SendMessage(hStatusBar,SB_SETTEXT,0,(long)MenuText);
     198        SendMessage(hStatusBar,SB_SETTEXT,0,(LPARAM)MenuText);
    199199        if((char *)MenuText!=(char *)CmdMsg) CmdMsg[0]=0;
    200200    }
     
    979979    if( hDocCombo )
    980980    {
    981         i=SendMessage(hDocCombo,CB_ADDSTRING,0,(long)str);
     981        i=SendMessage(hDocCombo,CB_ADDSTRING,0,(LPARAM)str);
    982982        SendMessage(hDocCombo,CB_SETCURSEL,i,0);
    983983    }
    984984
    985985    //タブに追加
    986     pobj_MainTab->InsertItem( str, true, TabColor );
     986    pobj_MainTab->InsertItem( hChild, str, true, TabColor );
    987987
    988988    ::SetFocus(hEdit);
     
    10041004        }
    10051005    }
    1006 
     1006    UpdateWindow(hChild);
    10071007    return hChild;
    10081008}
     
    10141014    //ドキュメントコンボボックスから文字列を消去
    10151015    extern HWND hDocCombo;
    1016     i2=SendMessage(hDocCombo,CB_FINDSTRINGEXACT,0,(long)MdiInfo[WndNum]->title.c_str());
     1016    i2=SendMessage(hDocCombo,CB_FINDSTRINGEXACT,0,(LPARAM)MdiInfo[WndNum]->title.c_str());
    10171017    SendMessage(hDocCombo,CB_DELETESTRING,i2,0);
    10181018
    10191019    //タブコントロールからアイテムを消去
    10201020    if(pobj_MainTab) pobj_MainTab->DeleteItem( MdiInfo[WndNum]->title.c_str(), true );
    1021 
    10221021
    10231022    if(IS_DOCUMENT_TEXT(MdiInfo[WndNum]->DocType)){
     
    11511150        WebResultWndHeight);
    11521151}
     1152
    11531153LRESULT CALLBACK MDIClientWindow_TextEdit(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam){
    11541154    int i,i2;
     
    11571157    switch(message){
    11581158        case WM_CREATE:
    1159             CREATESTRUCT *lpcs;
    1160             lpcs=(CREATESTRUCT *)lParam;
    1161             MDICREATESTRUCT *lpmcs;
    1162             lpmcs=(MDICREATESTRUCT *)lpcs->lpCreateParams;
    1163             SendMessage(hwnd,WM_SETICON,ICON_SMALL,(LPARAM)lpmcs->lParam);
    1164             break;
     1159            {
     1160                CREATESTRUCT *lpcs = (CREATESTRUCT *)lParam;
     1161                MDICREATESTRUCT *lpmcs = (MDICREATESTRUCT *)lpcs->lpCreateParams;
     1162                SendMessage(hwnd,WM_SETICON,ICON_SMALL,lpmcs->lParam);
     1163
     1164                break;
     1165            }
    11651166        case WM_MDIACTIVATE:
    1166             //以前のMDIウィンドウのパラメータ ヒントを破棄する
    1167             if(MethodCheckInfo.hWnd){
    1168                 DestroyWindow(MethodCheckInfo.hWnd);
    1169                 MethodCheckInfo.hWnd=0;
    1170             }
    1171 
    1172             //以前のコード補完リストを破棄する
    1173             if(ComplementWndInfo.hWnd){
    1174                 DestroyWindow(ComplementWndInfo.hWnd);
    1175                 ComplementWndInfo.hWnd=0;
    1176             }
    1177 
    1178             if(!lParam) return 0;
    1179             i=GetWndNum((HWND)lParam);
    1180             if(i==-1) return 0; //ウィンドウが初期状態の場合
     1167            {
     1168                //以前のMDIウィンドウのパラメータ ヒントを破棄する
     1169                if(MethodCheckInfo.hWnd){
     1170                    DestroyWindow(MethodCheckInfo.hWnd);
     1171                    MethodCheckInfo.hWnd=0;
     1172                }
     1173
     1174                //以前のコード補完リストを破棄する
     1175                if(ComplementWndInfo.hWnd){
     1176                    DestroyWindow(ComplementWndInfo.hWnd);
     1177                    ComplementWndInfo.hWnd=0;
     1178                }
     1179
     1180                if(!lParam) return 0;
     1181                i=GetWndNum((HWND)lParam);
     1182                if(i==-1) return 0; //ウィンドウが初期状態の場合
    11811183
    11821184#ifndef THETEXT
    1183             //デバッガ メニューの状態を設定
    1184             pobj_Debugger->ResetCommandEnabled();
    1185 #endif
    1186 
    1187             //ドキュメント セレクト コンボボックス
    1188             extern HWND hDocCombo;
    1189             i2=SendMessage(hDocCombo,CB_FINDSTRINGEXACT,0,(long)MdiInfo[i]->title.c_str());
    1190             SendMessage(hDocCombo,CB_SETCURSEL,i2,0);
    1191 
    1192             //タブコントロール
    1193             pobj_MainTab->MdiActiveEvent(MdiInfo[i]->title.c_str());
    1194 
    1195             if( !projectInfo.IsOpened() ){
    1196                 ResetClassTree((HTREEITEM)-1);
    1197             }
    1198 
    1199             return 0;
     1185                //デバッガ メニューの状態を設定
     1186                pobj_Debugger->ResetCommandEnabled();
     1187#endif
     1188
     1189                //ドキュメント セレクト コンボボックス
     1190                extern HWND hDocCombo;
     1191                i2=SendMessage(hDocCombo,CB_FINDSTRINGEXACT,0,(LPARAM)MdiInfo[i]->title.c_str());
     1192                SendMessage(hDocCombo,CB_SETCURSEL,i2,0);
     1193
     1194                //タブコントロール
     1195                pobj_MainTab->MdiActiveEvent(MdiInfo[i]->title.c_str());
     1196
     1197                if( !projectInfo.IsOpened() ){
     1198                    ResetClassTree((HTREEITEM)-1);
     1199                }
     1200                return 0;
     1201            }
    12001202        case WM_SETFOCUS:
    12011203            hEdit=GetWindow(hwnd,GW_CHILD);
     
    12441246    switch(message)
    12451247    {
    1246 
    12471248#ifndef THETEXT
    12481249        case WM_SETCOMPILEVIEW:
     
    12531254        case WM_DESTROYCOMPILEVIEW:
    12541255            //コンパイラウィンドウ(埋め込み型)が破棄されたとき
    1255             if((int)hCompileView==-1){
     1256            if((LONG_PTR)hCompileView==-1){
    12561257                //すぐに次のコンパイラウィンドウが起動するとき
    12571258                hCompileView=0;
     
    12601261                //完全にコンパイラウィンドウを閉じたときはリサイズ
    12611262                hCompileView=0;
    1262                
     1263
    12631264                ActiveBasic::IDE::Program::mainFrame.Resized();
    12641265            }
     
    13001301            static int start;
    13011302
    1302             pos.x=(long)(short)LOWORD(lParam);
    1303             pos.y=(long)(short)HIWORD(lParam);
     1303            pos.x=GET_X_LPARAM(lParam);
     1304            pos.y=GET_Y_LPARAM(lParam);
    13041305            ClientToScreen(hwnd,&pos);
    13051306
     
    13771378            return 0;
    13781379        case WM_LBUTTONDOWN:
    1379             pos.x=LOWORD(lParam);
    1380             pos.y=HIWORD(lParam);
     1380            pos.x=GET_X_LPARAM(lParam);
     1381            pos.y=GET_Y_LPARAM(lParam);
    13811382            ClientToScreen(hwnd,&pos);
    13821383
     
    15321533    if(!RegWndClass(SideWebProc,"SideWeb",(HBRUSH)COLOR_APPWORKSPACE+1,FLAG_DBLCLK)) return 0;
    15331534
    1534     ActiveBasic::IDE::Program::Main();
     1535    ActiveBasic::IDE::Program::Main(hThisInst);
    15351536
    15361537    //return 0;
     
    15531554    SetTimer(hOwner,ID_TIMER_BACKUP,10000,NULL);
    15541555
    1555     SendMessage(hOwner,WM_SETICON,ICON_SMALL,(long)hOwnerIcon);
     1556    SendMessage(hOwner,WM_SETICON,ICON_SMALL,(LPARAM)hOwnerIcon);
    15561557    SetClipboardViewer(hOwner);
    15571558
     
    16381639#endif
    16391640
    1640     return msg.wParam;
    1641 }
     1641    return static_cast<int>(msg.wParam);
     1642}
Note: See TracChangeset for help on using the changeset viewer.