view dwt/internal/cocoa/NSPersistentDocument.d @ 13:f565d3a95c0a

Ported dwt.internal
author Jacob Carlborg <doob@me.com> <jacob.carlborg@gmail.com>
date Fri, 22 Aug 2008 16:46:34 +0200
parents 8b48be5454ce
children
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.NSPersistentDocument;

import dwt.internal.cocoa.id;
import dwt.internal.cocoa.NSDictionary;
import dwt.internal.cocoa.NSDocument;
import dwt.internal.cocoa.NSString;
import dwt.internal.cocoa.NSURL;
import dwt.internal.cocoa.OS;
import objc = dwt.internal.objc.runtime;

public class NSPersistentDocument : NSDocument
{

    public this ()
    {
        super();
    }

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

    public bool configurePersistentStoreCoordinatorForURL_ofType_error_ (NSURL url, NSString fileType, objc.id** error)
    {
        return OS.objc_msgSend(this.id_, OS.sel_configurePersistentStoreCoordinatorForURL_1ofType_1error_1, url !is null ? url.id_ : null,
                fileType !is null ? fileType.id_ : null, error) !is null;
    }

    public bool configurePersistentStoreCoordinatorForURL_ofType_modelConfiguration_storeOptions_error_ (NSURL url, NSString fileType,
            NSString configuration, NSDictionary storeOptions, objc.id** error)
    {
        return OS.objc_msgSend(this.id_, OS.sel_configurePersistentStoreCoordinatorForURL_1ofType_1modelConfiguration_1storeOptions_1error_1,
                url !is null ? url.id_ : null, fileType !is null ? fileType.id_ : null, configuration !is null ? configuration.id_ : null,
                storeOptions !is null ? storeOptions.id_ : null, error) !is null;
    }

    //public NSManagedObjectContext managedObjectContext() {
    //  objc.id result = OS.objc_msgSend(this.id_, OS.sel_managedObjectContext);
    //  return result !is null ? new NSManagedObjectContext(result) : null;
    //}

    public id managedObjectModel ()
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_managedObjectModel);
        return result !is null ? new id(result) : null;
    }

    public NSString persistentStoreTypeForFileType (NSString fileType)
    {
        objc.id result = OS.objc_msgSend(this.id_, OS.sel_persistentStoreTypeForFileType_1, fileType !is null ? fileType.id_ : null);
        return result !is null ? new NSString(result) : null;
    }

    public bool readFromURL (NSURL absoluteURL, NSString typeName, objc.id** error)
    {
        return OS.objc_msgSend(this.id_, OS.sel_readFromURL_1ofType_1error_1, absoluteURL !is null ? absoluteURL.id_ : null,
                typeName !is null ? typeName.id_ : null, error) !is null;
    }

    public bool revertToContentsOfURL (NSURL inAbsoluteURL, NSString inTypeName, objc.id** outError)
    {
        return OS.objc_msgSend(this.id_, OS.sel_revertToContentsOfURL_1ofType_1error_1, inAbsoluteURL !is null ? inAbsoluteURL.id_ : null,
                inTypeName !is null ? inTypeName.id_ : null, outError) !is null;
    }

    //public void setManagedObjectContext(NSManagedObjectContext managedObjectContext) {
    //  OS.objc_msgSend(this.id_, OS.sel_setManagedObjectContext_1, managedObjectContext !is null ? managedObjectContext.id_ : null);
    //}

    public bool writeToURL (NSURL absoluteURL, NSString typeName, NSSaveOperationType saveOperation, NSURL absoluteOriginalContentsURL, objc.id** error)
    {
        return OS.objc_msgSend(this.id_, OS.sel_writeToURL_1ofType_1forSaveOperation_1originalContentsURL_1error_1,
                absoluteURL !is null ? absoluteURL.id_ : null, typeName !is null ? typeName.id_ : null, saveOperation,
                absoluteOriginalContentsURL !is null ? absoluteOriginalContentsURL.id_ : null, error) !is null;
    }

}