// タブの追加 void CMainWindow::onAddTab(wxCommandEvent& event) { CChatServiceBase* contents = m_serviceHolder->getService( m_serviceHolder->getCurrentServiceId()); if (contents == NULL || contents->getCurrentChannel() == ""){ return; } CChannelStatus* channel = contents->getChannel( contents->getCurrentChannel()); vector<wxString> userNames; vector<CMemberData*> members = channel->getMembers(); vector<CMemberData*>::iterator it = members.begin(); while (it != members.end()){ userNames.push_back((*it)->m_nick); it++; } // ダイアログを表示 CFilterDialog dialog; dialog.init(this, contents->getCurrentChannel(), userNames); if (dialog.ShowModal() == wxID_OK){ IFilter* filter = dialog.getFilter(); if (filter != NULL){ contents->getConfiguration()->addFilter( contents->getCurrentChannel(), filter); updateMessageView(m_serviceHolder->getCurrentServiceId(), contents->getCurrentChannel()); } } }