view dwt/internal/cocoa/NSPrintPanel.d @ 0:380af2bdd8e5

Upload of whole dwt tree
author Jacob Carlborg <doob@me.com> <jacob.carlborg@gmail.com>
date Sat, 09 Aug 2008 17:00:02 +0200
parents
children 8b48be5454ce
line wrap: on
line source

/*******************************************************************************
 * Copyright (c) 2007 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *     
 * Port to the D Programming language:
 *     Jacob Carlborg <jacob.carlborg@gmail.com>
 *******************************************************************************/
module dwt.internal.cocoa.NSPrintPanel;

import dwt.internal.cocoa.id;
import dwt.internal.cocoa.NSArray;
import dwt.internal.cocoa.NSInteger;
import dwt.internal.cocoa.NSObject;
import dwt.internal.cocoa.NSPrintInfo;
import dwt.internal.cocoa.NSString;
import dwt.internal.cocoa.NSView;
import dwt.internal.cocoa.NSViewController;
import dwt.internal.cocoa.NSWindow;
import dwt.internal.cocoa.OS;
import objc = dwt.internal.objc.runtime;

enum NSPrintPanelOptions : NSInteger
{
    NSPrintPanelShowsCopies = 0x01,
    NSPrintPanelShowsPageRange = 0x02,
    NSPrintPanelShowsPaperSize = 0x04,
    NSPrintPanelShowsOrientation = 0x08,
    NSPrintPanelShowsScaling = 0x10,
    NSPrintPanelShowsPageSetupAccessory = 0x100,
    NSPrintPanelShowsPreview = 0x20000
}

alias NSPrintPanelOptions.NSPrintPanelShowsCopies NSPrintPanelShowsCopies;
alias NSPrintPanelOptions.NSPrintPanelShowsPageRange NSPrintPanelShowsPageRange;
alias NSPrintPanelOptions.NSPrintPanelShowsPaperSize NSPrintPanelShowsPaperSize;
alias NSPrintPanelOptions.NSPrintPanelShowsOrientation NSPrintPanelShowsOrientation;
alias NSPrintPanelOptions.NSPrintPanelShowsScaling NSPrintPanelShowsScaling;
alias NSPrintPanelOptions.NSPrintPanelShowsPageSetupAccessory NSPrintPanelShowsPageSetupAccessory;
alias NSPrintPanelOptions.NSPrintPanelShowsPreview NSPrintPanelShowsPreview;

public class NSPrintPanel : NSObject
{

    public this ()
    {
        super();
    }

    public this (objc.id id)
    {
        super(id);
    }

    public NSArray accessoryControllers ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_accessoryControllers);
        return result !is null ? new NSArray(result) : null;
    }

    public NSView accessoryView ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_accessoryView);
        return result !is null ? new NSView(result) : null;
    }

    public void addAccessoryController (NSViewController accessoryController)
    {
        OS.objc_msgSend(this.id, OS.sel_addAccessoryController_1, accessoryController !is null ? accessoryController.id : null);
    }

    public void beginSheetWithPrintInfo (NSPrintInfo printInfo, NSWindow docWindow, id delegatee, objc.SEL didEndSelector, void* contextInfo)
    {
        OS.objc_msgSend(this.id, OS.sel_beginSheetWithPrintInfo_1modalForWindow_1delegate_1didEndSelector_1contextInfo_1,
                printInfo !is null ? printInfo.id : null, docWindow !is null ? docWindow.id : null, delegatee !is null ? delegatee.id : null,
                didEndSelector, contextInfo);
    }

    public NSString defaultButtonTitle ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_defaultButtonTitle);
        return result !is null ? new NSString(result) : null;
    }

    public void finalWritePrintInfo ()
    {
        OS.objc_msgSend(this.id, OS.sel_finalWritePrintInfo);
    }

    public NSString helpAnchor ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_helpAnchor);
        return result !is null ? new NSString(result) : null;
    }

    public NSString jobStyleHint ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_jobStyleHint);
        return result !is null ? new NSString(result) : null;
    }

    public NSPrintPanelOptions options ()
    {
        return cast(NSPrintPanelOptions) OS.objc_msgSend(this.id, OS.sel_options);
    }

    public NSPrintInfo printInfo ()
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_printInfo);
        return result !is null ? new NSPrintInfo(result) : null;
    }

    public static NSPrintPanel printPanel ()
    {
        objc.id result = OS.objc_msgSend(OS.class_NSPrintPanel, OS.sel_printPanel);
        return result !is null ? new NSPrintPanel(result) : null;
    }

    public void removeAccessoryController (NSViewController accessoryController)
    {
        OS.objc_msgSend(this.id, OS.sel_removeAccessoryController_1, accessoryController !is null ? accessoryController.id : null);
    }

    public NSInteger runModal ()
    {
        return cast(NSInteger) OS.objc_msgSend(this.id, OS.sel_runModal);
    }

    public NSInteger runModalWithPrintInfo (NSPrintInfo printInfo)
    {
        return cast(NSInteger) OS.objc_msgSend(this.id, OS.sel_runModalWithPrintInfo_1, printInfo !is null ? printInfo.id : null);
    }

    public void setAccessoryView (NSView accessoryView)
    {
        OS.objc_msgSend(this.id, OS.sel_setAccessoryView_1, accessoryView !is null ? accessoryView.id : null);
    }

    public void setDefaultButtonTitle (NSString defaultButtonTitle)
    {
        OS.objc_msgSend(this.id, OS.sel_setDefaultButtonTitle_1, defaultButtonTitle !is null ? defaultButtonTitle.id : null);
    }

    public void setHelpAnchor (NSString helpAnchor)
    {
        OS.objc_msgSend(this.id, OS.sel_setHelpAnchor_1, helpAnchor !is null ? helpAnchor.id : null);
    }

    public void setJobStyleHint (NSString hint)
    {
        OS.objc_msgSend(this.id, OS.sel_setJobStyleHint_1, hint !is null ? hint.id : null);
    }

    public void setOptions (NSPrintPanelOptions options)
    {
        OS.objc_msgSend(this.id, OS.sel_setOptions_1, options);
    }

    public void updateFromPrintInfo ()
    {
        OS.objc_msgSend(this.id, OS.sel_updateFromPrintInfo);
    }

}