view dstep/appkit/NSFontPanel.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents
children b9de51448c6b
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Sep 24, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.appkit.NSFontPanel;

import dstep.appkit.NSFont;
import dstep.appkit.NSPanel;
import dstep.appkit.NSView;
import dstep.objc.bridge.Bridge;
import dstep.objc.objc;

enum
{
	NSFPPreviewButton = 131,
	NSFPRevertButton = 130,
	NSFPSetButton = 132,
	NSFPPreviewField = 128,
	NSFPSizeField = 129,
	NSFPSizeTitle = 133,
	NSFPCurrentField = 134
}

enum
{
	NSFontPanelFaceModeMask = 1 << 0,
	NSFontPanelSizeModeMask = 1 << 1,
	NSFontPanelCollectionModeMask = 1 << 2,
	NSFontPanelUnderlineEffectModeMask = 1<<8,
	NSFontPanelStrikethroughEffectModeMask = 1<<9,
	NSFontPanelTextColorEffectModeMask = 1<< 10,
	NSFontPanelDocumentColorEffectModeMask = 1<<11,
	NSFontPanelShadowEffectModeMask = 1<<12,
	NSFontPanelAllEffectsModeMask = 0XFFF00,
	NSFontPanelStandardModesMask = 0xFFFF,
	NSFontPanelAllModesMask = 0xFFFFFFFF
}

class NSFontPanel : NSPanel
{
	mixin (ObjcWrap);

	static NSFontPanel sharedFontPanel ()
	{
		return invokeObjcSelfClass!(NSFontPanel, "sharedFontPanel");
	}

	static bool sharedFontPanelExists ()
	{
		return invokeObjcSelfClass!(bool, "sharedFontPanelExists");
	}

	NSView accessoryView ()
	{
		return invokeObjcSelf!(NSView, "accessoryView");
	}

	void setAccessoryView (NSView aView)
	{
		return invokeObjcSelf!(void, "setAccessoryView:", NSView)(aView);
	}

	void setPanelFont (NSFont fontObj, bool flag)
	{
		return invokeObjcSelf!(void, "setPanelFont:isMultiple:", NSFont, bool)(fontObj, flag);
	}

	NSFont panelConvertFont (NSFont fontObj)
	{
		return invokeObjcSelf!(NSFont, "panelConvertFont:", NSFont)(fontObj);
	}

	bool worksWhenModal ()
	{
		return invokeObjcSelf!(bool, "worksWhenModal");
	}

	bool isEnabled ()
	{
		return invokeObjcSelf!(bool, "isEnabled");
	}

	void setEnabled (bool flag)
	{
		return invokeObjcSelf!(void, "setEnabled:", bool)(flag);
	}

	void reloadDefaultFontFamilies ()
	{
		return invokeObjcSelf!(void, "reloadDefaultFontFamilies");
	}
}

const TNSFontPanelValidationAdditions = `

	NSUInteger validModesForFontPanel (NSFontPanel fontPanel)
	{
		return invokeObjcSelf!(NSUInteger, "validModesForFontPanel:", NSFontPanel)(fontPanel);
	}

	//mixin ObjcBindMethod!(validModesForFontPanel, "validModesForFontPanel:");

`;