Processing Ajax...

Title
Close Dialog

Message

Confirm
Close Dialog

Confirm
Close Dialog

Confirm
Close Dialog

Profile Toggle

Description
Meant for use with solaris765's other script, 'Update Monitor Profile Automatically'.
Language
C#.net
Minimum Version
Created By
solaris765
Contributors
-
Date Created
Jan 4, 2015
Date Last Modified
Jan 4, 2015

Scripted Function (Macro) Code

using System;
using System.Drawing;

// Code brought to you by: solaris765
// Because numbers after my screen name are fun.
// Meant for use with my script 'Update Monitor Profile Automatically'
// Replace stop program if block with:

// if (BFS.ScriptSettings.ReadValue("ProfileToggle") == "off") 
//     break;

// Can be used with any infinitely running script.

// The 'windowHandle' parameter will contain the window handle for the:
// - Active window when run by hotkey
// - Window Location target when run by a Window Location rule
// - TitleBar Button owner when run by a TitleBar Button
// - Jump List owner when run from a Taskbar Jump List
// - Currently focused window if none of these match
public static class DisplayFusionFunction
{
	public static void Run(IntPtr windowHandle)
	{
		// toggles running state to 'off' 
		// initializes the variable 'ProfileToggle'.
		if (BFS.ScriptSettings.ReadValue("ProfileToggle") == "on" || BFS.ScriptSettings.ReadValue("ProfileToggle") == "")
		{
			BFS.ScriptSettings.WriteValue("ProfileToggle", "off");
		}
		
		// toggles the running state to on 
		// runs the program 'Update Monitor Profile Automatically'.
		else if (BFS.ScriptSettings.ReadValue("ProfileToggle") == "off" )
		{
			BFS.ScriptSettings.WriteValue("ProfileToggle", "on");
			BFS.DisplayFusion.RunFunction("Update Monitor Profile Automatically");
		}
		
		// throws error if 'ProfileToggle' contains an invalid string.
		else
		{
			BFS.Dialog.ShowMessageErrorMonospaced("Value of ProfileToggle Script Setting is incorrect.");
		}
	}
}