사용자 컨트롤
플러그인의 사용자 컨트롤은 최종 사용자가 수정할 수 있는 전역 변수 형태를 취합니다. 아래와 같이 설정 객체 배열을 반환하는 ControllableParameters()를 통해 플러그인에서 모두 내보내집니다.
export function ControllableParameters(){ return [ {"property":"LightingMode", "label":"Lighting Mode", "type":"combobox", "values":["Canvas","Forced"], "default":"Canvas"}, {"property":"forcedColor", "label":"Forced Color","min":"0","max":"360","type":"color","default":"#009bde"}, {"property":"SettingControl", "label":"Enable Setting Control","type":"boolean","default":"false"}, {"property":"dpi1", "label":"DPI","step":"50", "type":"number","min":"200", "max":"18000","default":"800"} ];}이 설정 객체들은 항상 몇 가지 기본 매개변수를 가집니다. 이것들은 모든 플러그인 사용자 컨트롤에 유효합니다.
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | 컨트롤의 유형. 현재 다음 옵션이 유효합니다: boolean, number, hue, color, combobox, textfield | String |
| default | 컨트롤의 기본값 | 다양 |
숫자 슬라이더
섹션 제목: “숫자 슬라이더”숫자 컨트롤을 사용하면 슬라이더로 숫자 값을 선택할 수 있습니다.
{"property":"dpi1", "label":"DPI","step":"50", "type":"number","min":"200", "max":"18000","default":"800"},
이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”number” | String |
| default | 컨트롤의 기본값 | String, Int |
| min | 슬라이더의 최솟값. 이 속성은 음수 값을 지원합니다. | String, Int |
| max | 슬라이더의 최댓값 | String, Int |
| step | 슬라이더가 증가 및 감소하는 단계 값 | String, Int |
부울 스위치
섹션 제목: “부울 스위치”부울 컨트롤을 사용하면 토글 컨트롤로 부울 변수의 값을 선택할 수 있습니다.
{"property":"AngleSnap", "label":"Angle Snapping", "type":"boolean", "default":"0"},
이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”boolean” | String |
| default | 토글의 기본값. “켜짐”을 기본 상태로 하려면 1로 설정하십시오. | String, Int |
색조 슬라이더
섹션 제목: “색조 슬라이더”색조 선택기 컨트롤을 사용하면 슬라이더 컨트롤로 색상의 색조 구성 요소를 선택할 수 있습니다.

이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”hue” | String, Int |
| default | 색조 슬라이더의 기본값 | String |
| min | 최소 선택 가능한 색조 값. 이 값은 0~359 사이여야 합니다. | String, Int |
| max | 최대 선택 가능한 색조 값. 이 값은 1~360 사이여야 합니다. | String, Int |
색상 선택기
섹션 제목: “색상 선택기”색상 컨트롤을 사용하면 색조 휠, 채도 슬라이더, 밝기 슬라이더를 사용하여 색상을 선택할 수 있습니다. 렌치 아이콘은 더 고급 색상 팔레트를 열어 선택할 수 있습니다.
{"property":"forcedColor", "label":"Forced Color","min":"0","max":"360","type":"color","default":"#009bde"},
이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”color” | String |
| default | 색상 선택기의 기본값. #RRGGBB 형식의 16진수 값으로 지정해야 합니다. | String |
| min | 최소 선택 가능한 색조 값. 이 값은 0~359 사이여야 합니다. | Int |
| max | 최대 선택 가능한 색조 값. 이 값은 1~360 사이여야 합니다. | Int |
콤보 박스
섹션 제목: “콤보 박스”콤보 박스 컨트롤을 사용하면 미리 설정된 값의 드롭다운 메뉴에서 선택할 수 있습니다.
{"property":"SleepModeTime", "label":"Sleep After x Minutes", "type":"combobox", "values":[5,10,15,30,60], "default":10},
이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”combobox” | String |
| default | 콤보 박스의 기본값. 이 값은 values 배열에 있어야 합니다. | String, Int |
| values | 드롭다운 메뉴의 값 배열. 유효한 유형은 문자열과 정수입니다. | [String, Int] |
텍스트 필드
섹션 제목: “텍스트 필드”텍스트 필드 컨트롤을 사용하면 선택적 정규식 필터를 사용하여 텍스트를 자유롭게 입력할 수 있습니다.
{"property":"textBox", "label":"Text Field", "type":"textfield", "default":"3"},
이 컨트롤은 다음 속성을 지원합니다:
| 매개변수 | 값 | 유형 |
|---|---|---|
| property | 컨트롤에 할당할 변수의 이름 | String |
| label | 사용자에게 표시할 레이블 | String |
| type | ”textfield” | String |
| default | 텍스트 필드의 기본값 | String, Int |
| filter | 사용자 입력을 제한하는 선택적 정규식 필터 | RegEx String |
on*Changed 콜백
섹션 제목: “on*Changed 콜백”사용자가 컨트롤을 변경할 때마다 SignalRGB는 다음 Render() 호출 전에 해당하는 on[property]Changed() 함수를 호출합니다. 함수 이름은 ControllableParameters()의 property 이름과 정확히 일치해야 하며, 앞에 on을, 뒤에 Changed를 붙입니다. 대소문자를 구분합니다.
// ControllableParameters entry:{"property":"dpi1", "label":"DPI", "step":"50", "type":"number", "min":"200", "max":"18000", "default":"800"},
// Corresponding callback:export function ondpi1Changed() { setDpi(dpi1);}내장 콜백
섹션 제목: “내장 콜백”이 콜백들은 해당하는 ControllableParameters 항목 없이도 사용할 수 있습니다:
| 함수 | 설명 |
|---|---|
onBrightnessChanged() | 사용자가 장치의 주 밝기 슬라이더를 움직일 때 호출됩니다. |