bool
BluetoothSettingsView::_SetDeviceClass(uint8 major, uint8 minor, uint16 service)
{
	bool haveRun = true;
	
	DeviceClass devClass;
	devClass.SetRecord(major, minor, service);
	if (ActiveLocalDevice != NULL)
		ActiveLocalDevice->SetDeviceClass(devClass);
	else
		haveRun = false;
		
	return haveRun;
}
void
BluetoothSettingsView::MessageReceived(BMessage* message)
{

	DeviceClass devClass;

	switch (message->what) {
		case kMsgLocalSwitched:
		{
			LocalDevice* lDevice;
			if (message->FindPointer("LocalDevice", (void**) &lDevice) == B_OK) {
				// Device integrity should be rechecked
				fExtDeviceView->SetLocalDevice(lDevice);
				fExtDeviceView->SetEnabled(true);
				ActiveLocalDevice = lDevice;
			}
		}
		break;

		case kMsgSetDeviceClassDesktop:
		{
			devClass.SetRecord(1, 1, 0x72);
			if (ActiveLocalDevice != NULL)
				ActiveLocalDevice->SetDeviceClass(devClass);
			break;
		}

		case kMsgSetDeviceClassServer:
		{
			devClass.SetRecord(1, 2, 0x72);
			if (ActiveLocalDevice != NULL)
				ActiveLocalDevice->SetDeviceClass(devClass);
			break;
		}

		case kMsgSetDeviceClassLaptop:
		{
			devClass.SetRecord(1, 3, 0x72);
			if (ActiveLocalDevice != NULL)
				ActiveLocalDevice->SetDeviceClass(devClass);
			break;
		}

		case kMsgSetDeviceClassHandheld:
		{
			devClass.SetRecord(1, 4, 0x72);
			if (ActiveLocalDevice != NULL)
				ActiveLocalDevice->SetDeviceClass(devClass);
			break;
		}

		case kMsgSetDeviceClassSmartPhone:
		{
			devClass.SetRecord(2, 3, 0x72);
			if (ActiveLocalDevice != NULL)
				ActiveLocalDevice->SetDeviceClass(devClass);
			break;
		}

		case kMsgRefresh:
			_BuildLocalDevicesMenu();
			fLocalDevicesMenu->SetTargetForItems(this);
		break;
		default:
			BView::MessageReceived(message);
	}
}