void DeviceEditWidget::UpdateVisibilities() { const DeviceConfig::PortType type = GetPortType(GetDataField(Port)); const bool maybe_bluetooth = DeviceConfig::MaybeBluetooth(type, GetDataField(Port).GetAsString()); const bool k6bt = maybe_bluetooth && GetValueBoolean(K6Bt); const bool uses_speed = DeviceConfig::UsesSpeed(type) || k6bt; SetRowAvailable(BaudRate, uses_speed); SetRowAvailable(BulkBaudRate, uses_speed && DeviceConfig::UsesDriver(type)); SetRowVisible(BulkBaudRate, uses_speed && DeviceConfig::UsesDriver(type) && SupportsBulkBaudRate(GetDataField(Driver))); SetRowAvailable(IP_ADDRESS, DeviceConfig::UsesIPAddress(type)); SetRowAvailable(TCPPort, DeviceConfig::UsesTCPPort(type)); SetRowAvailable(I2CBus, DeviceConfig::UsesI2C(type)); SetRowAvailable(I2CAddr, DeviceConfig::UsesI2C(type) && type != DeviceConfig::PortType::NUNCHUCK); SetRowAvailable(PressureUsage, DeviceConfig::IsPressureSensor(type)); SetRowVisible(Driver, DeviceConfig::UsesDriver(type)); SetRowVisible(SyncFromDevice, DeviceConfig::UsesDriver(type) && CanReceiveSettings(GetDataField(Driver))); SetRowVisible(SyncToDevice, DeviceConfig::UsesDriver(type) && CanSendSettings(GetDataField(Driver))); SetRowAvailable(K6Bt, maybe_bluetooth); }
void DeviceEditWidget::UpdateVisibilities() { const DeviceConfig::PortType type = GetPortType(GetDataField(Port)); SetRowAvailable(BaudRate, DeviceConfig::UsesSpeed(type)); SetRowAvailable(BulkBaudRate, DeviceConfig::UsesSpeed(type) && DeviceConfig::UsesDriver(type)); SetRowVisible(BulkBaudRate, DeviceConfig::UsesSpeed(type) && DeviceConfig::UsesDriver(type) && SupportsBulkBaudRate(GetDataField(Driver))); SetRowAvailable(TCPPort, DeviceConfig::UsesTCPPort(type)); SetRowVisible(Driver, DeviceConfig::UsesDriver(type)); SetRowVisible(SyncFromDevice, DeviceConfig::UsesDriver(type) && CanReceiveSettings(GetDataField(Driver))); SetRowVisible(SyncToDevice, DeviceConfig::UsesDriver(type) && CanSendSettings(GetDataField(Driver))); SetRowVisible(IgnoreCheckSum, DeviceConfig::UsesDriver(type)); }