Ignore:
Timestamp:
May 23, 2008, 10:35:36 PM (16 years ago)
Author:
dai_9181
Message:

WindowInfoクラスをリファクタリング

File:
1 edited

Legend:

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

    r623 r624  
    4040    HFONT *lphFont;
    4141    HANDLE *lphImage;
    42     int i2,i3;
     42    int i2;
    4343    char temporary[MAX_PATH];
    4444
     
    5050    }
    5151
    52     WindowInfo *pWindowInfo = projectInfo.windowInfos[WndInfoNum];
    53 
    54     if(pWindowInfo->style&WS_CHILD){
     52    ActiveBasic::PM::WindowInfo *pWindowInfo = projectInfo.windowInfos[WndInfoNum];
     53
     54    if(pWindowInfo->GetStyle()&WS_CHILD){
    5555        //"チャイルドウィンドウをテスト表示することはできません"
    5656        MessageBox(hOwner,STRING_RAD_ERROR_CANT_CHILDTEST,STRING_ERROR,MB_OK|MB_ICONEXCLAMATION);
     
    6464
    6565    //テスト用のメインウィンドウを作成
    66     hWnd=CreateWindowEx(pWindowInfo->ExStyle,
     66    hWnd=CreateWindowEx(pWindowInfo->GetExStyle(),
    6767        "TestWindow",
    6868        pWindowInfo->GetName().c_str(),
    69         pWindowInfo->style|WS_VISIBLE,
     69        pWindowInfo->GetStyle()|WS_VISIBLE,
    7070        CW_USEDEFAULT,CW_USEDEFAULT,
    7171        pWindowInfo->size.cx,pWindowInfo->size.cy,
     
    7373
    7474    //子ウィンドウ作成
    75     for(i2=0;i2<pWindowInfo->childWindowInfos.size();i2++){
     75    for( i2=0; i2<static_cast<int>(pWindowInfo->childWindowInfos.size()); i2++ )
     76    {
    7677        if(pWindowInfo->childWindowInfos[i2]->Control==CT_UPDOWN){
    7778            CreateUpDownControl(
    78                 pWindowInfo->childWindowInfos[i2]->style,
     79                pWindowInfo->childWindowInfos[i2]->GetStyle(),
    7980                pWindowInfo->childWindowInfos[i2]->pos.x,pWindowInfo->childWindowInfos[i2]->pos.y,
    8081                pWindowInfo->childWindowInfos[i2]->size.cx,pWindowInfo->childWindowInfos[i2]->size.cy,
     
    8586            GetItemClassName(temporary,pWindowInfo->childWindowInfos[i2]->Control);
    8687            hChild=CreateWindowEx(
    87                 pWindowInfo->childWindowInfos[i2]->ExStyle,
     88                pWindowInfo->childWindowInfos[i2]->GetExStyle(),
    8889                temporary,
    89                 pWindowInfo->childWindowInfos[i2]->caption,
    90                 pWindowInfo->childWindowInfos[i2]->style,
     90                pWindowInfo->childWindowInfos[i2]->GetCaption().c_str(),
     91                pWindowInfo->childWindowInfos[i2]->GetStyle(),
    9192                pWindowInfo->childWindowInfos[i2]->pos.x,
    9293                pWindowInfo->childWindowInfos[i2]->pos.y,
     
    102103                // イメージ ボックスの場合
    103104                ///////////////////////////
    104                 if((pWindowInfo->childWindowInfos[i2]->style&0x000F)==SS_ICON){
    105                     if(pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.type==IMGTYPE_FILE)
    106                         lstrcpy(temporary,pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.path);
    107                     else{
    108                         for(i3=0;i3<projectInfo.resourceManager.iconResources.size();i3++)
     105                if((pWindowInfo->childWindowInfos[i2]->GetStyle()&0x000F)==SS_ICON){
     106                    if(pWindowInfo->childWindowInfos[i2]->image.IsFile())
     107                    {
     108                        lstrcpy(temporary,pWindowInfo->childWindowInfos[i2]->image.path.c_str());
     109                    }
     110                    else
     111                    {
     112                        temporary[0] = 0;
     113                        BOOST_FOREACH( const ActiveBasic::Common::ResourceItem &resourceItem, projectInfo.resourceManager.iconResources )
    109114                        {
    110                             if( projectInfo.resourceManager.iconResources[i3].idName == pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.path )
     115                            if( resourceItem.idName == pWindowInfo->childWindowInfos[i2]->image.path )
    111116                            {
     117                                lstrcpy( temporary, resourceItem.filepath.c_str() );
    112118                                break;
    113119                            }
    114120                        }
    115                         if(i3==projectInfo.resourceManager.iconResources.size()) temporary[0]=0;
    116                         else lstrcpy(temporary,projectInfo.resourceManager.iconResources[i3].filepath.c_str());
    117121                    }
    118122                    if(temporary[0]){
     
    123127                    }
    124128                }
    125                 else if((pWindowInfo->childWindowInfos[i2]->style&0x000F)==SS_BITMAP){
    126                     if(pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.type==IMGTYPE_FILE)
    127                         lstrcpy(temporary,pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.path);
    128                     else{
    129                         for(i3=0;i3<projectInfo.resourceManager.bitmapResources.size();i3++){
    130                             if( projectInfo.resourceManager.bitmapResources[i3].idName == pWindowInfo->childWindowInfos[i2]->ImageCtrlInfo.path )
     129                else if((pWindowInfo->childWindowInfos[i2]->GetStyle()&0x000F)==SS_BITMAP){
     130                    if(pWindowInfo->childWindowInfos[i2]->image.IsFile())
     131                    {
     132                        lstrcpy(temporary,pWindowInfo->childWindowInfos[i2]->image.path.c_str());
     133                    }
     134                    else
     135                    {
     136                        temporary[0] = 0;
     137                        BOOST_FOREACH( const ActiveBasic::Common::ResourceItem &resourceItem, projectInfo.resourceManager.bitmapResources )
     138                        {
     139                            if( resourceItem.idName == pWindowInfo->childWindowInfos[i2]->image.path )
    131140                            {
     141                                lstrcpy( temporary, resourceItem.filepath.c_str() );
    132142                                break;
    133143                            }
    134144                        }
    135                         if(i3==projectInfo.resourceManager.bitmapResources.size()) temporary[0]=0;
    136                         else lstrcpy(temporary,projectInfo.resourceManager.bitmapResources[i3].filepath.c_str());
    137145                    }
    138146                    if(temporary[0]){
     
    155163
    156164    //フォントハンドルを破棄
    157     for(i2=0;i2<pWindowInfo->childWindowInfos.size();i2++){
     165    for(i2=0;i2<static_cast<int>(pWindowInfo->childWindowInfos.size());i2++){
    158166        if(lphFont[i2]) DeleteObject(lphFont[i2]);
    159167    }
     
    161169
    162170    //イメージハンドルを破棄
    163     for(i2=0;i2<pWindowInfo->childWindowInfos.size();i2++){
     171    for(i2=0;i2<static_cast<int>(pWindowInfo->childWindowInfos.size());i2++){
    164172        if(lphImage[i2]){
    165             if((pWindowInfo->childWindowInfos[i2]->style&0x000F)==SS_ICON)
     173            if((pWindowInfo->childWindowInfos[i2]->GetStyle()&0x000F)==SS_ICON)
    166174                DestroyIcon((HICON)lphImage[i2]);
    167             else if((pWindowInfo->childWindowInfos[i2]->style&0x000F)==SS_BITMAP)
     175            else if((pWindowInfo->childWindowInfos[i2]->GetStyle()&0x000F)==SS_BITMAP)
    168176                DeleteObject(lphImage[i2]);
    169177        }
     
    176184}
    177185
    178 void SetSupportDlgData(int WndNum, const WindowInfo &windowInfo )
     186void SetSupportDlgData(int WndNum, const ActiveBasic::PM::WindowInfo &windowInfo )
    179187{
    180188    ////////////////////////////////////
     
    307315
    308316            i=GetWndNum(GetParent(hwnd));
    309             WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[i].path);
     317            ActiveBasic::PM::WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[i].path);
    310318
    311319            for(i3=0;;i3++){
Note: See TracChangeset for help on using the changeset viewer.