[banshee] [SearchEntry] Implement the Sensitive property (bgo#593956)



commit a0c2f7da59eacf45a0d780d9bcf17b01866ae11e
Author: Alexander Kojevnikov <alexander kojevnikov com>
Date:   Fri Oct 9 16:59:34 2009 +1100

    [SearchEntry] Implement the Sensitive property (bgo#593956)
    
    Setting the property to "false" disables the entry widget
    and both buttons as well as clears the empty message.

 .../Banshee.Widgets/Banshee.Widgets/SearchEntry.cs |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/src/Core/Banshee.Widgets/Banshee.Widgets/SearchEntry.cs b/src/Core/Banshee.Widgets/Banshee.Widgets/SearchEntry.cs
index d0fc344..f2871b0 100644
--- a/src/Core/Banshee.Widgets/Banshee.Widgets/SearchEntry.cs
+++ b/src/Core/Banshee.Widgets/Banshee.Widgets/SearchEntry.cs
@@ -364,7 +364,9 @@ namespace Banshee.Widgets
         }
 
         public string EmptyMessage {
-            get { return empty_message; }
+            get {
+                return entry.Sensitive ? empty_message : String.Empty;
+            }
             set {
                 empty_message = value;
                 entry.QueueDraw();
@@ -395,6 +397,15 @@ namespace Banshee.Widgets
             get { return entry; }
         }
 
+        protected override void OnStateChanged (Gtk.StateType previous_state)
+        {
+            base.OnStateChanged (previous_state);
+
+            entry.Sensitive = State != StateType.Insensitive;
+            filter_button.Sensitive = State != StateType.Insensitive;
+            clear_button.Sensitive = State != StateType.Insensitive;
+        }
+
         private class FilterMenuItem : MenuItem /*CheckMenuItem*/
         {
             private int id;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]