public TrayApplication() { // Initialize managers _resourceManager = new ResourceManager(GetType().Namespace); // Initialize UI _icon = new NotifyIcon(); _menuLeft = new ContextMenuStrip(); _menuRight = new ContextMenuStrip(); // Load configuration _config = File.Exists(_path) ? JsonConvert.DeserializeObject<ConfigTray>(File.ReadAllText(_path)) : new ConfigTray(); // Build UI and global actions Build(); UpdateState(); // Config tray icon _icon.Text = _state.label; _icon.Icon = _state.icon; _icon.Visible = true; _icon.MouseClick += OnClick; _onUpdate += (sender, e) => { _icon.Text = _state.label; _icon.Icon = _state.icon; }; //TODO run startup action // Init check state of services timer _timer = new Timer { Interval = 200, Enabled = true }; _timer.Tick += (sender, e) => UpdateState(); }
public void LoadConfig() { _config = File.Exists(CONFIG) ? JsonConvert.DeserializeObject <ConfigTray>(File.ReadAllText(CONFIG)) : new ConfigTray(); }