From 70fdf54d5e4d954717526715ba1b0635ef42b8c5 Mon Sep 17 00:00:00 2001 From: Chris Date: Wed, 8 Jun 2022 12:19:26 +1000 Subject: [PATCH] Adding DEVICE_TYPE_MICROPHONE to enum + Adding microphone icons for light and dark theme + Adding entry into OpenRGBDialog2 to display icon + Creating `Microphone` category in "Supported Devices" + Changing Razer Seiren Emote to a `Microphone` --- .../RazerController/RGBController_Razer.cpp | 2 +- Controllers/RazerController/RazerDevices.h | 2 +- RGBController/RGBController.h | 8 ++++++-- qt/OpenRGBDialog2.cpp | 3 +++ qt/microphone.png | Bin 0 -> 1513 bytes qt/microphone_dark.png | Bin 0 -> 1583 bytes qt/resources.qrc | 2 ++ scripts/build-supported-devices-md.sh | 10 +++++++++- 8 files changed, 22 insertions(+), 5 deletions(-) create mode 100644 qt/microphone.png create mode 100644 qt/microphone_dark.png diff --git a/Controllers/RazerController/RGBController_Razer.cpp b/Controllers/RazerController/RGBController_Razer.cpp index c2e2e3fc..fec4f410 100644 --- a/Controllers/RazerController/RGBController_Razer.cpp +++ b/Controllers/RazerController/RGBController_Razer.cpp @@ -3,7 +3,7 @@ /**------------------------------------------------------------------*\ @name Razer - @category Keyboard,Mouse,Mousemat,HeadsetStand,Case + @category Keyboard,Microphone,Mouse,Mousemat,HeadsetStand,Case @type USB @save :warning: @direct :white_check_mark: diff --git a/Controllers/RazerController/RazerDevices.h b/Controllers/RazerController/RazerDevices.h index 920bcf65..520f578f 100644 --- a/Controllers/RazerController/RazerDevices.h +++ b/Controllers/RazerController/RazerDevices.h @@ -7947,7 +7947,7 @@ static const razer_device seiren_emote_device = { "Razer Seiren Emote", RAZER_SEIREN_EMOTE_PID, - DEVICE_TYPE_UNKNOWN, + DEVICE_TYPE_MICROPHONE, true, 4, 16, diff --git a/RGBController/RGBController.h b/RGBController/RGBController.h index 1e460726..e7d73ac3 100644 --- a/RGBController/RGBController.h +++ b/RGBController/RGBController.h @@ -86,7 +86,7 @@ public: unsigned int brightness_max; /*brightness max value */ unsigned int colors_min; /* minimum number of mode colors*/ unsigned int colors_max; /* maximum numver of mode colors*/ - + /*--------------------------------------------------------------*\ | Mode Settings | \*--------------------------------------------------------------*/ @@ -153,6 +153,9 @@ typedef struct /*------------------------------------------------------------------*\ | Device Types | +| The enum order should be maintained as is for the API however | +| DEVICE_TYPE_UNKNOWN needs to remain last. Any new device types | +| need to be inserted at the end of the list but before unknown. | \*------------------------------------------------------------------*/ typedef int device_type; @@ -174,7 +177,8 @@ enum DEVICE_TYPE_VIRTUAL, DEVICE_TYPE_STORAGE, DEVICE_TYPE_CASE, - DEVICE_TYPE_UNKNOWN + DEVICE_TYPE_MICROPHONE, + DEVICE_TYPE_UNKNOWN, }; /*------------------------------------------------------------------*\ diff --git a/qt/OpenRGBDialog2.cpp b/qt/OpenRGBDialog2.cpp index 56863ef6..46ad0553 100644 --- a/qt/OpenRGBDialog2.cpp +++ b/qt/OpenRGBDialog2.cpp @@ -51,6 +51,9 @@ static QString GetIconString(device_type type, bool dark) case DEVICE_TYPE_KEYBOARD: filename = "keyboard"; break; + case DEVICE_TYPE_MICROPHONE: + filename = "microphone"; + break; case DEVICE_TYPE_MOUSE: filename = "mouse"; break; diff --git a/qt/microphone.png b/qt/microphone.png new file mode 100644 index 0000000000000000000000000000000000000000..6f344dc7ed6828666a9ee9c155305ef2e81161b8 GIT binary patch literal 1513 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 literal 0 HcmV?d00001 diff --git a/qt/resources.qrc b/qt/resources.qrc index 41a2cd5e..671d3410 100644 --- a/qt/resources.qrc +++ b/qt/resources.qrc @@ -50,5 +50,7 @@ case.png case_dark.png OpenRGBGreyscale.png + microphone.png + microphone_dark.png diff --git a/scripts/build-supported-devices-md.sh b/scripts/build-supported-devices-md.sh index d951cad7..c9317c7b 100755 --- a/scripts/build-supported-devices-md.sh +++ b/scripts/build-supported-devices-md.sh @@ -43,6 +43,7 @@ echo -e "- [Graphics Cards](#graphics-cards)" >> "$MAIN_FILE" echo -e "- [Coolers](#coolers)" >> "$MAIN_FILE" echo -e "- [LED Strips](#led-strips)" >> "$MAIN_FILE" echo -e "- [Keyboards](#keyboards)" >> "$MAIN_FILE" +echo -e "- [Microphones](#microphones)" >> "$MAIN_FILE" echo -e "- [Mice](#mouse)" >> "$MAIN_FILE" echo -e "- [Mouse Mats](#mouse-mats)" >> "$MAIN_FILE" echo -e "- [Headsets](#headsets)" >> "$MAIN_FILE" @@ -134,6 +135,9 @@ do Keyboard) keyboard+=$current_controller ;; + Microphone) + microphone+=$current_controller + ;; Mouse) mouse+=$current_controller ;; @@ -218,10 +222,13 @@ do table_row=$(printf '| `%s:%s` | `%s:%s` | %s |' "${vid}" "${pid/ /}" "${svid}" "${spid/ /}" "${device_name}") ;; *) + table_row="" ;; esac - echo -e "$table_row" >>"$outfile" + if [[ $table_row = *[![:blank:]]* ]]; then + echo -e "$table_row" >>"$outfile" + fi done <<< "$text" done <<< "$detectors" fi @@ -233,6 +240,7 @@ printf "\n## Graphics Cards\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo printf "\n## Coolers\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${cooler}| sort)" >> "$MAIN_FILE" printf "\n## LED Strips\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${ledstrip}| sort)" >> "$MAIN_FILE" printf "\n## Keyboards\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${keyboard}| sort)" >> "$MAIN_FILE" +printf "\n## Microphones\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${microphone}| sort)" >> "$MAIN_FILE" printf "\n## Mice\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${mouse}| sort)" >> "$MAIN_FILE" printf "\n## Mouse Mats\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${mousemat}| sort)" >> "$MAIN_FILE" printf "\n## Headsets\n${DATA_TABLE_HEAD}${DATA_TABLE_ALIGN}%s\n" "$(echo -e ${headset}| sort)" >> "$MAIN_FILE"