view dwt/internal/cocoa/NSSegmentedControl.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.NSSegmentedControl;

import dwt.internal.cocoa.CGFloat;
import dwt.internal.cocoa.NSControl;
import dwt.internal.cocoa.NSImage;
import dwt.internal.cocoa.NSImageCell : NSImageScaling;
import dwt.internal.cocoa.NSInteger;
import dwt.internal.cocoa.NSMenu;
import dwt.internal.cocoa.NSString;
import dwt.internal.cocoa.OS;
import objc = dwt.internal.objc.runtime;

public class NSSegmentedControl : NSControl
{

    public this ()
    {
        super();
    }

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

    public NSImage imageForSegment (NSInteger segment)
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_imageForSegment_1, segment);
        return result !is null ? new NSImage(result) : null;
    }

    public NSImageScaling imageScalingForSegment (NSInteger segment)
    {
        return OS.objc_msgSend(this.id, OS.sel_imageScalingForSegment_1, segment);
    }

    public bool isEnabledForSegment (NSInteger segment)
    {
        return OS.objc_msgSend(this.id, OS.sel_isEnabledForSegment_1, segment) !is null;
    }

    public bool isSelectedForSegment (NSInteger segment)
    {
        return OS.objc_msgSend(this.id, OS.sel_isSelectedForSegment_1, segment) !is null;
    }

    public NSString labelForSegment (NSInteger segment)
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_labelForSegment_1, segment);
        return result !is null ? new NSString(result) : null;
    }

    public NSMenu menuForSegment (NSInteger segment)
    {
        objc.id result = OS.objc_msgSend(this.id, OS.sel_menuForSegment_1, segment);
        return result !is null ? new NSMenu(result) : null;
    }

    public NSInteger segmentCount ()
    {
        return OS.objc_msgSend(this.id, OS.sel_segmentCount);
    }

    public NSInteger segmentStyle ()
    {
        return OS.objc_msgSend(this.id, OS.sel_segmentStyle);
    }

    public bool selectSegmentWithTag (NSInteger tag)
    {
        return OS.objc_msgSend(this.id, OS.sel_selectSegmentWithTag_1, tag) !is null;
    }

    public NSInteger selectedSegment ()
    {
        return OS.objc_msgSend(this.id, OS.sel_selectedSegment);
    }

    public void setEnabled (bool enabled, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setEnabled_1forSegment_1, enabled, segment);
    }

    public void setImage (NSImage image, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setImage_1forSegment_1, image !is null ? image.id : null, segment);
    }

    public void setImageScaling (NSImageScaling scaling, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setImageScaling_1forSegment_1, scaling, segment);
    }

    public void setLabel (NSString label, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setLabel_1forSegment_1, label !is null ? label.id : null, segment);
    }

    public void setMenu (NSMenu menu, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setMenu_1forSegment_1, menu !is null ? menu.id : null, segment);
    }

    public void setSegmentCount (NSInteger count)
    {
        OS.objc_msgSend(this.id, OS.sel_setSegmentCount_1, count);
    }

    public void setSegmentStyle (NSInteger segmentStyle)
    {
        OS.objc_msgSend(this.id, OS.sel_setSegmentStyle_1, segmentStyle);
    }

    public void setSelected (bool selected, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setSelected_1forSegment_1, selected, segment);
    }

    public void setSelectedSegment (NSInteger selectedSegment)
    {
        OS.objc_msgSend(this.id, OS.sel_setSelectedSegment_1, selectedSegment);
    }

    public void setWidth (CGFloat width, NSInteger segment)
    {
        OS.objc_msgSend(this.id, OS.sel_setWidth_1forSegment_1, width, segment);
    }

    public CGFloat widthForSegment (NSInteger segment)
    {
        return cast(CGFloat) OS.objc_msgSend_fpret(this.id, OS.sel_widthForSegment_1, segment);
    }

}