CecTray: display a warning if we can't poll the TV
authorLars Op den Kamp <lars@opdenkamp.eu>
Tue, 12 Mar 2013 23:37:10 +0000 (00:37 +0100)
committerLars Op den Kamp <lars@opdenkamp.eu>
Tue, 12 Mar 2013 23:48:10 +0000 (00:48 +0100)
src/LibCecTray/Properties/Resources.Designer.cs
src/LibCecTray/Properties/Resources.resx
src/LibCecTray/controller/CECController.cs
src/LibCecTray/controller/actions/ConnectToDevice.cs

index 525ed2dd6813cdedfd8681940660956e5f58565b..e43f8560c3b8074b6d74b9d886ce69212d29df04 100644 (file)
@@ -340,7 +340,12 @@ namespace LibCECTray.Properties {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to The TV does not respond to polls. This is caused by one of the following: a) the TV does not support CEC, or b) CEC has been disabled in the TV&apos;s settings or c) the HDMI cable between the TV and adapter is faulty..
+        ///   Looks up a localized string similar to The TV does not respond to CEC polls. This is caused by one of the following:
+        ///a) the TV does not support CEC;
+        ///b) CEC has been disabled in the TV&apos;s settings;
+        ///c) the HDMI cable between the TV and adapter is faulty.
+        ///
+        ///CEC will not work (properly) if the TV does not support CEC, or has CEC disabled in it&apos;s settings..
         /// </summary>
         internal static string alert_tv_poll_failed {
             get {
index 6da4722f62fcdb42d089e68027a6fabcee12539f..1daef7c2457d0461829b942cbe239e3f9cf3856b 100644 (file)
     <value>The device needs servicing. Please download and run the latest firmware upgrade from http://packages.pulse-eight.net/</value>
   </data>
   <data name="alert_tv_poll_failed" xml:space="preserve">
-    <value>The TV does not respond to polls. This is caused by one of the following: a) the TV does not support CEC, or b) CEC has been disabled in the TV's settings or c) the HDMI cable between the TV and adapter is faulty.</value>
+    <value>The TV does not respond to CEC polls. This is caused by one of the following:
+a) the TV does not support CEC;
+b) CEC has been disabled in the TV's settings;
+c) the HDMI cable between the TV and adapter is faulty.
+
+CEC will not work (properly) if the TV does not support CEC, or has CEC disabled in it's settings.</value>
   </data>
   <data name="cec_alert" xml:space="preserve">
     <value>Warning from libCEC</value>
index c394c08f336bd7e1f099fda73d76eb50df7a6263..6db226790f1ff7adb0036c1c97708b122bd23b00 100644 (file)
@@ -372,22 +372,22 @@ namespace LibCECTray.controller
       switch (alert)
       {
         case CecAlert.ServiceDevice:
-          MessageBox.Show(Resources.alert_service_device, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_service_device, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
         case CecAlert.ConnectionLost:
-          MessageBox.Show(Resources.alert_connection_lost, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_connection_lost, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
         case CecAlert.PermissionError:
-          MessageBox.Show(Resources.alert_permission_error, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_permission_error, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
         case CecAlert.PortBusy:
-          MessageBox.Show(Resources.alert_port_busy, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_port_busy, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
         case CecAlert.PhysicalAddressError:
-          MessageBox.Show(Resources.alert_physical_address_error, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_physical_address_error, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
         case CecAlert.TVPollFailed:
-          MessageBox.Show(Resources.alert_tv_poll_failed, Resources.cec_alert, MessageBoxButtons.OK);
+          MessageBox.Show(Resources.alert_tv_poll_failed, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
           break;
       }
       return 1;
index f2ccfc054f722a9a74d463ed2000313d3bb180ac..6a832c5f9096c48b8ce71b1b9181dbfb3cf687a6 100644 (file)
@@ -108,6 +108,11 @@ namespace LibCECTray.controller.actions
       SendEvent(UpdateEventType.StatusText, Resources.action_polling_active_devices);
       SendEvent(UpdateEventType.PollDevices);
 
+      if (!_lib.IsActiveDevice(CecLogicalAddress.Tv))
+      {
+        MessageBox.Show(Resources.alert_tv_poll_failed, Resources.cec_alert, MessageBoxButtons.OK, MessageBoxIcon.Warning);
+      }
+
       SendEvent(UpdateEventType.ProgressBar, 100);
       SendEvent(UpdateEventType.StatusText, Resources.ready);
     }