aboutsummaryrefslogtreecommitdiffstats
path: root/Game/Code/Screens/UScreenOptionsRecord.pas
diff options
context:
space:
mode:
authorbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2011-01-02 20:33:36 +0000
committerbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2011-01-02 20:33:36 +0000
commit5f86f14e53b9f107ce030e6cb61efba9f5fc6a4b (patch)
treeea590adb575a3166a88c0cbf675e8c9b06f43e97 /Game/Code/Screens/UScreenOptionsRecord.pas
parentbb64e99825121cfe68d1139fff855dd44a43674a (diff)
downloadusdx-5f86f14e53b9f107ce030e6cb61efba9f5fc6a4b.tar.gz
usdx-5f86f14e53b9f107ce030e6cb61efba9f5fc6a4b.tar.xz
usdx-5f86f14e53b9f107ce030e6cb61efba9f5fc6a4b.zip
- fix: crash at startup if no webcam connected
- some string updates git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.0.1 Challenge MOD@2786 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Screens/UScreenOptionsRecord.pas')
-rw-r--r--Game/Code/Screens/UScreenOptionsRecord.pas47
1 files changed, 34 insertions, 13 deletions
diff --git a/Game/Code/Screens/UScreenOptionsRecord.pas b/Game/Code/Screens/UScreenOptionsRecord.pas
index 3ff73cca..807e1cfb 100644
--- a/Game/Code/Screens/UScreenOptionsRecord.pas
+++ b/Game/Code/Screens/UScreenOptionsRecord.pas
@@ -146,14 +146,22 @@ begin
if (Length(IWebCamDevice)-1 < Ini.WebCamID) then
Ini.WebCamID := 0;
- IWebCamMedia := ListMediaTypes(Ini.WebCamID);
+ ListMediaTypes(Ini.WebCamID, IWebCamMedia);
- SelectSlideWebCamDevice := AddSelectSlide(Theme.OptionsRecord.SelectSlideWebCamDevice, Ini.WebCamID, IWebCamDevice);
- SelectSlideWebCamMedia := AddSelectSlide(Theme.OptionsRecord.SelectSlideWebCamMedia, Ini.WebCamMediaID, IWebCamMedia);
+ if (Length(IWebCamMedia)=0) then
+ begin
+ Ini.EnableWebCam := 0;
+ WebCamPreviewOn := false;
+ end else
+ begin
+ SelectSlideWebCamDevice := AddSelectSlide(Theme.OptionsRecord.SelectSlideWebCamDevice, Ini.WebCamID, IWebCamDevice);
+ SelectSlideWebCamMedia := AddSelectSlide(Theme.OptionsRecord.SelectSlideWebCamMedia, Ini.WebCamMediaID, IWebCamMedia);
- WebCamPreviewOn := (Ini.EnableWebCam=1);
+ WebCamPreviewOn := (Ini.EnableWebCam=1);
+ end;
end else
WebCamPreviewOn := false;
+
AddButton(Theme.OptionsRecord.ButtonExit);
if (Length(Button[0].Text)=0) then
AddButtonText(14, 20, Theme.Options.Description[7]);
@@ -174,12 +182,18 @@ begin
if (Length(IWebCamDevice)-1 < Ini.WebCamID) then
Ini.WebCamID := 0;
- IWebCamMedia := ListMediaTypes(Ini.WebCamID);
-
- UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideCard, SelectSlideWebCamDevice, IWebCamDevice, Ini.WebCamID);
- UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideInput, SelectSlideWebCamMedia, IWebCamMedia, Ini.WebCamMediaID);
+ ListMediaTypes(Ini.WebCamID, IWebCamMedia);
- WebCamPreviewOn := (Ini.EnableWebCam=1);
+ if (Length(IWebCamMedia)=0) then
+ begin
+ Ini.EnableWebCam := 0;
+ WebCamPreviewOn := false;
+ end else
+ begin
+ UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideCard, SelectSlideWebCamDevice, IWebCamDevice, Ini.WebCamID);
+ UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideInput, SelectSlideWebCamMedia, IWebCamMedia, Ini.WebCamMediaID);
+ WebCamPreviewOn := (Ini.EnableWebCam=1);
+ end;
end else
WebCamPreviewOn := false;
@@ -237,12 +251,19 @@ begin
if (Length(IWebCamDevice)-1 < Ini.WebCamID) then
Ini.WebCamID := 0;
- IWebCamMedia := ListMediaTypes(Ini.WebCamID);
+ ListMediaTypes(Ini.WebCamID, IWebCamMedia);
- UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideWebCamDevice, SelectSlideWebCamDevice, IWebCamDevice, Ini.WebCamID);
- UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideWebCamMedia, SelectSlideWebCamMedia, IWebCamMedia, Ini.WebCamMediaID);
+ if (Length(IWebCamMedia)=0) then
+ begin
+ Ini.EnableWebCam := 0;
+ WebCamPreviewOn := false;
+ end else
+ begin
+ UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideWebCamDevice, SelectSlideWebCamDevice, IWebCamDevice, Ini.WebCamID);
+ UpdateSelectSlideOptions(Theme.OptionsRecord.SelectSlideWebCamMedia, SelectSlideWebCamMedia, IWebCamMedia, Ini.WebCamMediaID);
- WebCamPreviewOn := (Ini.EnableWebCam=1);
+ WebCamPreviewOn := (Ini.EnableWebCam=1);
+ end;
end else
WebCamPreviewOn := false;