diff --git a/Controllers/HyperXMousematController/HyperXMousematController.cpp b/Controllers/HyperXMousematController/HyperXMousematController.cpp index a627bfdd..5f560b9d 100644 --- a/Controllers/HyperXMousematController/HyperXMousematController.cpp +++ b/Controllers/HyperXMousematController/HyperXMousematController.cpp @@ -13,11 +13,12 @@ #include "HyperXMousematController.h" #include "StringUtils.h" -HyperXMousematController::HyperXMousematController(hidapi_wrapper hid_wrapper, hid_device* dev_handle, const char* path) +HyperXMousematController::HyperXMousematController(hidapi_wrapper hid_wrapper, hid_device* dev_handle, const char* path, std::string dev_name) { wrapper = hid_wrapper; dev = dev_handle; location = path; + name = dev_name; } HyperXMousematController::~HyperXMousematController() @@ -30,6 +31,11 @@ std::string HyperXMousematController::GetDeviceLocation() return("HID " + location); } +std::string HyperXMousematController::GetNameString() +{ + return(name); +} + std::string HyperXMousematController::GetSerialString() { wchar_t serial_string[128]; diff --git a/Controllers/HyperXMousematController/HyperXMousematController.h b/Controllers/HyperXMousematController/HyperXMousematController.h index 8e3ce3fa..2aff01ca 100644 --- a/Controllers/HyperXMousematController/HyperXMousematController.h +++ b/Controllers/HyperXMousematController/HyperXMousematController.h @@ -18,10 +18,11 @@ class HyperXMousematController { public: - HyperXMousematController(hidapi_wrapper hid_wrapper, hid_device* dev_handle, const char* path); + HyperXMousematController(hidapi_wrapper hid_wrapper, hid_device* dev_handle, const char* path, std::string dev_name); ~HyperXMousematController(); std::string GetDeviceLocation(); + std::string GetNameString(); std::string GetSerialString(); void SendDirect @@ -33,4 +34,5 @@ private: hidapi_wrapper wrapper; hid_device* dev; std::string location; + std::string name; }; diff --git a/Controllers/HyperXMousematController/HyperXMousematControllerDetect.cpp b/Controllers/HyperXMousematController/HyperXMousematControllerDetect.cpp index abe979b2..5ea4f875 100644 --- a/Controllers/HyperXMousematController/HyperXMousematControllerDetect.cpp +++ b/Controllers/HyperXMousematController/HyperXMousematControllerDetect.cpp @@ -41,9 +41,8 @@ void DetectHyperXMousematControllers(hidapi_wrapper wrapper, hid_device_info* in int first_zone_leds_count = info->product_id == HYPERX_FURY_A_XL_PID ? 2 : 15; int second_zone_leds_count = info->product_id == HYPERX_FURY_A_XL_PID ? 0 : 5; - HyperXMousematController* controller = new HyperXMousematController(wrapper, dev, info->path); + HyperXMousematController* controller = new HyperXMousematController(wrapper, dev, info->path, name); RGBController_HyperXMousemat* rgb_controller = new RGBController_HyperXMousemat(controller, first_zone_leds_count, second_zone_leds_count); - rgb_controller->name = name; ResourceManager::get()->RegisterRGBController(rgb_controller); } diff --git a/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp b/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp index 685aa669..6b2800c7 100644 --- a/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp +++ b/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp @@ -24,29 +24,24 @@ using namespace std::chrono_literals; @comment \*-------------------------------------------------------------------*/ -RGBController_HyperXMousemat::RGBController_HyperXMousemat -( - HyperXMousematController* controller_ptr, - unsigned int first_zone_leds_count_arg, - unsigned int second_zone_leds_count_arg -) +RGBController_HyperXMousemat::RGBController_HyperXMousemat(HyperXMousematController* controller_ptr, unsigned int first_zone_leds_count_arg, unsigned int second_zone_leds_count_arg) { controller = controller_ptr; first_zone_leds_count = first_zone_leds_count_arg; second_zone_leds_count = second_zone_leds_count_arg; - name = "HyperX Mousemat Device"; - vendor = "HyperX"; - type = DEVICE_TYPE_MOUSEMAT; - description = "HyperX Mousemat Device"; - location = controller->GetDeviceLocation(); - serial = controller->GetSerialString(); + name = controller->GetNameString(); + vendor = "HyperX"; + type = DEVICE_TYPE_MOUSEMAT; + description = "HyperX Mousemat Device"; + location = controller->GetDeviceLocation(); + serial = controller->GetSerialString(); mode Direct; - Direct.name = "Direct"; - Direct.value = 0xFFFF; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; - Direct.color_mode = MODE_COLORS_PER_LED; + Direct.name = "Direct"; + Direct.value = 0xFFFF; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; + Direct.color_mode = MODE_COLORS_PER_LED; modes.push_back(Direct); SetupZones();