diff --git a/OpenAuraSDK/OpenAuraSDKDialog.cpp b/OpenAuraSDK/OpenAuraSDKDialog.cpp index 0c9cd5ed..bba6d1ee 100644 --- a/OpenAuraSDK/OpenAuraSDKDialog.cpp +++ b/OpenAuraSDK/OpenAuraSDKDialog.cpp @@ -27,6 +27,7 @@ BEGIN_MESSAGE_MAP(OpenAuraSDKDialog, CDialogEx) ON_CBN_CLOSEUP(IDC_COMBO_OPENAURASDK_MODE, &OpenAuraSDKDialog::OnCbnCloseupComboOpenaurasdkMode) ON_BN_CLICKED(IDC_BUTTON_OPENAURASDK_SET_ZONE, &OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetZone) ON_BN_CLICKED(IDC_BUTTON_OPENAURASDK_SET_COLORS_LED, &OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetColorsLed) + ON_BN_CLICKED(IDC_BUTTON_OPENAURASDK_SET_COLORS_DEVICE, &OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetColorsDevice) END_MESSAGE_MAP() BOOL OpenAuraSDKDialog::OnInitDialog() @@ -77,15 +78,17 @@ void OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkI2cdetect() void OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetColorsAll() { - CComboBox* controller_box = (CComboBox*)GetDlgItem(IDC_COMBO_OPENAURASDK_DEVICE); - RGBColor color = ToRGBColor( GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_R), GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_G), GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_B) ); - controllers[controller_box->GetCurSel()]->SetAllLEDs(color); + for (int i = 0; i < controllers.size(); i++) + { + controllers[i]->SetCustomMode(); + controllers[i]->SetAllLEDs(color); + } } @@ -161,3 +164,17 @@ void OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetColorsLed() controllers[controller_box->GetCurSel()]->SetLED(led_box->GetCurSel(), color); } + + +void OpenAuraSDKDialog::OnBnClickedButtonOpenaurasdkSetColorsDevice() +{ + CComboBox* controller_box = (CComboBox*)GetDlgItem(IDC_COMBO_OPENAURASDK_DEVICE); + + RGBColor color = ToRGBColor( + GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_R), + GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_G), + GetDlgItemInt(IDC_EDIT_OPENAURASDK_LED_0_B) + ); + + controllers[controller_box->GetCurSel()]->SetAllLEDs(color); +} diff --git a/OpenAuraSDK/OpenAuraSDKDialog.h b/OpenAuraSDK/OpenAuraSDKDialog.h index 72c969a1..3cd1b9db 100644 --- a/OpenAuraSDK/OpenAuraSDKDialog.h +++ b/OpenAuraSDK/OpenAuraSDKDialog.h @@ -32,6 +32,7 @@ public: afx_msg void OnCbnCloseupComboOpenaurasdkMode(); afx_msg void OnBnClickedButtonOpenaurasdkSetZone(); afx_msg void OnBnClickedButtonOpenaurasdkSetColorsLed(); + afx_msg void OnBnClickedButtonOpenaurasdkSetColorsDevice(); }; #endif diff --git a/OpenAuraSDK/RGBController.h b/OpenAuraSDK/RGBController.h index 95c5c3f4..5e38da4b 100644 --- a/OpenAuraSDK/RGBController.h +++ b/OpenAuraSDK/RGBController.h @@ -57,6 +57,7 @@ public: virtual int GetMode() = 0; virtual void SetMode(int mode) = 0; + virtual void SetCustomMode() = 0; virtual void SetAllLEDs(RGBColor color) = 0; virtual void SetAllZoneLEDs(int zone, RGBColor color) = 0; virtual void SetLED(int led, RGBColor color) = 0; diff --git a/OpenAuraSDK/RGBController_AorusGPU.cpp b/OpenAuraSDK/RGBController_AorusGPU.cpp index fa066e31..dff7640f 100644 --- a/OpenAuraSDK/RGBController_AorusGPU.cpp +++ b/OpenAuraSDK/RGBController_AorusGPU.cpp @@ -30,6 +30,11 @@ void RGBController_AorusGPU::SetMode(int mode) } +void RGBController_AorusGPU::SetCustomMode() +{ + +} + void RGBController_AorusGPU::SetAllLEDs(RGBColor color) { data[9] = RGBGetRValue(color); diff --git a/OpenAuraSDK/RGBController_AorusGPU.h b/OpenAuraSDK/RGBController_AorusGPU.h index d303e12e..ad973e03 100644 --- a/OpenAuraSDK/RGBController_AorusGPU.h +++ b/OpenAuraSDK/RGBController_AorusGPU.h @@ -21,6 +21,7 @@ public: RGBController_AorusGPU(); int GetMode(); void SetMode(int mode); + void SetCustomMode(); void SetAllLEDs(RGBColor color); void SetAllZoneLEDs(int zone, RGBColor color); void SetLED(int led, RGBColor color); diff --git a/OpenAuraSDK/RGBController_Aura.cpp b/OpenAuraSDK/RGBController_Aura.cpp index 1fb61e10..12673d1b 100644 --- a/OpenAuraSDK/RGBController_Aura.cpp +++ b/OpenAuraSDK/RGBController_Aura.cpp @@ -34,6 +34,11 @@ void RGBController_Aura::SetMode(int mode) } } +void RGBController_Aura::SetCustomMode() +{ + aura->SetDirect(true); +} + void RGBController_Aura::SetAllLEDs(RGBColor color) { unsigned char red = RGBGetRValue(color); diff --git a/OpenAuraSDK/RGBController_Aura.h b/OpenAuraSDK/RGBController_Aura.h index aa428e60..cb666dba 100644 --- a/OpenAuraSDK/RGBController_Aura.h +++ b/OpenAuraSDK/RGBController_Aura.h @@ -18,6 +18,7 @@ public: RGBController_Aura(AuraController* aura_ptr); int GetMode(); void SetMode(int mode); + void SetCustomMode(); void SetAllLEDs(RGBColor color); void SetAllZoneLEDs(int zone, RGBColor color); void SetLED(int led, RGBColor color); diff --git a/OpenAuraSDK/RGBController_Corsair.cpp b/OpenAuraSDK/RGBController_Corsair.cpp index 8aefbaed..b7ada07d 100644 --- a/OpenAuraSDK/RGBController_Corsair.cpp +++ b/OpenAuraSDK/RGBController_Corsair.cpp @@ -19,6 +19,11 @@ void RGBController_Corsair::SetMode(int mode) corsair->SetMode(mode); } +void RGBController_Corsair::SetCustomMode() +{ + +} + void RGBController_Corsair::SetAllLEDs(RGBColor color) { unsigned char red = RGBGetRValue(color); diff --git a/OpenAuraSDK/RGBController_Corsair.h b/OpenAuraSDK/RGBController_Corsair.h index aebe03f1..a1aa9841 100644 --- a/OpenAuraSDK/RGBController_Corsair.h +++ b/OpenAuraSDK/RGBController_Corsair.h @@ -18,6 +18,7 @@ public: RGBController_Corsair(CorsairController* corsair_ptr); int GetMode(); void SetMode(int mode); + void SetCustomMode(); void SetAllLEDs(RGBColor color); void SetAllZoneLEDs(int zone, RGBColor color); void SetLED(int led, RGBColor color); diff --git a/OpenAuraSDK/RGBController_OpenRazer.cpp b/OpenAuraSDK/RGBController_OpenRazer.cpp index c77fef01..453cc94e 100644 --- a/OpenAuraSDK/RGBController_OpenRazer.cpp +++ b/OpenAuraSDK/RGBController_OpenRazer.cpp @@ -114,6 +114,11 @@ void RGBController_OpenRazer::SetMode(int mode) } +void RGBController_OpenRazer::SetCustomMode() +{ + SetMode(RAZER_MODE_CUSTOM); +} + void RGBController_OpenRazer::SetAllLEDs(RGBColor color) { for(int i = 0; i < color_buffer.size(); i++) diff --git a/OpenAuraSDK/RGBController_OpenRazer.h b/OpenAuraSDK/RGBController_OpenRazer.h index ec3a253b..3a88c063 100644 --- a/OpenAuraSDK/RGBController_OpenRazer.h +++ b/OpenAuraSDK/RGBController_OpenRazer.h @@ -18,6 +18,7 @@ public: RGBController_OpenRazer(std::string dev_path); int GetMode(); void SetMode(int mode); + void SetCustomMode(); void SetAllLEDs(RGBColor color); void SetAllZoneLEDs(int zone, RGBColor color); void SetLED(int led, RGBColor color); diff --git a/OpenAuraSDK/Resource.rc b/OpenAuraSDK/Resource.rc index 5601f1ac..71f82879 100644 Binary files a/OpenAuraSDK/Resource.rc and b/OpenAuraSDK/Resource.rc differ diff --git a/OpenAuraSDK/resource.h b/OpenAuraSDK/resource.h index e5a296b4..37097779 100644 --- a/OpenAuraSDK/resource.h +++ b/OpenAuraSDK/resource.h @@ -27,6 +27,8 @@ #define IDC_BUTTON_OPENAURASDK_SET_COLORS_ALL2 1021 #define IDC_BUTTON_OPENAURASDK_SET_COLORS_LED 1021 #define IDC_EDIT_OPENAURASDK_LED_1_G 1022 +#define IDC_BUTTON_OPENAURASDK_SET_COLORS_ALL3 1022 +#define IDC_BUTTON_OPENAURASDK_SET_COLORS_DEVICE 1022 #define IDC_EDIT_OPENAURASDK_LED_1_B 1023 #define IDC_EDIT_OPENAURASDK_LED_2_R 1024 #define IDC_EDIT_OPENAURASDK_LED_2_G 1025