public frmMain() { InitializeComponent(); InitialiseProfiles(); InitialiseTrackBars(); Log("Started."); var @delegate = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, @delegate, IntPtr.Zero); Log("Number of physical monitors: {0}", _monitorCollection.Count); foreach (Monitor monitor in _monitorCollection) { Log("-----"); Log(monitor.Name); Log(monitor.Index); Log(monitor.HPhysicalMonitor); Log("DDC : {0}", monitor.SupportsDDC); Log("Brightness : {0}", monitor.Brightness.Supported); Log("Contrast : {0}", monitor.Contrast.Supported); Log("RGB Drive : {0}", monitor.RgbDrive.Supported); Log("RGB Gain : {0}", monitor.RgbGain.Supported); cboMonitors.Items.Add(monitor.Name); } if (cboMonitors.Items.Count > 0) cboMonitors.SelectedIndex = 0; Log(""); Log("Ready..."); return; }
private void AddMonitors() { // Dispose and remove any old monitors foreach (Monitor m in monitorCollection) { m.Dispose(); } monitorCollection.Clear(); var @delegate = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, @delegate, IntPtr.Zero); Log("Number of physical monitors: {0}", monitorCollection.Count); foreach (Monitor monitor in monitorCollection) { Log("-----"); Log(monitor.Name); Log("Index: {0}", monitor.Index); Log("Physical: {0}", monitor.HPhysicalMonitor); // Only add monitor if DDC is supported if (monitor.Brightness.IsSupported) { BrightnessMenuItem newMenuItem = new BrightnessMenuItem(); newMenuItem.MonitorTrackBarControl.Monitor = monitor; newMenuItem.MonitorTrackBarControl.OnSetBrightnessFailed += MonitorTrackBarControl_OnSetBrightnessFailed; contextMenu.Items.Insert(0, newMenuItem); monitor.Tag = newMenuItem; } } }
public MonitorList() { ml = new ObservableCollection <Monitor>(); var @delegate = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, @delegate, IntPtr.Zero); }
public Form1() { InitializeComponent(); OSName = getOSName(); if (OSName.Contains("Windows 7")) { OSName = "win7"; } else { OSName = "win8"; } this.FormClosing += Form1_FormClosing; notifyIcon1.MouseDoubleClick += notifyIcon1_MouseDoubleClick; this.WindowState = FormWindowState.Minimized; this.ShowInTaskbar = false; if (OSName.Equals("win8")) { var @delegate = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, @delegate, IntPtr.Zero); bLevels = GetBrightnessLevels(); //get the level array for this system if (bLevels.Count() == 0) //"WmiMonitorBrightness" is not supported by the system { Application.Exit(); } else { /* * trackBar1.TickFrequency = bLevels.Count(); //adjust the trackbar ticks according the number of possible brightness levels * trackBar1.Maximum = bLevels.Count() - 1; * trackBar1.Update(); * trackBar1.Refresh(); */ check_brightness(); } } }
public MainWindow() { InitializeComponent(); this.ShowCloseButton = false; this.Hide(); //this.WindowState = WindowState.Normal; //this.Show(); SettingsWindow sw = new SettingsWindow(); sw.Hide(); /// Enumerate Displays var MyInfoEnumProc = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, MyInfoEnumProc, IntPtr.Zero); ReadInfo(_monitorCollection[selectedMonitor]); foreach (Monitor monitor in _monitorCollection) { monCollection.Add(monitor.Name); } var desktopWorkingArea = SystemParameters.WorkArea; this.Left = desktopWorkingArea.Right - this.Width; this.Top = desktopWorkingArea.Bottom - this.Height; Console.WriteLine(selectedMonitor); /// Create a tray icon & menu NotifyIcon ni = new NotifyIcon(); ContextMenu cm = new ContextMenu(); MenuItem mi1 = new MenuItem(); MenuItem mi2 = new MenuItem(); ni.Icon = new System.Drawing.Icon("main.ico"); ni.Visible = true; ni.Click += delegate (object sender, EventArgs e) { MouseEventArgs me = (MouseEventArgs)e; if (me.Button == MouseButtons.Left) { if (WindowState == WindowState.Minimized) { this.WindowState = WindowState.Normal; this.Show(); } else if (WindowState == WindowState.Normal) { this.Hide(); this.WindowState = WindowState.Minimized; } } }; ni.ContextMenu = cm; cm.MenuItems.AddRange( new MenuItem[] { mi2 }); mi2.Index = 0; mi2.Text = "C&onfiguration"; mi2.Click += delegate (object sender, EventArgs args) { sw.WindowStartupLocation = WindowStartupLocation.CenterScreen; if (sw.Visibility == Visibility.Hidden) { sw.WindowState = WindowState.Normal; sw.ShowDialog(); } //////!!!!!!!!!!!!!!!!!!!! ON CLOSE SET TO HIDDEN }; cm.MenuItems.AddRange( new MenuItem[] { mi1 }); mi1.Index = 1; mi1.Text = "E&xit"; mi1.Click += delegate (object sender, EventArgs args) { System.Windows.Application.Current.MainWindow.Hide(); System.Windows.Application.Current.Shutdown(); }; }
public MainWindow() { InitializeComponent(); this.ShowCloseButton = false; this.Hide(); //this.WindowState = WindowState.Normal; //this.Show(); SettingsWindow sw = new SettingsWindow(); sw.Hide(); /// Enumerate Displays var MyInfoEnumProc = new NativeMethods.MonitorEnumDelegate(MonitorEnum); NativeMethods.EnumDisplayMonitors(IntPtr.Zero, IntPtr.Zero, MyInfoEnumProc, IntPtr.Zero); ReadInfo(_monitorCollection[selectedMonitor]); foreach (Monitor monitor in _monitorCollection) { monCollection.Add(monitor.Name); } var desktopWorkingArea = SystemParameters.WorkArea; this.Left = desktopWorkingArea.Right - this.Width; this.Top = desktopWorkingArea.Bottom - this.Height; Console.WriteLine(selectedMonitor); /// Create a tray icon & menu NotifyIcon ni = new NotifyIcon(); ContextMenu cm = new ContextMenu(); MenuItem mi1 = new MenuItem(); MenuItem mi2 = new MenuItem(); ni.Icon = new System.Drawing.Icon("main.ico"); ni.Visible = true; ni.Click += delegate(object sender, EventArgs e) { MouseEventArgs me = (MouseEventArgs)e; if (me.Button == MouseButtons.Left) { if (WindowState == WindowState.Minimized) { this.WindowState = WindowState.Normal; this.Show(); } else if (WindowState == WindowState.Normal) { this.Hide(); this.WindowState = WindowState.Minimized; } } }; ni.ContextMenu = cm; cm.MenuItems.AddRange( new MenuItem[] { mi2 }); mi2.Index = 0; mi2.Text = "C&onfiguration"; mi2.Click += delegate(object sender, EventArgs args) { sw.WindowStartupLocation = WindowStartupLocation.CenterScreen; if (sw.Visibility == Visibility.Hidden) { sw.WindowState = WindowState.Normal; sw.ShowDialog(); } //////!!!!!!!!!!!!!!!!!!!! ON CLOSE SET TO HIDDEN }; cm.MenuItems.AddRange( new MenuItem[] { mi1 }); mi1.Index = 1; mi1.Text = "E&xit"; mi1.Click += delegate(object sender, EventArgs args) { System.Windows.Application.Current.MainWindow.Hide(); System.Windows.Application.Current.Shutdown(); }; }