Author: yourpalal Date: 2011-01-07 03:02:44 +0100 (Fri, 07 Jan 2011) New Revision: 40139 Changeset: http://dev.haiku-os.org/changeset/40139 Ticket: http://dev.haiku-os.org/ticket/6012 Modified: haiku/trunk/src/preferences/media/MediaViews.cpp haiku/trunk/src/preferences/media/MediaViews.h Log: In Media preflet, use BAlert to inform users that real-time audio/video is not supported (as per MediaRoster.cpp:3061). This fixes ticket #6012. Modified: haiku/trunk/src/preferences/media/MediaViews.cpp =================================================================== --- haiku/trunk/src/preferences/media/MediaViews.cpp 2011-01-06 23:35:04 UTC (rev 40138) +++ haiku/trunk/src/preferences/media/MediaViews.cpp 2011-01-07 02:02:44 UTC (rev 40139) @@ -14,6 +14,7 @@ // ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ #include "MediaViews.h" +#include <Alert.h> #include <AutoDeleter.h> #include <Box.h> #include <Button.h> @@ -232,6 +233,12 @@ void SettingsView::_FlipRealtimeFlag(uint32 mask) { + fRealtimeCheckBox->SetValue(B_CONTROL_OFF); + BAlert* alert = new BAlert("realtime alert", UnimplementedRealtimeError(), + B_TRANSLATE("OK"), NULL, NULL, B_WIDTH_AS_USUAL, B_WARNING_ALERT); + alert->Go(); + +#if 0 // TODO: error codes uint32 flags = 0; BMediaRoster* roster = BMediaRoster::Roster(); @@ -241,6 +248,7 @@ else flags |= mask; roster->SetRealtimeFlags(flags); +#endif } @@ -409,6 +417,13 @@ } +BString +AudioSettingsView::UnimplementedRealtimeError() +{ + return B_TRANSLATE("Real-time audio is currently unimplemented in Haiku."); +} + + void AudioSettingsView::MessageReceived(BMessage* message) { @@ -637,3 +652,11 @@ _MediaWindow()->UpdateOutputListItem(MediaListItem::VIDEO_TYPE, info); BMediaRoster::Roster()->SetVideoOutput(*info); } + + +BString +VideoSettingsView::UnimplementedRealtimeError() +{ + return B_TRANSLATE("Real-time video is currently unimplemented in Haiku."); +} + Modified: haiku/trunk/src/preferences/media/MediaViews.h =================================================================== --- haiku/trunk/src/preferences/media/MediaViews.h 2011-01-06 23:35:04 UTC (rev 40138) +++ haiku/trunk/src/preferences/media/MediaViews.h 2011-01-07 02:02:44 UTC (rev 40139) @@ -26,6 +26,7 @@ class BCheckBox; class BMenu; class BMenuField; +class BString; class BStringView; class MediaWindow; @@ -85,6 +86,7 @@ virtual void AttachedToWindow(); void RestartRequired(bool required); + virtual BString UnimplementedRealtimeError() = 0; protected: @@ -130,6 +132,8 @@ virtual void MessageReceived(BMessage* message); virtual void AttachedToWindow(); + virtual BString UnimplementedRealtimeError(); + private: BMenuField* _MakeChannelMenu(); BCheckBox* _MakeVolumeCheckBox(); @@ -153,6 +157,7 @@ virtual void SetDefaultInput(const dormant_node_info* info); virtual void SetDefaultOutput(const dormant_node_info* info); + virtual BString UnimplementedRealtimeError(); }; #endif