Esempio n. 1
0
        private bool SaveSettings()
        {
            foreach (Bridge br in _listBridges)
            {
                if (br.Mac == string.Empty)
                {
                    continue;
                }
                if (WinHueSettings.bridges.BridgeInfo.ContainsKey(br.Mac))
                {
                    WinHueSettings.bridges.BridgeInfo[br.Mac] = new BridgeSaveSettings
                    {
                        ip     = br.IpAddress.ToString(),
                        apikey = br.ApiKey,
                        name   = br.Name,
                    }
                }
                ;
                else
                {
                    WinHueSettings.bridges.BridgeInfo.Add(br.Mac,
                                                          new BridgeSaveSettings {
                        ip = br.IpAddress.ToString(), apikey = br.ApiKey, name = br.Name
                    });
                }

                if (br.IsDefault)
                {
                    WinHueSettings.bridges.DefaultBridge = br.Mac;
                }
            }

            return(WinHueSettings.SaveBridges());
        }
Esempio n. 2
0
        private void btnApply_Click(object sender, RoutedEventArgs e)
        {
            if (WinHueSettings.settings.Language != _appSettingsViewModel.MainSettingsModel.Language)
            {
                MessageBox.Show(GlobalStrings.Language_Change_Warning, GlobalStrings.Warning, MessageBoxButton.OK, MessageBoxImage.Information);
            }

            WinHueSettings.settings.DetectProxy          = _appSettingsViewModel.MainSettingsModel.DetectProxy;
            WinHueSettings.settings.EnableDebug          = _appSettingsViewModel.MainSettingsModel.Debug;
            WinHueSettings.settings.ShowHiddenScenes     = _appSettingsViewModel.MainSettingsModel.ShowHidden;
            WinHueSettings.settings.UpnpTimeout          = _appSettingsViewModel.MainSettingsModel.UpnpTimeout;
            WinHueSettings.settings.AllOffTT             = _appSettingsViewModel.DefaultModel.AllOffTt;
            WinHueSettings.settings.AllOnTT              = _appSettingsViewModel.DefaultModel.AllOnTt;
            WinHueSettings.settings.Timeout              = _appSettingsViewModel.MainSettingsModel.Timeout;
            WinHueSettings.settings.DefaultTT            = _appSettingsViewModel.DefaultModel.DefaultTt;
            WinHueSettings.settings.WrapText             = _appSettingsViewModel.ViewSettingsModel.Wrap;
            WinHueSettings.settings.ShowID               = _appSettingsViewModel.ViewSettingsModel.ShowId;
            WinHueSettings.settings.Sort                 = _appSettingsViewModel.ViewSettingsModel.Sort;
            WinHueSettings.settings.DefaultBriGroup      = _appSettingsViewModel.DefaultModel.DefaultGroupBri;
            WinHueSettings.settings.DefaultBriLight      = _appSettingsViewModel.DefaultModel.DefaultLightBri;
            WinHueSettings.settings.Language             = _appSettingsViewModel.MainSettingsModel.Language;
            WinHueSettings.settings.StartMode            = _appSettingsViewModel.MainSettingsModel.StartMode;
            WinHueSettings.settings.CheckForUpdate       = _appSettingsViewModel.MainSettingsModel.CheckUpdate;
            WinHueSettings.settings.CheckForBridgeUpdate = _appSettingsViewModel.MainSettingsModel.CheckForBridgeUpdate;
            WinHueSettings.settings.UseLastBriState      = _appSettingsViewModel.DefaultModel.UseLastBriState;
            WinHueSettings.settings.MinimizeToTray       = _appSettingsViewModel.MainSettingsModel.MinimizeToTray;
            WinHueSettings.settings.UsePropertyGrid      = _appSettingsViewModel.MainSettingsModel.UsePropGrid;
            WinHueSettings.settings.SlidersBehavior      = _appSettingsViewModel.DefaultModel.SlidersBehavior;
            WinHueSettings.settings.OSRAMFix             = _appSettingsViewModel.MainSettingsModel.OSRAMFix;
            WinHueSettings.settings.ShowFloorPlanTab     = _appSettingsViewModel.ViewSettingsModel.ShowFloorPlanTab;
            WinHueSettings.settings.RefreshTime          = _appSettingsViewModel.MainSettingsModel.RefreshTime;

            string pathtostartupfile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Startup), "WinHue3.lnk");

            if (WinHueSettings.settings.StartMode > 0)
            {
                if (!File.Exists(pathtostartupfile))
                {
                    WshShell     shell    = new WshShell();
                    IWshShortcut shortcut = (IWshShortcut)shell.CreateShortcut(pathtostartupfile);
                    shortcut.Description      = "WinHue Startup";
                    shortcut.TargetPath       = System.Reflection.Assembly.GetEntryAssembly().Location;
                    shortcut.WorkingDirectory = Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location);
                    shortcut.Save();
                }
            }
            else
            {
                if (File.Exists(pathtostartupfile))
                {
                    File.Delete(pathtostartupfile);
                }
            }
            //registryKey.Close();

            WinHueSettings.SaveSettings();
            DialogResult = true;
            Close();
        }
Esempio n. 3
0
        public RoomMapViewModel()
        {
            ofd = new OpenFileDialog {
                Filter = "All Supported Image Files (*.jpg;*.png;*.bmp)|*.jpg;*.png;*.bmp|JPEG Files (*.jpg)|*.jpg|Bitmap Files (*.bmp)|*.bmp|PNG Files (*.png)|*.png", DefaultExt = "*.jpg;*.png;*.bmp"
            };
            ListFloors = new ObservableCollection <Floor>(WinHueSettings.LoadFloorPlans());

            _deleteFloor = new List <string>();
        }
Esempio n. 4
0
        private void SaveHiddenObjects()
        {
            WinHueSettings.bridges.BridgeInfo[_bridge.Mac].hiddenobjects.Clear();
            foreach (IHueObject l in HiddenObjects.HiddenObjects)
            {
                if (!WinHueSettings.bridges.BridgeInfo[_bridge.Mac].hiddenobjects.Any(x => x.Item1 == l.Id && x.Item2 == l.GetHueType()))
                {
                    WinHueSettings.bridges.BridgeInfo[_bridge.Mac].hiddenobjects.Add(new Tuple <string, string>(l.Id, l.GetHueType()));
                }
            }

            WinHueSettings.SaveBridges();
            HiddenObjects.AcceptChanges();
        }
Esempio n. 5
0
        private void DeleteFloorPlan()
        {
            if (MessageBox.Show(string.Format(GUI.FormRoomMap_Delete, SelectedFloor.Name), GlobalStrings.Warning, MessageBoxButton.YesNo, MessageBoxImage.Question) != MessageBoxResult.Yes)
            {
                return;
            }
            if (!WinHueSettings.DeleteFloorPlan(_selectedFloor))
            {
                return;
            }

            ListFloors.Remove(_selectedFloor);
            SelectedFloor = null;
            SelectedItem  = null;
        }
Esempio n. 6
0
 private void SaveFloor(Floor floor)
 {
     if (WinHueSettings.SaveFloorPlan(floor))
     {
         floor.AcceptChanges();
         foreach (string s in _deleteFloor)
         {
             WinHueSettings.DeleteFloorPlan(s);
         }
         _deleteFloor.Clear();
     }
     else
     {
         MessageBox.Show(GlobalStrings.ErrorSaving, GlobalStrings.Error, MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Esempio n. 7
0
        private void btnCreateFloor_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxResult overwrite = MessageBoxResult.Yes;

            if (WinHueSettings.FloorPlanExists(fpvm.FloorPlanName))
            {
                overwrite = MessageBox.Show(GlobalStrings.FloorPlanExists, GlobalStrings.Warning, MessageBoxButton.YesNo, MessageBoxImage.Question);
            }

            if (overwrite == MessageBoxResult.No)
            {
                return;
            }
            DialogResult = true;
            Close();
        }
Esempio n. 8
0
        private bool CheckBridge(Bridge bridge)
        {
            log.Info("Checking if ip is bridge...");
            BasicConfig bc = bridge.GetBridgeBasicConfig();

            if (bc == null)
            {
                return(false);
            }
            bridge.ApiVersion = bc.apiversion;
            bridge.Name       = bc.name;
            bridge.SwVersion  = bc.swversion;
            WinHueSettings.bridges.BridgeInfo[bridge.Mac].name = bridge.Name;
            WinHueSettings.SaveBridges();
            return(true);
        }
Esempio n. 9
0
        private void BridgeFinder_ScanCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (e.Cancelled)
            {
                return;
            }

            if (e.Result != null)
            {
                IPAddress newip = (IPAddress)e.Result;
                Message = $"Bridge found : {newip}";
                Found   = true;
                WinHueSettings.ReplaceBridgeIp(_br.Mac, newip);
            }
            else
            {
                Message = "Bridge was not found. Please try doing a pairing with the bridge pairing function.";
            }
        }
Esempio n. 10
0
 public void LoadFloorPlans()
 {
     SelectedFloorPlan = null;
     ListFloorPlans    = new ObservableCollection <Floor>(WinHueSettings.LoadFloorPlans());
 }