MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / onEthDeviceTypeChanged

Method onEthDeviceTypeChanged

pcsx2-qt/Settings/DEV9SettingsWidget.cpp:210–271  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

208}
209
210void DEV9SettingsWidget::onEthDeviceTypeChanged(int index)
211{
212 {
213 QSignalBlocker sb(m_ui.ethDev);
214 m_ui.ethDev->clear();
215 }
216
217 Pcsx2Config::DEV9Options::NetApi selectedApi{Pcsx2Config::DEV9Options::NetApi ::Unset};
218
219 if (index > 0)
220 {
221 std::vector<AdapterEntry> list = m_adapter_list[static_cast<u32>(m_api_list[index])];
222
223 const std::string value = dialog()->getEffectiveStringValue("DEV9/Eth", "EthDevice", "");
224 for (size_t i = 0; i < list.size(); i++)
225 {
226 m_ui.ethDev->addItem(QString::fromUtf8(list[i].name));
227 if (list[i].guid == value)
228 m_ui.ethDev->setCurrentIndex(i);
229 }
230
231 selectedApi = m_api_list[index];
232 }
233
234 if (dialog()->isPerGameSettings())
235 {
236 if (index == 0)
237 {
238 std::vector<AdapterEntry> list = m_adapter_list[static_cast<u32>(m_api_list[index])];
239 m_ui.ethDev->addItem(tr("Use Global Setting [%1]").arg(QString::fromUtf8(list[0].name)));
240 m_ui.ethDev->setCurrentIndex(0);
241 m_ui.ethDev->setEnabled(false);
242
243 selectedApi = m_global_api;
244 }
245 else
246 m_ui.ethDev->setEnabled(true);
247 }
248
249 switch (selectedApi)
250 {
251#ifdef _WIN32
252 case Pcsx2Config::DEV9Options::NetApi::TAP:
253 m_adapter_options = TAPAdapter::GetAdapterOptions();
254 break;
255#endif
256 case Pcsx2Config::DEV9Options::NetApi::PCAP_Bridged:
257 case Pcsx2Config::DEV9Options::NetApi::PCAP_Switched:
258 m_adapter_options = PCAPAdapter::GetAdapterOptions();
259 break;
260 case Pcsx2Config::DEV9Options::NetApi::Sockets:
261 m_adapter_options = SocketAdapter::GetAdapterOptions();
262 break;
263 default:
264 m_adapter_options = AdapterOptions::None;
265 break;
266 }
267

Callers

nothing calls this directly

Calls 5

isPerGameSettingsMethod · 0.80
argMethod · 0.80
clearMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected