view dstep/applicationservices/coregraphics/CGDisplayConfiguration.d @ 12:9f0b49a2f64e

Added the ApplicationServices frameworks: ATS, ColorSync and CoreGraphics
author Jacob Carlborg <doob@me.com>
date Mon, 03 Aug 2009 14:00:21 +0200
parents
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Aug 1, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.applicationservices.coregraphics.CGDisplayConfiguration;

import dstep.corefoundation.CFDictionary;

import dstep.applicationservices.coregraphics.CGColorSpace;
import dstep.applicationservices.coregraphics.CGDirectDisplay;
import dstep.applicationservices.coregraphics.CGGeometry;
//import dstep.iokit.IOKitLib;

struct _CGDisplayConfigRef;

alias _CGDisplayConfigRef* CGDisplayConfigRef;
alias uint CGConfigureOption;
alias uint CGDisplayChangeSummaryFlags;

extern (C)
{
	alias void function (uint, uint, void*) CGDisplayReconfigurationCallBack;
}

enum
{
	kCGConfigureForAppOnly = 0,
	kCGConfigureForSession = 1,
	kCGConfigurePermanently = 2
}

enum
{
	kCGDisplayBeginConfigurationFlag = (1 << 0),
	kCGDisplayMovedFlag = (1 << 1),
	kCGDisplaySetMainFlag = (1 << 2),
	kCGDisplaySetModeFlag = (1 << 3),
	kCGDisplayAddFlag = (1 << 4),
	kCGDisplayRemoveFlag = (1 << 5),
	kCGDisplayEnabledFlag = (1 << 8),
	kCGDisplayDisabledFlag = (1 << 9),
	kCGDisplayMirrorFlag = (1 << 10),
	kCGDisplayUnMirrorFlag = (1 << 11),
	kCGDisplayDesktopShapeChangedFlag = (1 << 12)
}

extern (C)
{
	int CGBeginDisplayConfiguration (CGDisplayConfigRef* pConfigRef);
	int CGConfigureDisplayOrigin (CGDisplayConfigRef configRef, uint display, int x, int y);
	int CGConfigureDisplayMode (CGDisplayConfigRef configRef, uint display, CFDictionaryRef mode);
	int CGConfigureDisplayStereoOperation (CGDisplayConfigRef configRef, uint display, int stereo, int forceBlueLine);
	int CGConfigureDisplayMirrorOfDisplay (CGDisplayConfigRef configRef, uint display, uint masterDisplay);
	int CGCancelDisplayConfiguration (CGDisplayConfigRef configRef);
	int CGCompleteDisplayConfiguration (CGDisplayConfigRef configRef, uint option);
	void CGRestorePermanentDisplayConfiguration ();
	int CGDisplayRegisterReconfigurationCallback (CGDisplayReconfigurationCallBack proc, void* userInfo);
	int CGDisplayRemoveReconfigurationCallback (CGDisplayReconfigurationCallBack proc, void* userInfo);
	int CGDisplaySetStereoOperation (uint display, int stereo, int forceBlueLine, uint option);
	int CGDisplayIsActive (uint display);
	int CGDisplayIsAsleep (uint display);
	int CGDisplayIsOnline (uint display);
	int CGDisplayIsMain (uint display);
	int CGDisplayIsBuiltin (uint display);
	int CGDisplayIsInMirrorSet (uint display);
	int CGDisplayIsAlwaysInMirrorSet (uint display);
	int CGDisplayIsInHWMirrorSet (uint display);
	uint CGDisplayMirrorsDisplay (uint display);
	int CGDisplayUsesOpenGLAcceleration (uint display);
	int CGDisplayIsStereo (uint display);
	uint CGDisplayPrimaryDisplay (uint display);
	uint CGDisplayUnitNumber (uint display);
	uint CGDisplayVendorNumber (uint display);
	uint CGDisplayModelNumber (uint display);
	uint CGDisplaySerialNumber (uint display);
	uint CGDisplayIOServicePort (uint display);
	CGSize CGDisplayScreenSize (uint display);
	double CGDisplayRotation (uint display);
	CGColorSpaceRef CGDisplayCopyColorSpace (uint display);
}