~ubuntu-branches/ubuntu/lucid/docky/lucid-proposed

« back to all changes in this revision

Viewing changes to StandardPlugins/BatteryMonitor/src/BatteryMonitorItemProvider.cs

  • Committer: Bazaar Package Importer
  • Author(s): Christopher James Halse Rogers
  • Date: 2010-02-17 15:10:07 UTC
  • Revision ID: james.westby@ubuntu.com-20100217151007-msxpd0lsj300ndde
Tags: upstream-2.0.0
ImportĀ upstreamĀ versionĀ 2.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//  
 
2
//  Copyright (C) 2009 Jason Smith, Robert Dyer
 
3
// 
 
4
//  This program is free software: you can redistribute it and/or modify
 
5
//  it under the terms of the GNU General Public License as published by
 
6
//  the Free Software Foundation, either version 3 of the License, or
 
7
//  (at your option) any later version.
 
8
// 
 
9
//  This program is distributed in the hope that it will be useful,
 
10
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
//  GNU General Public License for more details.
 
13
// 
 
14
//  You should have received a copy of the GNU General Public License
 
15
//  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
16
// 
 
17
 
 
18
using System;
 
19
using System.Collections.Generic;
 
20
using System.Linq;
 
21
 
 
22
using Docky.Items;
 
23
 
 
24
namespace BatteryMonitor
 
25
{
 
26
        public class BatteryMonitorItemProvider : AbstractDockItemProvider
 
27
        {
 
28
                #region IDockItemProvider implementation
 
29
                
 
30
                public override string Name {
 
31
                        get {
 
32
                                return "BatteryMonitor";
 
33
                        }
 
34
                }
 
35
                
 
36
                public override string Icon { get { return "battery"; } }
 
37
                
 
38
                public override void Dispose ()
 
39
                {
 
40
                        battery.Dispose ();
 
41
                }
 
42
                
 
43
                #endregion
 
44
 
 
45
                AbstractDockItem battery;
 
46
                
 
47
                bool hidden;
 
48
                public bool Hidden
 
49
                {
 
50
                        get {
 
51
                                return hidden;
 
52
                        }
 
53
                        set {
 
54
                                if (hidden == value)
 
55
                                        return;
 
56
                                hidden = value;
 
57
                                if (hidden)
 
58
                                        Items = Enumerable.Empty<AbstractDockItem> ();
 
59
                                else
 
60
                                        Items = battery.AsSingle<AbstractDockItem> ();
 
61
                        }
 
62
                }
 
63
                
 
64
                public BatteryMonitorItemProvider ()
 
65
                {
 
66
                        hidden = false;
 
67
                        battery = new BatteryMonitorProcItem (this);
 
68
                        if (!hidden)
 
69
                                Items = battery.AsSingle<AbstractDockItem> ();
 
70
                }
 
71
        }
 
72
}