Ignore:
Timestamp:
May 19, 2008, 3:03:33 PM (16 years ago)
Author:
dai_9181
Message:

CHILDINFOの管理方法をstd::vectorに変更。

File:
1 edited

Legend:

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

    r615 r616  
    2121
    2222    WindowInfo *pWindowInfo = ProjectInfo.windowInfos[WndInfoNum];
    23     for(i=0;i<pWindowInfo->NumberOfChildWindows;i++){
    24         if(lstrcmp(buffer,pWindowInfo->pChildInfo[i].IdName)==0) break;
    25     }
    26     if(i==pWindowInfo->NumberOfChildWindows) return 0;
    27 
    28     return pWindowInfo->pChildInfo[i].Control;
     23    BOOST_FOREACH( CHILDINFO *pChildInfo, pWindowInfo->childWindowInfos )
     24    {
     25        if(lstrcmp(buffer,pChildInfo->IdName)==0)
     26        {
     27            return pChildInfo->Control;
     28        }
     29    }
     30
     31    return 0;
    2932}
    3033char **GetProcedureNamesOfMessageCall(int WndInfoNum,ITEMEVENTINFO **ppItemEventInfo,int *num,BOOL *pbAlways){
     
    297300                sprintf(EventName,"%s_%s_%s",
    298301                    pWindowInfo->name,
    299                     pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].IdName,
     302                    pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->IdName,
    300303                    temporary);
    301304                break;
     
    304307        if(i==MaxCount) return 0;
    305308
    306         if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_LISTVIEW){
     309        if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
    307310            //ListView
    308311            if(i==0) lstrcpy(Parameter,"ByRef nmListView As NMLISTVIEW");
     
    328331            else if(i==20) lstrcpy(Parameter,"ByRef nmLVDispInfo As NMLVDISPINFO");
    329332        }
    330         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_PROGRESSBAR){
     333        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
    331334            //ProgressBar
    332335            lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
    333336        }
    334         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_TRACKBAR){
     337        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
    335338            //TrackBar
    336339            lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
    337340        }
    338         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_TREEVIEW){
     341        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
    339342            //TreeView
    340343            if(0<=i&&i<=7) lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
    341344            else lstrcpy(Parameter,"ByRef nmTreeView As NMTREEVIEW");
    342345        }
    343         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_UPDOWN){
     346        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
    344347            //UpDown
    345348            if(i==0) lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
     
    459462        EnableWindow(GetDlgItem(hDlg,IDC_MMSYS),0);
    460463        SendDlgItemMessage(hDlg,IDC_DEFAULT,BM_SETCHECK,BST_CHECKED,0);
    461         if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_BUTTON){
     464        if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_BUTTON){
    462465            //Button
    463466            InsertEventToList(hList,i++,"Click","BN_CLICKED","ボタンがクリックされた時");
    464467            InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","ボタンがダブル クリックされた時");
    465468        }
    466         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_CHECKBOX){
     469        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_CHECKBOX){
    467470            //CheckBox
    468471            InsertEventToList(hList,i++,"Click","BN_CLICKED","チェック ボックスがクリックされた時");
    469472            InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","チェック ボックスがダブル クリックされた時");
    470473        }
    471         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_COMBOBOX){
     474        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_COMBOBOX){
    472475            //ComboBox
    473476            InsertEventToList(hList,i++,"CloseUp","CBN_CLOSEUP","リスト ボックスが非表示になる時");
     
    483486            InsertEventToList(hList,i++,"SetFocus","CBN_SETFOCUS","入力フォーカスを取得した時");
    484487        }
    485         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_EDIT){
     488        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_EDIT){
    486489            //Edit
    487490            InsertEventToList(hList,i++,"Change","EN_CHANGE","エディット ボックスの内容が変更された時(後処理)");
     
    494497            InsertEventToList(hList,i++,"VScroll","EN_VSCROLL","垂直スクロールを行った時");
    495498        }
    496         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_IMAGEBOX){
     499        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_IMAGEBOX){
    497500            //ImageBox
    498501            InsertEventToList(hList,i++,"Click","STN_CLICKED","イメージ ボックスがクリックされた時");
    499502            InsertEventToList(hList,i++,"DblClick","STN_DBLCLK","イメージ ボックスがダブル クリックされた時");
    500503        }
    501         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_LISTBOX){
     504        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTBOX){
    502505            //ListBox
    503506            InsertEventToList(hList,i++,"SelChange","LBN_SELCHANGE","リスト内の選択が変更された時");
     
    508511            InsertEventToList(hList,i++,"SetFocus","LBN_SETFOCUS","入力フォーカスを取得した時");
    509512        }
    510         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_LISTVIEW){
     513        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
    511514            //ListView
    512515            i=SetDefaultNotifyMessagesInList(hList,CT_LISTVIEW);
    513516        }
    514         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_PROGRESSBAR){
     517        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
    515518            //ProgressBar
    516519            InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","メモリ不足でコントロールの動作が完了できない時");
    517520        }
    518         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_RADIOBUTTON){
     521        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_RADIOBUTTON){
    519522            //RadioButton
    520523            InsertEventToList(hList,i++,"Click","BN_CLICKED","ラジオ ボタンがクリックされた時");
    521524            InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","ラジオ ボタンがダブル クリックされた時");
    522525        }
    523         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_STATIC){
     526        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_STATIC){
    524527            //Static
    525528            InsertEventToList(hList,i++,"Click","STN_CLICKED","スタティック テキストがクリックされた時");
    526529            InsertEventToList(hList,i++,"DblClick","STN_DBLCLK","スタティック テキストがダブル クリックされた時");
    527530        }
    528         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_TRACKBAR){
     531        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
    529532            //TrackBar
    530533            InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","メモリ不足でコントロールの動作が完了できない時");
     
    532535            InsertEventToList(hList,i++,"CustomDraw","NM_CUSTOMDRAW ","カスタム描画操作の通知");
    533536        }
    534         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_TREEVIEW){
     537        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
    535538            //TreeView
    536539            i=SetDefaultNotifyMessagesInList(hList,CT_TREEVIEW);
    537540        }
    538         else if(pWindowInfo->pChildInfo[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]].Control==CT_UPDOWN){
     541        else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
    539542            //UpDown
    540543            InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","メモリ不足でコントロールの動作が完了できない時");
Note: See TracChangeset for help on using the changeset viewer.