Processing Ajax...

Title
Close Dialog

Message

Confirm
Close Dialog

Confirm
Close Dialog

Toggle TitleBar Buttons Based on Number of Monitors

Description
This script will check if there are 1 or 2 monitors connected. If there's only 1, it will disable the TitleBar Buttons. If there are 2, it will enable them.
Language
C#.net
Minimum Version
Created By
Keith Lammers (BFS)
Contributors
-
Date Created
Oct 16, 2019
Date Last Modified
Oct 16, 2019

Scripted Function (Macro) Code

using System;
using System.Drawing;
using Microsoft.Win32;

public static class DisplayFusionFunction
{
	public static void Run(IntPtr windowHandle)
	{
        // Gets the number of monitors attached to the system
        int numberOfMonitors = BFS.Monitor.GetMonitorCountEnabledNoSplits();
        
        // If there are 2, enable the titlebar buttons    
        if (numberOfMonitors == 2)
        {
            if (!TitleBarButtonsEnabled())
                BFS.DisplayFusion.RunFunction("Toggle TitleBar Buttons");
        }
        
        // If there's only 1, disable the titlebar buttons
        else if (numberOfMonitors == 1)
        {
            if (TitleBarButtonsEnabled())
                BFS.DisplayFusion.RunFunction("Toggle TitleBar Buttons");
        }
	}
	
	private static bool TitleBarButtonsEnabled()
	{
        // Check the registry to see if titlebar buttons are enabled, and return a true or false
        using (RegistryKey key = Registry.CurrentUser.OpenSubKey("Software\\Binary Fortress Software\\DisplayFusion"))
        {
            if (key != null)
            {
                Object TitleBarButtonsEnabledValue = key.GetValue("TitleBarButtonsEnabled");
                
                if (TitleBarButtonsEnabledValue.ToString() == "1")
                    return true;
                else
                    return false;
            }
            else
            {
                return false;
            }
        }
	}
}