diff options
author | brunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2011-01-02 20:33:36 +0000 |
---|---|---|
committer | brunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2011-01-02 20:33:36 +0000 |
commit | 5f86f14e53b9f107ce030e6cb61efba9f5fc6a4b (patch) | |
tree | ea590adb575a3166a88c0cbf675e8c9b06f43e97 /Game/Code/Screens/UScreenOptionsRecord.pas | |
parent | bb64e99825121cfe68d1139fff855dd44a43674a (diff) | |
download | usdx-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.pas | 47 |
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;
|