Add disabled param for PhotonCamera (#2484)

This commit is contained in:
Matt Morley
2026-05-16 07:41:59 -07:00
committed by GitHub
parent 0e834f0851
commit 996ca3649e
14 changed files with 231 additions and 28 deletions

View File

@@ -91,6 +91,9 @@ export const useCameraSettingsStore = defineStore("cameraSettings", {
fpsLimit(): number {
return this.currentCameraSettings.fpsLimit;
},
isEnabled(): boolean {
return this.currentCameraSettings.isEnabled;
},
isConnected(): boolean {
return this.currentCameraSettings.isConnected;
},
@@ -142,6 +145,7 @@ export const useCameraSettingsStore = defineStore("cameraSettings", {
maxWhiteBalanceTemp: d.maxWhiteBalanceTemp,
matchedCameraInfo: d.matchedCameraInfo,
fpsLimit: d.fpsLimit,
isEnabled: d.isEnabled,
isConnected: d.isConnected,
hasConnected: d.hasConnected,
mismatch: d.mismatch

View File

@@ -276,6 +276,7 @@ export interface UiCameraConfiguration {
maxWhiteBalanceTemp: number;
fpsLimit: number;
isEnabled: boolean;
matchedCameraInfo: PVCameraInfo;
isConnected: boolean;
@@ -447,6 +448,7 @@ export const PlaceholderCameraSettings: UiCameraConfiguration = reactive({
PVUsbCameraInfo: undefined
},
fpsLimit: -1,
isEnabled: true,
isConnected: true,
hasConnected: true,
mismatch: false

View File

@@ -68,6 +68,7 @@ export interface WebsocketCameraSettingsUpdate {
maxWhiteBalanceTemp: number;
matchedCameraInfo: PVCameraInfo;
fpsLimit: number;
isEnabled: boolean;
isConnected: boolean;
hasConnected: boolean;
mismatch: boolean;

View File

@@ -77,8 +77,18 @@ const conflictingCameraShown = computed<boolean>(() => {
return useSettingsStore().general.conflictingCameras.length > 0;
});
const fpsLimitWarningShown = computed<boolean>(() => {
return Object.values(useCameraSettingsStore().cameras).some((c) => c.fpsLimit > 0);
const fpsLimitedCameras = computed<string>(() => {
return Object.values(useCameraSettingsStore().cameras)
.filter((c) => c.fpsLimit > 0)
.map((c) => c.nickname)
.join(", ");
});
const disabledCameras = computed<string>(() => {
return Object.values(useCameraSettingsStore().cameras)
.filter((c) => !c.isEnabled)
.map((c) => c.nickname)
.join(", ");
});
const showCameraSetupDialog = ref(useCameraSettingsStore().needsCameraConfiguration);
@@ -111,7 +121,7 @@ const showCameraSetupDialog = ref(useCameraSettingsStore().needsCameraConfigurat
</span>
</v-alert>
<v-alert
v-if="fpsLimitWarningShown"
v-if="fpsLimitedCameras"
class="mb-3"
color="error"
density="compact"
@@ -119,10 +129,22 @@ const showCameraSetupDialog = ref(useCameraSettingsStore().needsCameraConfigurat
:variant="theme.global.current.value.dark ? 'tonal' : 'elevated'"
>
<span
>One or more cameras have an FPS limit set! This may cause performance issues. Check your logs for more
>{{ fpsLimitedCameras }} have an FPS limit set! This may cause performance issues. Check your logs for more
information.
</span>
</v-alert>
<v-alert
v-if="disabledCameras"
class="mb-3"
color="error"
density="compact"
icon="mdi-alert-circle-outline"
:variant="theme.global.current.value.dark ? 'tonal' : 'elevated'"
>
<span
>{{ disabledCameras }} are disabled! This may cause performance issues. Check your logs for more information.
</span>
</v-alert>
<v-alert
v-if="conflictingCameraShown"
class="mb-3"