| |
---|
| | results.clear(); |
---|
| | result.kouho.clear(); |
---|
| | ResultList l; |
---|
| | MultiResultList m; |
---|
| | vector<MultiResultList> rs; |
---|
| | // メインのConvertorからまず取得。 |
---|
| | ResultList t = instance->m_def_convertor->getResultList(p,kt); |
---|
| | m.list.Title = t.Title; |
---|
| | m.list.Yomi = t.Yomi; |
---|
| |
---|
| | d.insert(t.kouho[j].kanji); |
---|
| | m.list.kouho.push_back(t.kouho[j]); |
---|
| | } |
---|
| | } |
---|
| | rs.push_back(m); |
---|
| | m.list = t; |
---|
| | results.push_back(m); |
---|
| | // その他のConvertorから取得。 |
---|
| | for(unsigned int i = 0;i < instance->convertors.size();i ++) { |
---|
| | if (nuc.find(instance->convertors[i]) != nuc.end()) continue; |
---|
| |
---|
| | d.insert(t.kouho[j].kanji); |
---|
| | m.list.kouho.push_back(t.kouho[j]); |
---|
| | } |
---|
| | } |
---|
| | rs.push_back(m); |
---|
| | m.list = t; |
---|
| | results.push_back(m); |
---|
| | } |
---|
| | } |
---|
| | // リスト生成。 |
---|
| | for(unsigned int i = 0;i < results.size();i ++) { |
---|
| | for(unsigned int j = 0;j < results[i].list.count();j ++) { |
---|
| | int rp = l.find(results[i].list.kouho[j].kanji); |
---|
| | for(unsigned int i = 0;i < rs.size();i ++) { |
---|
| | for(unsigned int j = 0;j < rs[i].list.count();j ++) { |
---|
| | int rp = l.find(rs[i].list.kouho[j].kanji); |
---|
| | if (rp != -1) { |
---|
| | l.kouho[rp].label = l.kouho[rp].label + utf8_mbstowcs(String(",")) + |
---|
| | utf8_mbstowcs(results[i].convertor->getPropertyName()); |
---|
| | utf8_mbstowcs(rs[i].convertor->getPropertyName()); |
---|
| | } else { |
---|
| | l.kouho.push_back(ResultEntry(results[i].list.kouho[j].kanji, |
---|
| | results[i].list.kouho[j].kanji + utf8_mbstowcs(String(" (")) + |
---|
| | utf8_mbstowcs(results[i].convertor->getPropertyName()))); |
---|
| | l.kouho.push_back(ResultEntry(rs[i].list.kouho[j].kanji, |
---|
| | rs[i].list.kouho[j].kanji + utf8_mbstowcs(String(" (")) + |
---|
| | utf8_mbstowcs(rs[i].convertor->getPropertyName()))); |
---|
| | } |
---|
| | } |
---|
| | } |
---|
| | for(unsigned int i = 0;i < l.count();i ++) { |
---|
| |
---|
| | |
---|
| | |
---|
| | bool MultiConvertor::select(int p) { |
---|
| | if (p < result.kouho.size()) texts[getPos()] = result.kouho[p].kanji; |
---|
| | for(unsigned int i = 0;i < results.size();i ++) { |
---|
| | int ps = results[i].list.find(result.kouho[p].kanji); |
---|
| | if (ps != -1) results[i].convertor->select(ps); |
---|
| | } |
---|
| | return true; |
---|
| | } |
---|
| | |
---|
| | AttributeList MultiConvertor::getAttributeList() { |
---|
| |
---|
| | return true; |
---|
| | } |
---|
| | |
---|
| | void MultiConvertor::updateFrequency() { |
---|
| | // 未実装。 |
---|
| | for(unsigned int i = 0;i < instance->convertors.size();i ++) { |
---|
| | if (nuc.find(instance->convertors[i]) != nuc.end()) continue; |
---|
| | instance->convertors[i]->updateFrequency(); |
---|
| | } |
---|
| | return; |
---|
| | } |
---|
| | |
---|
| | bool MultiConvertor::connect() { |
---|
| |
---|
| | |