GUI/UnitManager.cs
author sl
Sun, 03 Feb 2013 18:01:50 +0100
changeset 391 ca4c0e7ae75d
parent 344 3145aadca3d2
permissions -rw-r--r--
Converted project to VisualStudio 2012.
Adding SoundGraphDisplay and SensorFrontView classes.
They were respectively based on SystemTray and SensorNotifyIcon.
SoundGraphDisplay is now able to load iMONDisplay.dll providing it lives on your PATH.
Adding option to sensor context menu for adding it into FrontView.
moel@122
     1
/*
moel@122
     2
 
moel@344
     3
  This Source Code Form is subject to the terms of the Mozilla Public
moel@344
     4
  License, v. 2.0. If a copy of the MPL was not distributed with this
moel@344
     5
  file, You can obtain one at http://mozilla.org/MPL/2.0/.
moel@122
     6
 
moel@362
     7
  Copyright (C) 2009-2012 Michael Möller <mmoeller@openhardwaremonitor.org>
moel@344
     8
	
moel@122
     9
*/
moel@122
    10
moel@122
    11
using System;
moel@122
    12
using System.Collections.Generic;
moel@122
    13
moel@122
    14
namespace OpenHardwareMonitor.GUI {
moel@122
    15
moel@122
    16
  public enum TemperatureUnit {
moel@299
    17
    Celsius = 0,
moel@122
    18
    Fahrenheit = 1
moel@122
    19
  }
moel@122
    20
moel@122
    21
  public class UnitManager {
moel@122
    22
moel@165
    23
    private PersistentSettings settings;
moel@165
    24
    private TemperatureUnit temperatureUnit;
moel@122
    25
moel@165
    26
    public UnitManager(PersistentSettings settings) {
moel@165
    27
      this.settings = settings;
moel@166
    28
      this.temperatureUnit = (TemperatureUnit)settings.GetValue("TemperatureUnit",
moel@299
    29
        (int)TemperatureUnit.Celsius);
moel@122
    30
    }
moel@122
    31
moel@165
    32
    public TemperatureUnit TemperatureUnit {
moel@122
    33
      get { return temperatureUnit; }
moel@122
    34
      set {
moel@165
    35
        this.temperatureUnit = value;
moel@166
    36
        this.settings.SetValue("TemperatureUnit", (int)temperatureUnit);
moel@122
    37
      }
moel@122
    38
    }
moel@362
    39
moel@362
    40
    public static float? CelsiusToFahrenheit(float? valueInCelsius) {
moel@362
    41
      return valueInCelsius * 1.8f + 32;
moel@362
    42
    }
moel@122
    43
  }
moel@122
    44
}